See on tööriist kahe programmi täitmisaja hindamiseks. Põhimõtteliselt võimaldab see võrrelda kahe rakenduse täitmisaega. Utiliidi autor oli Saksamaalt pärit üliõpilane Johannes Bechberger, kes töötas selle välja oma bakalaureusetöö raames 2016. aastal. Täna on tööriist jaotatud litsentsitud GNU üldise avaliku litsentsi alusel.
Johannes soovis luua tööriista, mis võimaldaks mõõta arvutisüsteemi jõudlust kontrollitud keskkonnas. Seetõttu on temci üks peamisi omadusi testkeskkonna seadistamise võimalus. Näiteks, keegi ei saa: muutke protsessori sagedushalduri sätteid, keelake hüperlõime ning L1 ja L2 vahemälu, lülitage Inteli protsessoritel turborežiim välja jne. Võrdlusuuringuks kasutab temci tööriistu aeg, perf_stat и rüselus.
Nii näeb utiliit välja esimesel juhul:
# 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
Võrdlusuuringu tulemuste põhjal genereerib süsteem mugav aruanne diagrammide, tabelite ja graafikutega, mis eristab temci sarnastest lahendustest.
Temci puuduste hulgas paistab silma tema “noorus”. Selle tõttu ta kõike ei toetata riist- ja tarkvara konfiguratsioonid. Näiteks on seda keeruline MacOS-is käivitada ja mõned funktsioonid pole ARM-põhises süsteemis saadaval. Tulevikus võib olukord muutuda, kuna autor arendab aktiivselt projekti ja tähtede arv GitHubis suureneb järk-järgult - mitte nii kaua aega tagasi temci isegi kommentaarides arutatud Häkkeriuudistes.
Utiliit madala taseme protsessori funktsioonide toimivuse hindamiseks, mille on välja töötanud insener Travis Downs (Travis Downs). Viimasel ajal on ta blogi pidanud Esinemine on oluline GitHubi lehtedel, kus räägitakse võrdlusuuringute tööriistadest ja muust sellega seotud asjadest. Üldiselt on uarch-pink alles hakanud populaarsust koguma, kuid see on juba üsna tavaline mainitud Hacker Newsi elanikud temaatilistes lõimedes, mis on võrdlusuuringu tööriist.
Uarch-bench võimaldab hinnata mälu jõudlust, paralleelset andmete laadimise kiirust ja puhastustöid YMM registrid. Kuidas programmi genereeritud võrdlusuuringu tulemused välja näevad, saab tutvuda ametlikus hoidlas lehe allservas.
Väärib märkimist, et uarch-pink, nagu temci, keelab Intel Turbo Boost funktsioon (see suurendab automaatselt protsessori taktsagedust koormuse korral), et testi tulemused oleksid järjepidevad.
Praegu on projekt arenduse algusjärgus, nii et uarch-benchil pole üksikasjalikku dokumentatsiooni ja selle töö võib sisaldada vigu - näiteks raskused on teada käivitamisega Ryzenis. Samuti toetatakse ainult x86 arhitektuuride võrdlusaluseid. Autor lubab edaspidi funktsionaalsust juurde lisada ja kutsub arendusega liituma.
See on tööriistade komplekt Inteli, AMD ja ARMv8 protsessoritega Linuxi masinate jõudluse hindamiseks. See loodi Saksamaa Föderaalse Haridus- ja Teadusministeeriumi egiidi all 2017. aastal ja avaldati avatud lähtekoodiga.
Likwidi tööriistadest võib esile tõsta likwid-powermeter, mis kuvab RAPL-i registritest infot süsteemi tarbitava võimsuse kohta, samuti likwid-setFrequencies, mis võimaldab juhtida protsessori sagedust. Näete täielikku loendit leia hoidlast.
Tööriista kasutavad HPC-uuringutega seotud insenerid. Näiteks likwidiga ehitustööd rühm spetsialiste Saksamaal Erlangen-Nürnbergi Ülikooli Regionaalsest Arvutuskeskusest (RRZE). Ta osaleb aktiivselt ka selle tööriistakomplekti väljatöötamises.
See tööriist Linuxi serverite toimivuse analüüsimiseks tutvustatud Brendan Gregg. Ta on üks arendajatest DTrace — dünaamiline jälgimisraamistik rakenduste reaalajas silumiseks.
perf-tools põhineb perf_events ja ftrace kerneli alamsüsteemidel. Nende utiliidid võimaldavad teil analüüsida I/O latentsust (iosnoop), jälgida süsteemikõne argumente (unccount, funcslower, funcgraph ja functrace) ning koguda statistikat tabamuste kohta faili vahemälus (cachestat). Viimasel juhul näeb käsk välja selline:
Pilli ümber on tekkinud üsna suur kogukond (peaaegu 6 tuhat tärni GitHubis). Ja on ettevõtteid, kes kasutavad näiteks aktiivselt perf-tööriistu Netflix. Kuid tööriista arendatakse ja muudetakse edasi (kuigi värskendusi on viimasel ajal välja antud üsna harva). Seetõttu võib selle töös esineda vigu – autor kirjutab, et mõnikord põhjustab perf-tools kerneli paanikat.
Utiliit, mis ennustab, kui palju arvutusressursse masinkood erinevatel protsessoritel vajab. Ta hindab Juhised tsükli kohta (IPC) ja riistvara koormust, mille konkreetne rakendus genereerib.
llvm-mca esitleti 2018. aastal projekti osana LLVM, mis töötab välja universaalset süsteemi programmide analüüsimiseks, teisendamiseks ja optimeerimiseks. On teada, et llvm-mca autorid said inspiratsiooni tarkvara jõudluse analüüsi lahendusest IACA Intelilt ja püüdis luua alternatiivi. Ja kasutajate sõnul sarnaneb tööriista väljund (nende paigutus ja kogus) tõesti IACA-ga - näide leiad siit. Kuid llvm-mca aktsepteerib ainult AT&T süntaks, nii et suure tõenäosusega peate sellega töötamiseks kasutama muundureid.
Millest me oma blogides ja sotsiaalvõrgustikes kirjutame: