I am mostly interested in CPU hogs, not in memory usage. Also I always sort on CPU usage, the default behaviour on other OSes. So I made a little shell script to make top use 5 to 10 times fewer CPU cycles. It basically removes all the memory checks from top, so you cannot use it to see how much memory a program occupies, or how much RAM you have left. Use the plain old top for that. This is what I use:
/usr/bin/top -ocpu -R -F -s 2 -n30
It sorts on CPU, it doesn't 'traverse the memory object map,' (a huge time saver), it doesn't calculate library statistics, it only redraws every other second and shows only the first 30 programs. You can put this line in a script called top in your ~/bin/ directory, or make it into an alias. Don't forget to rehash to make it work!
[robg adds: I created it as an alias (in tcsh) by adding alias ttop 'top -ocpu -R -F -s 2 -n30' (ttop can be whatever you like, of course) to my .tcshrc file, so I can run both versions easily. Even on my Dual G5, top is a CPU hog -- it takes about 10% - 15% of the CPU; using these command line switches, it's down around 1%.]

