-
Notifications
You must be signed in to change notification settings - Fork 108
Home
Welcome to the Very Sleepy wiki!
This wiki is the official Very Sleepy documentation, which anyone can edit.
For general information about Very Sleepy, see below. For other topics, see the page list in the side bar to the right.
Very Sleepy is a sampling CPU profiler. To clarify:
-
Very Sleepy profiles CPU usage, i.e. it tries to find which parts of a program spend the most CPU time executing.
-
CPU profilers can be roughly divided in two categories, according to their modus operandi:
a. Instrumenting profilers work by modifying the program before it is executed. This can be done at the source level, or after compilation (e.g. Valgrind). The advantages of instrumenting profilers is that they can gather exact information on how many times any function was called, or which functions call which functions exactly.
b. Sampling profilers work by periodically inspecting the profiled program's state. This is usually done by attaching to the program as a debugger would, and periodically recording each thread's stack traces. The advantages of sampling profilers is that they do not require modifying the program code before it is executed, and the results better statistically reflect which portions the program spends time in (due to not adding inconsistent overhead to small functions). Very Sleepy is a sampling profiler.
After starting Very Sleepy, you can choose whether to profile an existing process (by selecting it from the list), or start and profile a new process (using the File → Launch... menu entry).
Once profiling is finished (whether due to the process exiting, the indicated time limit being exceeded, or the user clicking the Stop button), Very Sleepy will display the results. See the User Interface page for detailed information about the results window.
The collected profiling information can be saved to a .sleepy
file using the File → Save As... menu entry, loaded from a .sleepy
file using the File → Open... menu entry, or exported to a CSV file using the File → Export as CSV... menu entry.
For information on more advanced subjects, see the full listing of pages on this wiki (at the top right of this page).
Very Sleepy questions or problem reports can be submitted by filing a GitHub issue.