On Fri, 23 Nov 2007, Derek Holzer wrote:
And PD isn't one of them. PD's GUI has always kept one of it's feet permanently nailed to the floor. The problem is just exaggerated on OSX. Previous discussions, back when I still had time to investigate things like this, pointed to Aqua versions of Tcl/Tk as being a possible offender. I tried getting into recompiling PD against different versions of Tcl/Tk, but found it easier to just use the same computer running Linux for high-performance [PD] situations.
Upgrading Tcl/Tk to at least 8.5a6 will make Tk about as "quick" on OSX as it can be on Linux... maybe a bit more or a bit less.
Wouldn't it be great if there was a way to pipe all the time people spend rambling about political correctness, beer, philosophy and theoretical physics on this list into solving basic problems like this? <duck!>
I don't know, perhaps theoretical physics is easier than messing around with Tk's source code ;) let alone the politics of Tcl/Tk (e.g. when will 8.5 be officially released? which modifications of Tk are considered appropriate for merging into the trunk? etc)
I had started making cross-platform optimisations in Tk itself, just before Pd Convention 2007, but it's somewhat tricky to speed up some common cases without also slowing down some other common cases. During Pd Convention 2004, the late James Tittle had identified that the most horrible slowdown was due to the least-common-bounding-box algorithm of Tk's redraw. What I implemented is a dirty-tile algorithm (make a reduced map of the screen, mark areas that have to be redrawn). It's not that good: huge speedups are compensated by huge slowdowns in other situations. If I modify much more of Tk, I could get to a point where individual items can really express their usage of space in terms of tiles instead of bounding boxes, so that a diagonal line doesn't take the same number of tiles as the rectangle that the line is a diagonal of. This could accelerate the dirty-tile method so that it becomes clearly superior to the traditional redraw. I believe that it's still easier to modify Tk than to switch to a different toolkit.
I'm only talking about cross-platform optimisations, because the OSX-specific problem has been already taken care of during 2006.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada