OpenMP offload performance is worse than sequential CPU performance
還沒有人認領這個 Issue。
評估
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 新手友好度
- 35/100
- Issue 類型
- 缺陷
- 描述清晰度
- 基本清楚
- 活躍度
- 停滯
- 技術堆疊
- cpp
- 領域
- performance
研究方向
從 openmp reduction sample 開始,使用報告中的 Ubuntu 和 Intel CPU 環境比較循序 CPU、OpenMP CPU 和 OpenMP GPU 的執行路徑。檢查 README 以及目前對 num_steps 的處理;完成的標準是預設 sample 不會誤導性地顯示較差的 offload 效能,並且可調整的參數和效能背景都已記錄。
由索引模型根據 Issue 內容生成。
描述
Summary
Provide a short summary of the issue. Sections below provide guidance on what
factors are considered important to reproduce an issue.
The time taken to complete calculation of pi using sequential CPU execution is better than OpenMP CPU and OpenMP GPU
Version
Report oneAPI Toolkit version and oneAPI Sample version or hash.
Samples commit id: 4bed52e76ceb17243a0bc4ce24e9aed52aaa6e49
Environment
Provide OS information and hardware information if applicable.
Ubuntu 20.04
11th Gen Intel(R) Core(TM) i7-1185GRE @ 2.80GHz
Steps to reproduce
Please check that the issue is reproducible with the latest revision on
master. Include all the steps to reproduce the issue.
build and run the openmp reduction sample.
Observed behavior
Document behavior you observe. For performance defects, like performance
regressions or a function being slow, provide a log if possible.
observe the time taken by each and notice that openmp offload performs the worst.
Expected behavior
Document behavior you expect.
OpenMP offload should perform better.
Verified Fix
Increase the number of steps by a factor of 100 and the time taken for each lines up according to expectations. OpenMP offload better than OpenMP CPU better than Seq CPU. We do not want developers to be presented with a poorly performing offload to begin with. The alternative is mention this in the README or perhaps do both. Increase num_steps and add some detail to the README. It will also be good to add the num_steps as a tunable parameter with a default value so developer can play with it.
- 主要語言
- C++
- 星號
- 1.2k
- 分支
- 745
- PR 合併指標
- 30 天內沒有已合併 PR
貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
oneapi-src/oneAPI-samples 的其他 Issue
-
bug
難度 3/5 1-2 天 新手友好度 45/100
oneapi-src/oneAPI-samples#2764 ·
-
難度 4/5 3-5 天 新手友好度 35/100
oneapi-src/oneAPI-samples#2748 ·
-
難度 5/5 一週以上 新手友好度 10/100
oneapi-src/oneAPI-samples#2746 ·
-
Lenovo Thinkpad T440p Ethernet issue warning sign show install multiple times but same issue face 未關閉question
難度 4/5 3-5 天 新手友好度 15/100
oneapi-src/oneAPI-samples#2739 ·
-
bug
難度 4/5 3-5 天 新手友好度 35/100
oneapi-src/oneAPI-samples#2705 ·
查看 oneapi-src/oneAPI-samples 的全部 Issue
相似的 Issue
-
bug build
難度 1/5 1 小時以內 新手友好度 91/100
facebookincubator/velox#19194 ·
-
JIT-compiled number -> Decimal conversion silently overflows instead of raising DECIMAL_OVERFLOW 未關閉fuzz
難度 2/5 1-3 小時 新手友好度 82/100
ClickHouse/ClickHouse#122114 ·
-
難度 2/5 1-3 小時 新手友好度 84/100
-
module/agent platform/macos type/bug/regression
難度 2/5 1-3 小時 新手友好度 88/100
-
enhancement PyCDE
難度 2/5 1-3 小時 新手友好度 78/100