Next: start_profile Up: Predefined functions Previous: function_list init_function_list

## Execution profile

Profiling helps you to approximately know the run time ratio taken by your functions. Built-in functions are not taken into account and their run time are included in their caller's one. To achieve this you must call start_profile(), execute your program, and last call stop_profile(). After that function_percent() may return run time percentages.

When profile is running, a timer is used to watch periodically which function is the current function, and to increase its counter. If Smac is used from Xcoral, this timer is disarmed when you are under the Xcoral toplevel, but it remains active when you call an Xcoral interface function from Smac.

To see the ten most greedy functions (the top_ten function is defined in the top_ten.sc file), you can run:

- start_profile
- stop_profile
- function_percent