Профилисање

Како профилисати систем

Када Профилатор система профилише ваш систем, он бележи податке о стеку за све програме који се извршавају, укључујући и Линукс језгро. Ово понекад може бити збуњујуће ако желите да посматрате само један процес. Ако ваш програм не комуницира много са системом домаћином, можда ћете имати више успеха ако користите Профилатор система да покренете нови процес.

Да бисте профилисали читав систем, уверите се да је дугме за мету постављено на Сви процеси и кликните на Снимај.

У овом тренутку, можда ће бити затражено да овластите приступ за профилисање система. Ово је неопходно јер изведба „perf“ Линукс језгра захтева администратора (root) за обављање профилисања читавог система.

Током сесије профилисања, видећете број секунди колико је профилисање активно. Поновни клик на дугме Снимај ће зауставити сесију профилисања. Након тога ће бити приказан график позива.

Ако приметите да се програм Профилатор система појављује у вашем графику позива профилисања, можете размислити о снимању сесије профилисања помоћу sysprof-cli. Ово је програм линије наредби који ће снимити вашу сесију профилисања на диск како бисте је касније погледали.

Погледајте тумачење резултата за више упутстава.

Профилисање новог процеса

Често ћете можда морати да покренете нови процес за профилисање. Прво изаберите дугме Програм на врху прозора за снимање. Попуните своју наредбу и радни директоријум, и опционо наведите све променљиве окружења које су вам потребне. Ваш процес ће бити покренут када снимање почне.

Ако покрећете процес који захтева приступ вашем тренутном приказу, као што је ГТК+ програм, требало би да се уверите да је опција Наследи тренутно окружење постављена.

Профилисање помоћу sysprof-cli алатке командне линије

За минимално оптерећење, можете размотрити коришћење sysprof-cli алатке командне линије. Када се покрене без икаквих аргумената, она ће снимити читав ваш систем и сачувати излаз у capture.syscap. Ова датотека се може отворити програмом Профилатор система ради прегледа графика позива.

Ако желите да изродите нови процес, користите sysprof-cli -- 'наредба' да наведете наредбу која ће бити покренута. Наредба ће наследити тренутно окружење.

Тумачење резултата

Резултати профилисања у Профилатору система су подељени у три одељка. Горе лево је списак свих профилисаних функција. Оне су поређане према томе колико су често позиване током снимања.

Важно је напоменути да утрошено време у свакој функцији није снимљено. То би захтевало профилатор за праћење ради тачног бележења. Проценат се израчунава одређивањем колико се често та функција појављивала у тренутном трагу стека када је узорак снимљен.

Након избора функције са списка функција, сви снимљени позивачи те функције биће приказани доле лево. Они су такође поређани према проценту узорака који су укључивали ту функцију у трагу стека.

Десно су сви потомци изабране функције. Можете изабрати функцију било са списка функција, било са списка позивача.

Ако у својим резултатима видите - - Context Switch - -, то значи да је програм прешао у језгро Линукса или из њега. Може бити много разлога за то, као што су системски позив или сигнал.