# HG changeset patch # User Drew Perttula # Date 2014-06-13 07:34:12 # Node ID 17b24cb102025bdc0fbfd065308d11ff709b2cec # Parent a856693007b2654cd414da8b6c62f2641ec846b0 gather more output loop timing Ignore-this: 723db286bb94478104b71f013b260fe diff --git a/bin/effecteval b/bin/effecteval --- a/bin/effecteval +++ b/bin/effecteval @@ -191,7 +191,8 @@ class App(object): self.stats = scales.collection('/', scales.PmfStat('sendLevels'), scales.PmfStat('getMusic'), - scales.PmfStat('writeDmx'), + scales.PmfStat('evals'), + scales.PmfStat('sendOutupt'), scales.IntStat('errors'), ) diff --git a/light9/effecteval/effectloop.py b/light9/effecteval/effectloop.py --- a/light9/effecteval/effectloop.py +++ b/light9/effecteval/effectloop.py @@ -80,10 +80,12 @@ class EffectLoop(object): if song is None: return - outputs = self.allEffectOutputs(songTime) + with self.stats.evals.time(): + outputs = self.allEffectOutputs(songTime) combined = self.combineOutputs(outputs) self.logLevels(t1, combined) - yield self.sendOutput(combined) + with self.stats.sendOutput.time(): + yield self.sendOutput(combined) elapsed = time.time() - t1 dt = max(0, self.period - elapsed) @@ -105,8 +107,7 @@ class EffectLoop(object): @inlineCallbacks def sendOutput(self, combined): dmx = combined.get_dmx_list() - with self.stats.writeDmx.time(): - yield dmxclient.outputlevels(dmx, twisted=True) + yield dmxclient.outputlevels(dmx, twisted=True) def allEffectOutputs(self, songTime): outputs = []