关于 07/03_prefetch/06 运行结果的疑问
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 25/100
- Issue 类型
- 缺陷
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- cpp
- 领域
- hpc, performance
调研方向
Start with the 07/03_prefetch/06 example and reproduce the two benchmark runs on the reported Intel i5-13500, Ubuntu 24.04, and GCC 13.2. Compare the results with and without #pragma omp parallel for; the issue is resolved when the effect of the pragma and the differing benchmark timings are explained or documented.
由索引模型根据 Issue 内容生成。
描述
hi, 小彭老师好。关于 07/03_prefetch/06 例子运行结果我有一些疑问,望指正。
我的平台是 Intel i5-13500, Ubuntu 24.04, gcc version 13.2.0
在运行 07/03_prefetch/06 这个例子时,
去掉例子中的 #pragma omp parallel for 才能得到与课程中类似的结果。我不清楚 #pragma omp parallel for 是否除了并行之外还有其他的优化?
原始版本运行结果
从运行结果可以看到,BM_write_stream_then_read 跟 BM_write_streamed 运行耗时相近,似乎读对 stream 指令并没有影响
-----------------------------------------------------------------------
Benchmark Time CPU Iterations
-----------------------------------------------------------------------
BM_read 25228152 ns 18180668 ns 38
BM_write 32696238 ns 25309548 ns 33
BM_write_streamed 19530899 ns 17132181 ns 36
BM_write_stream_then_read 19586335 ns 17525509 ns 43
BM_write_streamed_ps 19550735 ns 14485110 ns 39
BM_write_streamed_ps_skipped 37094026 ns 26238143 ns 26
BM_read_and_write 36829027 ns 33520956 ns 22
去除 #pragma omp parallel for 版本运行结果
从运行结果可以看到,BM_write_stream_then_read 运行耗时显著比 BM_write_streamed 长
-----------------------------------------------------------------------
Benchmark Time CPU Iterations
-----------------------------------------------------------------------
BM_read 38213301 ns 38207623 ns 19
BM_write 52209723 ns 52203705 ns 13
BM_write_streamed 34738316 ns 34735390 ns 20
BM_write_stream_then_read 40930259 ns 40927256 ns 17
BM_write_streamed_ps 17725541 ns 17724305 ns 36
BM_write_streamed_ps_skipped 36891533 ns 36889477 ns 19
BM_read_and_write 44972351 ns 44969916 ns 12
- 主要语言
- C++
- 星标
- 4.2k
- 派生
- 554
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
parallel101/course 的其他 Issue
-
访问者设计模式缺少继承未关闭
难度 1/5 1-3 小时 新手友好度 68/100
parallel101/course#35 ·
-
难度 1/5 1 小时以内 新手友好度 62/100
parallel101/course#29 ·
-
难度 1/5 1 小时以内 新手友好度 45/100
parallel101/course#39 ·
-
难度 2/5 1-3 小时 新手友好度 42/100
parallel101/course#38 ·
-
函数返回匿名结构体无法编译未关闭
难度 2/5 1-3 小时 新手友好度 45/100
parallel101/course#36 · 2 条评论 ·
查看 parallel101/course 的全部 Issue
相似的 Issue
-
Issue-Bug Needs-Triage
难度 2/5 1-3 小时 新手友好度 62/100
microsoft/winget-cli#6645 ·
维护者通常 2 天内回复
-
cleanup help wanted
难度 2/5 1-3 小时 新手友好度 62/100
ESPresense/ESPresense#2602 ·
维护者通常 1 天内回复
-
devex good first issue
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 1 天内回复
-
artifact:simulation-scenario domain:physics good first issue help wanted role:validation testing
难度 2/5 1-3 小时 新手友好度 75/100
-
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 3 天内回复