簡體   English   中英

性能報告顯示“ __libm_pow_l9”

[英]perf report showing “__libm_pow_l9”

我正在使用perf來分析我的程序,其中涉及使用exp()和pow()的大量負載。 該代碼被編譯使用

icc  -g -fno-omit-frame-pointer test.c

並進行了以下分析:

perf record -g ./a.out

接下來是:

perf report -g 'graph,0.5,caller'

perf給出了:

在此處輸入圖片說明

這兩個函數__libm_exp_l9()和__libm_pow_l9()消耗了大量的計算能力。

所以我想知道它們是否分別只是exp()和pow()的別名? 或有任何建議可在此處閱讀報告? 謝謝。

它們不是別名,而是功能的內部實現。 根據使用的處理器,指令集或參數,數學庫通常具有多個版本的函數。

不用擔心。 Exp和Pow是比通常的指令更復雜的函數,因此它們需要一些時間。 不幸的是,我沒有找到對它們的任何引用(英特爾數學庫可能不是開源的),但這是對函數使用內部命名空間名稱的慣例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM