vak: (Default)
[personal profile] vak
Взял пустую Си-шную программу "int main() {}". Скомпилировал статически под Линуксом. Прогнал через valgrind, получил профиль выполнения. Отрисовал граф вызовов с помощью qcachegrind.
gcc -g -Os -static empty.c -o empty
valgrind --tool=callgrind --dump-instr=yes --collect-jumps=yes ./empty
qcachegrind callgrind.out.*
Вот как эта халабуда выглядит.



Какие-то непонятные tunables сжирают время, и get_cie_encoding неясно что такое.

Под FreeBSD картина несколько яснее. И эффективнее: BSD-шная библиотека за 75471 процессорных инструкций супротив 170979 в Линуксе. Это на архитектуре x86_64.

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org