Setting Scheduler Preferences
A note about my system, to start off: OSX 10.5.4, max 5.0.3, 8-core mac pro.
How does sending a message to max (such as ‘setpollinterval’) work in a built application? Would the message box still say "; max setpollinterval 50"? Or would it be "; name_of_app setpollinterval 50"? Does this get saved to the built application’s preference file automatically, or is it necessary to somehow explicitly write it to the preference file?
Quote: MuShoo wrote on Tue, 16 September 2008 05:42
> A note about my system, to start off: OSX 10.5.4, max 5.0.3, 8-core mac pro.
> How does sending a message to max (such as ‘setpollinterval’) work in a built application? Would the message box still say "; max setpollinterval 50"? Or would it be "; name_of_app setpollinterval 50"? Does this get saved to the built application’s preference file automatically, or is it necessary to somehow explicitly write it to the preference file?
; max setpollinterval.
‘max’ is simply a reserved message target; it’s not the name of the application. If it were the latter, you would have to send messages to ‘MaxMSP’, wouldn’t you?
Typically you trigger the message in an app by a loadbang. If you want the parameter to be user-configurable, you’ll have to manage your own prefs yourself.
I’m writing a patch that needs to be run on five separate computers – it would be really handy if there was a fast way to adjust scheduler preferences in Max 6.
It would be super useful to be able to always know that certain settings are always being loaded – no matter what machine a patch is being run from
Andy Schmeder posted a patcher (written for Max 5) on the CNMAT site that "automatically sets the preferences everytime the patch loads, which is good in case somebody changed them…".
Can someone at Cycling74 confirm if there is a way to do this in Max 6 – and if so – what messages we need tosend to do this.
I’ve tested Andy’s patch in Max 6 – and the only setting I can change is turning Overdrive on/off.
Failing that – is there a specific file in the Cycling ’74 folder that contains this information that I could simply copy to other machines?
I’d like to set all of the other Scheduler prefs:
Event Interval (ms)
Redraw Queue Throttle
Refresh Rate (ms)
Scheduler Interval (ms)
Scheduler Slop (ms)
Here’s Andy’s patch –
----------begin_max5_patcher---------- 1258.3oc6ZE1jiZBF9yI+JX7SWmIcKHZTu9o96n8lNDkrgqFvJ3ta5M2+8BH lMauMpmIAyz4lLiFQC4gGd3g2WjurbQvFwKTY.3ifeGrXwWVtXgsHSAKbWuH XO4k7Rhz9XAb5yhMeNXU6sTzWT1hKnkjC.Dr6FaEbkj8OTyMQgO.cEya1y3k TkstBesPQipqTjqzJhJeGi+3eVSyUsHDCg5ZBjXOFu1bLT+cvmb+DVgEKZ78 ygwmhDNYuEIA+VMiT1cm1+T0gJZa0GrgveL.7Iyc+5xklCqtLVQvo157hIkv dHkTKcrtkTR5kThlJor5RHmbw98Tt5aXmZpjp.pc5S.QkhI3R.8IJGv1ZJET TydhVCXRP9N8eNsnqFJYbZtngqNkZFC4hdWxEddxMJ6DxEEGaNgide1MB2C6 NAZaOUJIOR+FZCcSGiEF01Vw1S3vGh0WjdlVLZB5oq5.LRgTQTMRq9YugKtk C053Fmb.F02fsnvoPN5AZLit9JxQJvl1OAW7HknAsgZGuDmYjMmkYfWpMzpq gszPRpV6Ge3c2NVKMqO4DN02xoyYaKy2QKZJMNyZqZthVW2To.ELIYS4rXR6 7pPNWZXetzXz+iboCgivkFC8lK84HCnWHizQPFg36lorTj+hJt0NLNtoarAL t23CuWlx50o007i0G1GjTH1QR8ZDGhtWLhORN.J+MVu2RW1NRJF1KIAuttra ZTJAOX7MjdrKhOYN2vdaEnL+kpXofT78lq3Da5ImjSyYa5o2C4OeLz0294Jv QCRRnPmNu2f7QIW6PYm54qpyxVhTQkJPkPJYZmEPo3YPUMSTyTG.e3YJnwjy 9Q+GoPmvtNO8cDIfK.UZ+nR0ge5cCED6ASpnjSMohNSr.n09ITve8Op0OGPR UlU2PYCY9IRI.cwgJO0Pk53GLxZEhOC+D6sXkNmPrTmTuRqqzxOJot7.fvsK QjBjq+1FpVTJx0z9Ll1QR7XR6.g8sVSVJp.vGhmMQliXxh6UiEM6ZLsgkUlA DbftMtQmXqXaqJSpsxpAulvaNorb9DZvQIzP9Vn82MzFpZWsPoaL5nmgvYSx sNKskhv8p4B+glajZt0ixbKy2RtJQY4chhyQP3zdUbvYWw0ERWMUVI35n2TB f7ftr8cxtOf9k0P0NM+lOeQtEmMlH2R8+joTZ0LFvliVx5MdsjYWjgffs05+ XmGlli3EZE2Vsna2r4gEiGiGleyEvwI0Dkw+5g4SW43FTuAoEe23dcLgziyO 5i07JJbLq4UjWUP2CYQ1RKo8pcvyt1ocwQm1RIO42EUxnVkTupXppoz8UpYT v3Xk9mE6x2SA1Z0159O6rIKxLk+VRTJZpy6pptMOD3UvUncdXbhYCpb5CoGu CPGencrhBJ+T0wwWHpor2s6br3w7ByGFOuEz2b7fF.OlMGhOwS3.3AC8KdvC 0eg8FdrR0gzOQ9ieL6kgwM9xO3w7ddFDOnT+0egGC+D5u9qQ4+3uw6l25BH8 9Y7kEOY2O9OV7LndNxu3Yn4KPg9EOCMeAZn9q8rhJgNLbWPFoqs66jnSi06J C4glRI46CwH2BJeKgbz.PN1uc5wC0o6Y7rdHSC+BmjgnG+AmwDh.JwegzgFS HTS0BqMiERUkNGUoqNsPQmf2mE0lKWuxdIi2dosFCpoOw5d9nklZ6qK+Woix osA -----------end_max5_patcher-----------
From the Max 4.5 online documentation:
This doens’t appear to be a file like this in the Max 6 folders – is that because it is no longer supported?
"As of MaxMSP 4.5, there is an Extras menu item patch titled "PerformanceOptions". This patch demonstrates how to set a variety of settings related to how the high priority scheduler and low priority queue behave–both the interval at which the scheduler and the queue are serviced as well as the number of events executed per servicing (aka throttle).
… while these values are not stored in the preferences folder, you can make a text file that is formatted to send these messages to Max and place in your C74:/init/ folder if you want to set these values to something other than the default each time you launch Max. An example which would set the default values would contain the following:
max setslop 25; max setsleep 2; max setpollthrottle 20; max setqueuethrottle 10; max seteventinterval 2; max refreshrate 30; max enablerefresh 1;
For more information on the various settings exposed by this patch please read the descriptions contained in the Performance Options patcher."
OK I’ve done another test – with a patch that included all the scheduler prefs as messages – to see if there is a difference between Max 5 and 6.
here’s what I discovered:
In Max 5 documentation it states:
The rate at which refresh is done can be set by using the setrefreshrate message.
If you send this message in Max 6 you get this error report in the max window:
max: doesn’t understand "setrefreshrate"
Question: how do you set this in Max 6?
REDRAW QUEUE THROTTLE
You need to use the message setsysqelemthrottle – to set Redraw Queue Throttle
not setredrawqueuethrottle – as you might expect!
"The word setsleep, followed by a number, sets the time between calls to get the next system event, in 60ths of a second. The default value is 2."
Question: does the relate/equate to any of the variables described in Max 6 Sceduler Prefs?
The word setsleep, followed by a number, sets the time between calls to get the next system event, in 60ths of a second. The default value is 2.