gpt4 book ai didi

concurrency - 如何告诉多核/多 CPU 机器并行处理循环中的函数调用?

转载 作者:行者123 更新时间:2023-12-04 10:33:24 24 4
gpt4 key购买 nike

我目前正在设计一个具有一个模块的应用程序,该模块将从数据库中加载大量数据,并根据情况通过各种计算将其减少到一个更小的集合。

许多更密集的操作具有确定性,并且适合并行处理。

如果我有一个循环遍历从数据库到达的大量数据 block ,并且每个数据 block 都调用一个没有副作用的确定性函数,我将如何制作它以便程序不等待函数返回而是设置下一个电话,所以他们可以并行处理?一种天真的方法来证明这个原则现在对我有用。

我已经阅读了 Google 的 MapReduce 论文,虽然我可以在很多地方使用总体原理,但我现在不会针对大型集群,而是将其作为 1.0 版的单个多核或多 CPU 机器.所以目前,我不确定我是否可以真正使用这个库,或者我必须自己推出一个简化的基本版本。

我处于设计过程的早期阶段,到目前为止,我的目标是 C-something(对于速度关键位)和 Python(对于生产力关键位)作为我的语言。如果有令人信服的理由,我可能会转换,但到目前为止我对我的选择感到满意。

请注意,我知道从数据库中检索下一个 block 可能比处理当前 block 需要更长的时间,然后整个过程将受 I/O 限制。但是,我现在假设它不是,并且在实践中使用数据库集群或内存缓存或其他不受 I/O 限制的东西。

最佳答案

好吧,如果.net 是一个选项,他们已经为Parallel Computing 付出了很多努力。 .

关于concurrency - 如何告诉多核/多 CPU 机器并行处理循环中的函数调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com