How about also checking out if there would be any other alternative to
Tcl/Tk? It's still quite slow, and some not so uncomplicated things (like
a gui element in a gop) take lots of cpu for what they give.
a lot of this has nothing to do with TCL/Tk being slow, but PD using C string manipulation to generate Tk commands..then piping them over the client<>server socket. many times a second, per object, in the audio thread. etc..
if you do similar things in HTML/JS/XUL you'll find them even slower than Tk, and using 10-100x the RAM. at least w/ firepig.
imo the biggest prob with [widget] is that the widgets were only 'alive' when that subpatch was physically on the screen. so some combination of tclpd and [widget] that has 'offscreen' mode which still allows data pass-thru and TCL execution would be an improvement...