Continuem parlant d'eines per avaluar el rendiment de la CPU. Linux-машинах. Сегодня в материале: temci, uarch-bench, likwid, perf-tools и llvm-mca.
Més punts de referència:
Фото - — Desesquitxa
Aquesta és una eina per estimar el temps d'execució de dos programes. Essencialment, permet comparar el temps d'execució de dues aplicacions. L'autor de la utilitat va ser un estudiant alemany, Johannes Bechberger, que la va desenvolupar com a part de la seva tesi de grau el 2016. L'eina d'avui amb llicència sota la Llicència Pública General de GNU.
Johannes volia crear una eina que li permetés mesurar el rendiment d'un sistema informàtic en un entorn controlat. Per tant, una de les característiques principals de temci és la capacitat de configurar un entorn de prova. Per exemple, : canvieu la configuració del gestor de freqüència de la CPU, desactiveu-lo i cachés L1 i L2, desactivar el mode turbo en els processadors Intel, etc. Per a l'anàlisi comparativa, temci utilitza eines , и .
Aquest és el aspecte de la utilitat en el primer cas:
# compare the run times of two programs, running them each 20 times
> temci short exec "sleep 0.1" "sleep 0.2" --runs 20
Benchmark 20 times [####################################] 100%
Report for single runs
sleep 0.1 ( 20 single benchmarks)
avg_mem_usage mean = 0.000, deviation = 0.0
avg_res_set mean = 0.000, deviation = 0.0
etime mean = 100.00000m, deviation = 0.00000%
max_res_set mean = 2.1800k, deviation = 3.86455%
stime mean = 0.000, deviation = 0.0
utime mean = 0.000, deviation = 0.0
sleep 0.2 ( 20 single benchmarks)
avg_mem_usage mean = 0.000, deviation = 0.0
avg_res_set mean = 0.000, deviation = 0.0
etime mean = 200.00000m, deviation = 0.00000%
max_res_set mean = 2.1968k, deviation = 3.82530%
stime mean = 0.000, deviation = 0.0
utime mean = 0.000, deviation = 0.0
A partir dels resultats del benchmarking, el sistema genera amb diagrames, taules i gràfics, que distingeix temci de solucions semblants.
Entre les mancances del temci, destaca la seva “joventut”. Per això ell конфигурации аппаратного и программного обеспечения. Например, его сложно запустить под macOS, а на системе с процессором ARM недоступны некоторые функции. В будущем ситуация может измениться, так как автор активно развивает проект, и количество звезд на GitHub постепенно увеличивается — не так давно temci даже a Hacker News.
Una utilitat per avaluar el rendiment de les funcions de CPU de baix nivell, desenvolupada per l'enginyer Travis Downs (). Recentment ha fet un blog a les pàgines de GitHub, que parla d'eines de benchmarking i altres coses relacionades. En general, uarch-bench tot just comença a guanyar popularitat, però ja és força comú residents de Hacker News en fils temàtics com a eina de referència per a l'avaluació comparativa.
Uarch-bench us permet avaluar el rendiment de la memòria, la velocitat de càrrega de dades paral·leles i el treball de neteja . Es pot trobar com són els resultats de benchmarking generats pel programa a la part inferior de la pàgina.
Val la pena assenyalar que uarch-banc, com temci, Funció Intel Turbo Boost (augmenta automàticament la velocitat del rellotge del processador sota càrrega) perquè els resultats de la prova siguin coherents.
De moment, el projecte es troba en les primeres etapes de desenvolupament, de manera que uarch-bench no té documentació detallada i el seu funcionament pot contenir errors, per exemple, amb llançament a Ryzen. A més, només s'admeten els punts de referència per a arquitectures x86. L'autor es compromet a afegir més funcionalitats en el futur i us convida a unir-vos al desenvolupament.
Это — набор инструментов для оценки производительности Linux-машин с процессорами Intel, AMD и ARMv8. Он создан под эгидой Федерального министерства образования и научных исследований Германии в 2017 году и передан в open source.
Entre les eines likwid podem destacar likwid-powermeter, que mostra informació dels registres RAPL sobre la potència consumida pel sistema, així com likwid-setFrequencies, que permet controlar la freqüència del processador. Podeu veure la llista completa .
L'eina és utilitzada pels enginyers implicats en la investigació HPC. Per exemple, amb likwid un grup d'especialistes del Centre Regional de Computació de la Universitat d'Erlangen-Nuremberg (RRZE) a Alemanya. També participa activament en el desenvolupament d'aquest conjunt d'eines.

Фото - — Desesquitxa
Этот инструмент для анализа производительности Linux-servidors Brendan Gregg. Ell és un dels desenvolupadors — un marc de seguiment dinàmic per depurar aplicacions en temps real.
perf-tools es basa en els subsistemes del nucli perf_events i ftrace. Les seves utilitats us permeten analitzar la latència d'E/S (iosnoop), fer un seguiment dels arguments de la trucada del sistema (unccount, funcslower, funcgraph i functrace) i recopilar estadístiques sobre "accets" a la memòria cau de fitxers (cachestat). En aquest últim cas, l'ordre té aquest aspecte:
# ./cachestat -t
Counting cache functions... Output every 1 seconds.
TIME HITS MISSES DIRTIES RATIO BUFFERS_MB CACHE_MB
08:28:57 415 0 0 100.0% 1 191
08:28:58 411 0 0 100.0% 1 191
08:28:59 362 97 0 78.9% 0 8
08:29:00 411 0 0 100.0% 0 9
Al voltant de l'instrument s'ha format una comunitat bastant gran (). I hi ha empreses que utilitzen activament eines de perfeccionament, per exemple . Però l'eina s'està desenvolupant i modificant encara més (tot i que darrerament s'han publicat actualitzacions molt poques vegades). Per tant, es poden produir errors en el seu funcionament; l'autor escriu que, de vegades, les eines de perfeccionament provoquen el pànic del nucli.
Una utilitat que prediu quants recursos informàtics necessitarà el codi màquina en diferents CPU. Ella Instruccions per cicle () i la càrrega del maquinari que genera una aplicació concreta.
llvm-mca es va presentar el 2018 com a part del projecte , que està desenvolupant un sistema universal d'anàlisi, transformació i optimització de programes. Se sap que els autors de llvm-mca es van inspirar en una solució per analitzar el rendiment del programari i buscava crear una alternativa. I segons els usuaris, la sortida de l'eina (la seva disposició i quantitat) s'assembla realment a IACA - exemple . Tanmateix, llvm-mca només accepta , de manera que probablement haureu d'utilitzar convertidors per treballar-hi.
Què escrivim als nostres blogs i xarxes socials:
![]()
![]()
![]()
![]()
![]()
A 1cloud.ru oferim un servei gratuït "" Podeu gestionar els registres DNS en un sol compte personal.
Font: www.habr.com
