加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

多线程 – 使用CPU绑定例程的多线程?

发布时间:2020-12-15 04:57:59 所属栏目:Java 来源:网络整理
导读:我得到的是混合信号,让多个线程执行相同的CPU绑定例程是有意义的(当然,每个线程都在通过不同的数据). 如果你受CPU限制,你已经对处理器征税,对吗?为什么添加额外的CPU工作才有意义呢?您是否应该尝试将CPU绑定线程的数量与核心相匹配? 那么单核机器的情况呢
我得到的是混合信号,让多个线程执行相同的CPU绑定例程是有意义的(当然,每个线程都在通过不同的数据).

如果你受CPU限制,你已经对处理器征税,对吗?为什么添加额外的CPU工作才有意义呢?您是否应该尝试将CPU绑定线程的数量与核心相匹配?

那么单核机器的情况呢?多线程CPU绑定操作是否有意义?

提前致谢.

解决方法

If you are CPU bound,you are already taxing the processor,right? Why would it make sense to add additional CPU work then? Is the idea that you should try to match the number of CPU-bound threads to cores?

是的,这基本上就是这个想法.如果算法是CPU绑定的,它将占用一个处理核心.如果您的系统中有4个,那么使用全部4个可以显着提高整体吞吐量.如果没有多个线程,您将只使用单个核心来处理数据.

What about the case of a single core machine. Does multi-threading a CPU bound operation ever make sense?

它可以,但通常只有当它不是纯粹的CPU绑定时.如果您的例程完全受CPU限制,则每个核心通常需要不超过1个线程.但是,如果算法的某些部分具有其他特征,并受其他事物的约束,则该部分有时可以从整个例程线程中受益.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读