One of the issues when trying to develop programs to run on a Raspberry Pi is to be as efficient as possible. This is true for any system, but even more so for systems with limited resources. One of the key tools that you can use to help you optimise your code is a profiler.
Once your program grows beyond a certain size, it becomes essentially impossible to know where you should focus your attention and spend your time trying to optimise it. Using a profiler, you can get a clear idea of which parts of your program get used the most. These sections are where you should focus your efforts so that you get the biggest impact.