Profiling refers to the act of running a program (called a "profiler") which analyzes a program you've written. The profiler will collect information about your program, such as: what functions are called, how often each is called, how much time is spent in each function, how much memory is used, etc.. This information can be used to help improve the performance of your program.