If this has been posted, I sure can't find it ;-)
I goofed around, as new Squeakers often do, and managed to get Squeak to create enough C sources so that I could compile a working VM. (Whatever I can get from Squeak 3.1 Alpha, update 3910.) Looking through the code, I saw that I could remove a comment and allow profiling... I did that, recompiled, verified that the profiling code was there (have necessary library, too, this is for PPC non-Carbon).
Back into Squeak with the new VM, looking around in the Method Browser, I found profile, profile: and similar. Pulling up a browser on profile: showed some code to profile a block; I tried manually executing, in order, the "steps" shown in the code. (did this in a text window with "doIts," since I'm still too wet behind the ears to know how to specify a "block" - don't tell anyone, eh? ;-)
Problem? Can't seem to ever create the "Profile.out" file at any point when the profile is dumped and/or the VM quits (Quit from Squeak world menu or VM "Mac menubar" Quit).
Anyone with the patience to walk me through the basics of what I should be doing?
BTW, the VM sure is a lot slower with the profiling code compiled in!
Thank you all, Jean
If this has been posted, I sure can't find it ;-)
I goofed around, as new Squeakers often do, and managed to get Squeak to create enough C sources so that I could compile a working VM. (Whatever I can get from Squeak 3.1 Alpha, update 3910.) Looking through the code, I saw that I could remove a comment and allow profiling... I did that, recompiled, verified that the profiling code was there (have necessary library, too, this is for PPC non-Carbon).
Back into Squeak with the new VM, looking around in the Method Browser, I found profile, profile: and similar. Pulling up a browser on profile: showed some code to profile a block; I tried manually executing, in order, the "steps" shown in the code. (did this in a text window with "doIts," since I'm still too wet behind the ears to know how to specify a "block" - don't tell anyone, eh? ;-)
Problem? Can't seem to ever create the "Profile.out" file at any point when the profile is dumped and/or the VM quits (Quit from Squeak world menu or VM "Mac menubar" Quit).
Anyone with the patience to walk me through the basics of what I should be doing?
BTW, the VM sure is a lot slower with the profiling code compiled in!
Thank you all, Jean
I'm not sure anyone has really explain this since it's tied to Code Warrior. If you build a Code Warrior project you must build it with CW profiling turned on in order to get the profile: to work.
Also you should build the VM with no inlining. This makes it much easier to read the C code and to get proper profiling information.
Apple also makes product that captures branch locations via hardware. With a .SYM file you can also get a good picture of where code usage is happening.
squeak-dev@lists.squeakfoundation.org