To me, using
top inside a Linux server via SSH is all muscle-memory and it's definitely good enough. On my Macbook when working on some long-running code that is resource intensive the best tool I know of is:
I like it because it has the graphs I want and need. It splits up the work of each CPU which is awesome. That's useful for understanding how well a program is able to leverage more than one CPU process.
And it's really nice to have the list of Processes there to be able to quickly compare which programs are running and how that might affect the use of the CPUs.
Instead of listing alternatives I've tried before, hopefully this Reddit discussion has good links to other alternatives