栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

自动并行化

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

自动并行化

在一般情况下是否可以知道一段代码是否可以并行化并不重要,因为即使您的算法无法检测到所有可以并行化的情况,也可能可以检测到其中的一些情况。

这并不意味着它将有用。考虑以下:

  1. 首先,要在编译时执行此操作,必须检查您可能要并行化的构造内部可能到达的所有代码路径。除了简单的计算之外,这对于任何其他事情可能都是棘手的。
  2. 其次,您必须以某种方式决定什么是可并行化的,什么不是并行化的。例如,您不能轻易破坏将同一状态修改为多个线程的循环。这可能是一项非常艰巨的任务,并且在许多情况下,您最终可能不确定-两个变量实际上可能引用同一个对象。
  3. 即使您可以实现此目标,也最终会使用户感到困惑。很难解释为什么他的代码不可并行化以及应如何更改。

我认为,如果要使用Java实现此功能,则需要将其更多地编写为库,并让用户决定要并行化的内容(库功能和注释?大声思考)。功能语言更适合于此。

琐事:在并行编程过程中,我们必须检查代码并确定代码是否可并行化。我不记得具体细节(有关“至多一次”资产?有人来填补我的心吗?),但是故事的寓意是,即使是看似琐碎的案件,这也极其困难。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/497848.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号