首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异构任务并行化的局限性

异构任务并行化的局限性
EN

Stack Overflow用户
提问于 2015-10-15 08:11:28
回答 1查看 81关注 0票数 2

我在实践中读到了Java并发,有一段内容如下:-

在6.3.4限制下并行化异构任务 在多个工作人员之间划分异构任务的另一个问题是,这些任务可能有不同的大小。如果你在两个工人之间把任务A和B分开,但是A的时间是B的10倍,你只会把整个过程加快9%。最后,在多个工作人员之间划分一个任务总是需要一定数量的协调开销;为了使该分工值得,这种开销必须通过并行性带来的生产率提高来弥补。

现在,如果您通过大胆的部分,它是正确的说法,工人线程的协调开销必须超过性能改善,我实现使用并行线程?

有人能帮我理解一下吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-15 08:25:48

不,黑体字很大程度上改变了句子的意思:

最后,在多个工作人员之间划分任务总是需要一定数量的协调开销;为了使分工值得,这种开销必须是,而不是由于并行性而通过生产力的提高来补偿

如果这仅仅是“必须超过生产力的提高……”那你就对了。上面的意思是,在工作线程之间划分任务所导致的性能损失(开销)必须是而不是,而不是通过这样做所获得的性能提高。

例如,如果您的开销为10秒,而您的性能增益仅为5秒,那么并行化操作实际上降低了您的整体性能。如果您的开销为10秒,但性能增益为50秒,那么您的总体执行时间将减少40秒(即改进)。

另一种说法是"...this开销必须被并行性带来的生产率提高所抵消“。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33143229

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档