I'm in the midst of designing a large scale multiple instrument based sequencer (that is mapped to an original musical controller), but I seem to be having a serious problem with a performance spike that occurs at the same point at every "loop" of the sequencer.
At the end of the current 'bar', the next bar's worth of information is loaded into the relevant grids/matrices (This includes: parameter automation grids, matrixctrls, itables). However at this specific point there is a 300-500ms hang while all of the relevant information is loaded. This is a serious issue as the hang/spike causes performance/recording/play back problems.
What is the most appropriate way to identify what is specifically causing the performance spike? I've never attempted de-bugging on my Max patches, could de-bugging help?
I've been looking through the forums, and I'm led to believe this could be a scheduler based problem, and could potentially be resolved by using a timer system based on a [phaser~] -> [Edge~] concept, however my scheduler doesn't appear to be going out of time, so I'm not sure whether this'll resolve my problem.
I'd post the patch but its close to 7mb now, and I get the impressive it'd be difficult for people to 'understand' what is happening where and why. I'd appreciate some general guidance or tips on improving performance, or debugging a large patch to resolve performance based issues.
Thanks in advance,