问题标签 [embarrassingly-parallel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
240 浏览

gpu - GPU在令人尴尬的并行中的缺点

使用 GPU 进行令人尴尬的并行程序有什么缺点?

0 投票
0 回答
448 浏览

python - 通过python并行运行for循环

我有一个循环遍历 IP 地址列表并返回有关它们的一些信息的过程。简单的 for 循环效果很好,由于 Python 的全局解释器锁 (GIL),我的问题是大规模运行它。

我的目标是让这个函数并行运行并充分利用我的 4 个内核。这样,当我运行其中的 100K 时,我不会通过正常的 for 循环花费 24 小时。

在这里阅读其他答案后,尤其是这个答案,如何并行化一个简单的 Python 循环?,我决定使用joblib。当我通过它运行 10 条记录时(上面的示例),运行时间超过 10 分钟。这听起来不像工作正常。我知道我做错了什么或不理解。任何帮助是极大的赞赏!

正常的for循环可以正常工作!

传递给joblib以在所有内核上运行的函数!

通过 joblib 使用所有内核运行进程

0 投票
1 回答
189 浏览

slurm - SLURM 令人尴尬的并行提交占用太多资源

所以我有以下提交脚本:

我想要做的是使用从 1 到 512 的参数运行程序 P6 的 512 个实例,据我所知,上面的提交就是这样做的。然而,在检查 squeue 和 sacct 时,SLURM 似乎为每个任务分配了 512 个 CPU!

我做错了什么?

0 投票
4 回答
1538 浏览

python - 在 python 中为多个参数并行运行单个函数的最快方法

假设我有一个函数processing。我想为多个参数并行运行相同的函数多次,而不是一个接一个地依次运行。

例如,如果我运行delineation(r'/home/test/image_1.tif')thendelineation(r'/home/test/image_2.tif')和 then delineation(r'/home/test/image_3.tif'),如上面的代码所示,它将一个接一个地依次运行,如果一个函数运行需要 5 分钟,那么运行这三个函数将需要 5x3=15 分钟。因此,我想知道我是否可以并行/尴尬地并行运行这三个,以便只需 5 分钟即可为所有三个不同参数执行该函数。

帮助我以最快的方式完成这项工作。该脚本应该能够利用默认情况下可用的所有资源/CPU/ram 来执行此任务。

0 投票
1 回答
31 浏览

python - 使用 dask 进行分块的令人尴尬的并行工作负载

我正在尝试将 dask 用于令人尴尬的并行工作负载。

例如,将两个大型数组逐个元素相加:

我发现 [1] 似乎回答了这个问题,但是,我的函数并不昂贵,并且可以一次计算任意数量的数据。

我真的很想对数据进行分块以避免OOM,而 dask.array 似乎可以做到这一点。func我设法通过包装让它“工作” da.as_gufunc(signature="(),()->()", output_dtypes=float, vectorize=True)- 但是这会按元素应用函数,我需要它在块上。

我也尝试过dask.bag.from_sequence- 但这会将数组转换为列表x1x2这会导致 OOM(或可怕的性能)。

我最接近我想要的是:

但是我需要d1 + d2 + 1用我的功能替换。

[1] https://examples.dask.org/applications/embarrassingly-parallel.html