poly~ weirdness
I am using poly~ to keep DSP use down in a very larger audio processing chain. I use it to mute and kill DSP on dozens of patchers (probably more like 100). I have been developing this processor for live performance for about 10 years, adding as I go, when a new idea comes along.
It seems I may be hitting some kind of wall with having so many poly~ objects. Recently as I added a number of them, some poly~ enclosed patchers stopped passing audio. It is completely random, and will come up in different combinations each time I launch the parent patcher. Muting and unmuting has no effect. Stopping DSP and starting again has no effect. Relaunching just gives a different set of dead poly~ enclosed patchers; different ones, and different numbers of dead patchers.
This is on a Mac Mini server quad processor running Yosemite and MaxMSP 5. The parent patch is about 50Mb so I won't include it here. It is also completely dependent on the hardware I/O so it would not be helpful to share.
I guess I just looking for any advice or insight into what might be going on.
Thanks, T Bruce
It might be worth to check out if Max 7 works better for you. Cycling fixed a huge number of issues since Max 5….
Best,
Christian
Since you mention dependance on audio interface, you might want to experiment with vector size. You might also want to monitor CPU with Activity Monitor, in addition to the Max DSP CPU.
I haven't used Max 5 for a while, but poly~ seemed solid enough, as well as in Max 6.
Could this be a recent upgrade to Yosemite? Would Max 5 + Yosemite + your audio interface be the problem? I'm not sure you get just some voices on/off or silence from your whole patch.
Hey Christian, I think you have the main issue right there. I have been Max5 hard for a couple years because of multiple plugin, and UI graphic issues. I actually spent a couple weeks trying to convert last year, and gave up. I solved those problems by using poly~ with dynamic muting to reduce DSP load, so Max5 was still workable.
I think the problem now is, as I add more poly~ I am hitting the 32 bit memory limit. It's amazing I haven't had more problems. I have been hiding my head in the sand, and didn't even look up the actual memory limit until last night (4295Mb). I realize now that my RAM usage (reported in Activity Monitor) has been hovering above 4000Mb for quite a while. Pretty obvious I've pushed it too far. So, I'll have to buckle down for a couple weeks, and make the leap to 7.
Jean-Francois, thanks for the tips. I've had Yosemite for a while now, and it seemed to be 100% improvement for all things Max5. I've had the same audio interface for 15 years in Max, so I really think it's the 32 bit limit. I use the poly~ only for the mute function. Every poly~ has a single instance of a patcher in it.
Off I go. I'll report back, T Bruce
Well, it's pretty strange here. I haven't started the trek to Max 7 yet, but played a gig tonight. Max 5 under Yosemite and with my mondo 50 Mb patch is pretty erratic in a number of ways. Things work for a while and then I start getting big drop outs with the same preset that worked an hour before.
But here's a repeatable weirdness.
I have a patcher with a groove~ object in it. This patcher is nested 3 patcher levels down inside of a poly~. Anyway, it is not producing audio. So, I open the original top level patcher that contains this groove~ that the poly~ is hosting, and all of the sudden the audio from the groove~ is happening. then I can close the original top level patcher that has the groove~ in it, and everything is hunky dory.
If I then close the master 50 Mb patch that all of this lives in, and reopen it, no audio again until I open the top level subpatch with the groove~ in it. This FUBAR happens every time.
By now, if anyone has followed so far with out an example patch your eyes are probably glazed over.
Should I just write this off to general Max5 in Yosemite land weirdness, and move on to Max7, or is there something meaningful going on that I could actually fix. I'd like to have a dependable Max5 patch to tide me over while I work on the Max7 version if possible.
Sincere thanks to anyone that finds an interest in this, and has ideas, T Bruce
The sub patcher I am referring to is 1.5 Mb, so I can't provide it here.
Thanks for reporting the memory limit thing.
Just an idea if you haven't tried it yet: you could also try to open your patch with Max 6 (or Max 6 Runtime), or Max 7 as Runtime, and compare.
Hi Jean, I am working on getting in running in max 7, but it will a week's work to get all of the problems worked out that come up moving this patch from 5 to 7. Thousands of objects and UI elements no longer function, so I have go through it by hand just to get it functioning at all. I will keep posting here, as I progress.
T bruce
If it's a huge patch (even not so huge), you might find the transition to Max 7 quite difficult on the eyes, and you might find your programming-debugging speed will go down. It's why I mentioned Max 6 as well... À bon entendeur.
I guess I'm making a commitment to go all the way to 7, so that the new version of the patch will last longer. But.... you are very correct about 7 being hard on the eyes and very nasty about changing things as simple as a Text Button. Cheeze, thousands of little repair jobs just to get the UI to make any sense at all. I guess I'm not very wise, but I hope I can get ahead of the curve for a long time after this. It's going to take weeks, if not months to sort this out.
Here's a list (not complete) of things that I am running into to get from Max 5 to 7:
pictslider - will not load the original pict files, each must have the files changed to png and loaded manually (I have 245)
text buttons - acquire all kinds of new behaviors that have to be manually fixed
meters - all kinds of color and alpha setting changes
Tristan Jehan's shifter~ will not work
Miller Puchete's sigmund~ will not work
Many things from the PeRcolate group will not work
A number of Jasch max objects, including peaklist will not load
I am starting a new thread just to deal with working my way through this Max 7 transition. See you there, wheeee!