Duoduobear 发表于 2024-8-2 12:40

单核任务是不是只能跑成这样了?

本帖最后由 Duoduobear 于 2024-8-2 15:09 编辑


运行一个任务,过去要跑好几个小时。现在优化了磁盘访问性能,但也要跑50多分钟。
实际上CPU占用率不超过45%。

看任务管理器里CPU性能,有几个核跑到了100%。




这是不是没有优化空间了。是不是跑的任务是单核任务,所以占用不了所有核心和线程?
电脑是Thinkpad P16s

krsjdql 发表于 2024-8-2 13:57

一核有难 其他围观

chenxinyi 发表于 2024-8-2 16:18

本帖最后由 chenxinyi 于 2024-8-2 16:40 编辑

总体利用率44%,P核基本上跑满了, 按P核6除以总核数14 = 43% (假设E核不会满负荷在长运算)
多核轮流处理指令(或者乱序),单核的利用率肯定不会跑满,但可以明显看到P3/P4核的利用率高些,因为,它们的性能更好!


我有点怀疑你的任务是真的单核(单线程)处理,如果是,总体利用率应该会更低,10~20%之间,cpu主频会更高些。

stopyan 发表于 2024-8-2 17:43

程序逻辑就是一条线执行的话,必然用不到多核的能力...


之前做仿真遇到过类似openMP API工具能够从开发阶段并行化的,由于没有动力导致并未深入学习

现在的win11对于有Turbo Boost Max Technology 3.0 功能的I处理器,遇到单核任务时候会默认把任务放进星标核,如下图最新版XTU或者最新版CPU-Z都能指示出星标核(能够跑到单核最大TVB睿频的核)

反而是停留在Turbo Boost Max Technology 2.0的8代,不论win10还是win11,遇到单核任务时候负载会在全部核心之间来回切换,效率明显比手动锁核要低。




页: [1]
查看完整版本: 单核任务是不是只能跑成这样了?