我們繼續討論用於評估 CPU 效能的工具 Linux-машинах. Сегодня в материале: temci, uarch-bench, likwid, perf-tools и llvm-mca.
更多基準:
Фото— — 不飛濺
這是一個用來估計兩個程式的執行時間的工具。 本質上,它允許您比較兩個應用程式的執行時間。 該實用程式的作者是一位來自德國的學生 Johannes Bechberger,他在 2016 年將其開發為他的學士論文的一部分。 今天的工具 根據 GNU 通用公共授權獲得許可。
約翰內斯想要創建一種工具,使他能夠在受控環境中測量計算系統的性能。 因此,temci的主要功能之一就是能夠建構測試環境。 例如, :更改CPU頻率管理器設置,停用 以及 L1 和 L2 緩存,關閉 Intel 處理器上的 Turbo 模式等。對於基準測試 temci 使用工具 , и .
這是該實用程式在第一種情況下的樣子:
# 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
根據基準測試結果,系統生成 帶有圖表、表格和圖表,這將 temci 與類似的解決方案區分開來。
在temci的缺點中,它的「年輕」尤為突出。 正因如此他 конфигурации аппаратного и программного обеспечения. Например, его сложно запустить под macOS, а на системе с процессором ARM недоступны некоторые функции. В будущем ситуация может измениться, так как автор активно развивает проект, и количество звезд на GitHub постепенно увеличивается — не так давно temci даже 關於駭客新聞。
用於評估低階 CPU 功能效能的實用程序,由工程師 Travis Downs 開發()。 最近他在寫博客 在 GitHub Pages 上,其中討論了基準測試工具和其他相關內容。 總的來說,uarch-bench才剛開始流行,但已經相當普遍了 主題線程中的駭客新聞居民作為基準測試的首選工具。
Uarch-bench 讓您評估記憶體效能、並行資料載入速度和清理工作 。 可以找到程式產生的基準測試結果是什麼樣的 在頁面的底部。
值得注意的是,uarch-bench 和 temci 一樣, Intel Turbo Boost功能(在負載下自動提高處理器時脈速度)可讓測試結果一致。
目前,該專案正處於開發的早期階段,因此uarch-bench沒有詳細的文檔,並且其運行可能包含錯誤 - 例如, 隨著 Ryzen 的推出。 此外,僅支援 x86 架構的基準測試。 作者承諾未來會增加更多功能,並邀請您參與開發。
Это — набор инструментов для оценки производительности Linux-машин с процессорами Intel, AMD и ARMv8. Он создан под эгидой Федерального министерства образования и научных исследований Германии в 2017 году и передан в open source.
在 likwid 工具中,我們可以重點介紹 likwid-powermeter,它顯示來自 RAPL 暫存器的有關係統功耗的信息,以及 likwid-setFrequencies,它允許您控制處理器頻率。 你可以看到完整的列表 .
該工具由參與 HPC 研究的工程師使用。 例如,與 likwid 來自德國埃爾蘭根-紐倫堡大學 (RRZE) 區域計算中心的一組專家。 她也積極參與了這套工具的開發。

Фото— — 不飛濺
Этот инструмент для анализа производительности Linux伺服器 布倫丹·格雷格. 他是開發商之一 — 用於即時偵錯應用程式的動態追蹤框架。
perf-tools 是基於 perf_events 和 ftrace 核心子系統。 它們的實用程式可讓您分析 I/O 延遲 (iosnoop)、追蹤系統呼叫參數(unccount、funcslower、funcgraph 和 functrace)並收集檔案快取中「命中」的統計資料 (cachestat)。 在後一種情況下,命令如下所示:
# ./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
圍繞著該儀器已經形成了一個相當大的社區()。 有些公司會積極使用性能工具,例如 。 但該工具正在進一步開發和修改(儘管最近很少發布更新)。 因此,它的運行中可能會出現錯誤——作者寫道,有時perf-tools會導致內核恐慌。
一個實用程序,可預測機器代碼在不同 CPU 上需要多少計算資源。 她 每個週期的指令()以及特定應用程式產生的硬體負載。
llvm-mca 於 2018 年作為該專案的一部分提出 ,正在開發一個用於程式分析、轉換和最佳化的通用系統。 眾所周知,llvm-mca 的作者受到了一種分析軟體效能的解決方案的啟發 並試圖創造一種替代方案。 根據用戶的說法,該工具的輸出(佈局和數量)確實類似於 IACA - 例如 。 但是,llvm-mca 只接受 ,因此您很可能必須使用轉換器才能使用它。
我們在部落格和社群網路上寫的內容:
![]()
![]()
![]()
![]()
![]()
我們 1cloud.ru 提供免費服務“」 您可以在單一個人帳戶中管理 DNS 記錄。
來源: www.habr.com
