Unless you use a memory and CPU profiler every day, you probably haven&#x27;t got much idea what your program is doing. There are a few domains where manual control of memory management is necessary, but those are shrinking, and GCs just keep getting better with lower and lower pause times and better and better throughput. With manual memory management (like writing your program in assembly) your program will never get faster due to industry-wide advancement in GC and compiler technology.<p>Most GC problems can be pinpointed to poor application behavior and many are due to bottlenecks in GC (e.g. too much work done in sequential phases, etc).