Questions tagged [parallel-processing]

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.

Filter by
Sorted by
Tagged with
0 投票
5 回答
27856 浏览

R中随机森林的并行执行

我在 R 中并行运行随机森林

并行执行(耗时 73 秒)

顺序执行(耗时 82 秒)

在并行执行中,树的生成非常快,例如 3-7 秒,但其余时间用于合并结果(合并选项)。因此,运行并行执行的唯一价值是树的数量非常多。有什么办法可以调整“组合”选项以避免在每个节点上进行任何我不需要的计算并使其更快

PS。以上只是数据的一个例子。实际上,对于大约 100 次观察,我有大约 10 万个特征。

0 投票
1 回答
4309 浏览

使用 MPI_Scan 实现简单的前缀求和

我打算在这个夏天掌握 MPI。我开始阅读 Peter Pacheco 的“An Introduction to Parallel Programming”,并解决了它的练习。在其中一个 MPI 练习中,他要求使用 MPI_Scan 实现简单的前缀求和,但我无法使用 MPI_Scan 实现它。我通过使用 MPI_Scatter 和 MPI_Gather 找到了解决方案。请帮我找到 MPI_Scan 的答案。

我希望结果中有前缀总和,但由于某种原因它不起作用。

0 投票
3 回答
4226 浏览

OpenMP 并行 for 循环显示几乎没有性能提升

我正在学习如何在 C 中使用 OpenMP,作为 HelloWorld 练习,我正在编写一个程序来计算素数。然后我将其并行化如下:

gcc -g -Wall -fopenmp -o primes primes.c -lm我使用(-lm对于math.h我正在使用的函数)编译此代码。然后我在一个上运行这段代码Intel® Core™2 Duo CPU E8400 @ 3.00GHz × 2,正如预期的那样,性能比串行程序要好。

但是,当我尝试在功能更强大的机器上运行它时,问题就来了。(我也尝试手动设置要使用的线程数num_threads,但这并没有改变任何东西。)计算所有素数10 000 000给我以下时间(使用time):

8核机:

双核机:

这种模式继续计数更多的素数,具有更多内核的机器显示出轻微的性能提升,但没有我预期的那么多可用内核。(我希望多 4 倍的内核意味着几乎少 4 倍的运行时间?)

计数质数高达50 000 000

8核机:

双核机:

如果有人能为我澄清这一点,将不胜感激。

编辑

这是我的主要检查功能。

0 投票
1 回答
1630 浏览

BSP 和 MPI 有什么区别?

BSP 和 MPI 有什么区别?

我知道Pregel 的图计算框架是基于 BSP 的。为什么他们不直接使用 MPI 或者基于 MPI 开发框架?

0 投票
1 回答
1054 浏览

Jenkins:一个共享资源的多个工作

所以我有一个动态数量的作业,它们都只有一个构建步骤。在其执行的某个(“随机”)点,每个作业都运行一些在给定时间不能有多个实例的应用程序。一般来说,我确实希望并行运行这些作业。但是当两个或多个作业试图同时运行上述应用程序时,我仍然需要一些同步。

我想使用Locks and Latches 插件,但我看不出这对我的情况有什么帮助。

想法将受到欢迎!

0 投票
1 回答
787 浏览

打开 MP 导致内存泄漏

我正在尝试使用这种方法在 C++11 中并行化动态编程算法:

因此,我的并行化版本将类似于:

然而,这导致 valgrind 抱怨内存泄漏。我是否误解了您应该使用 openMP 的方式,还是发生了什么可疑的事情?

0 投票
7 回答
10429 浏览

为什么 MPI 被认为比共享内存更难,而 Erlang 被认为更容易,当它们都是消息传递时?

如今,人们对 Erlang 作为一种在多核上编写并行程序的语言很感兴趣。我听说有人争辩说,Erlang 的消息传递模型比主要的共享内存模型(如线程)更容易编程。

相反,在高性能计算社区中,占主导地位的并行编程模型是 MPI,它也实现了消息传递模型。但在 HPC 世界中,这种消息传递模型通常被认为很难编程,人们认为 OpenMP 或 UPC 等共享内存模型更容易编程。

有谁知道为什么在 IT 和 HPC 世界中对消息传递和共享内存的理解存在如此大的差异?是不是因为 Erlang 和 MPI 在实现消息传递方面的一些根本差异,使得 Erlang 风格的消息传递比 MPI 更容易?还是有其他原因?

0 投票
3 回答
1300 浏览

Array.Parallel 的“MaxDegreeOfParallelism”?

是否可以为 Array.Parallel 模块设置“MaxDegreeOfParallelism”(即要使用的最大线程数),因为它在后台使用Parallel.For?

0 投票
1 回答
310 浏览

使用 UNIX 系统调用固定并行进程

亲爱的同学们,我知道如何通过创建 8 个独立进程来创建并行进程,接下来我要寻找的是如何

i-Run 8 个副本与处理器固定同时运行(每个副本都是自己的处理器内核)

ii-与处理器固定同时运行 16 个副本(每个内核 2 个副本)

iii-按照“iii”同时运行 8 个副本,处理器固定,并在代码中的特定函数调用后将处理器内核翻转到最远的内核。

我的 cpu 当前配置是 8 核。它运行 Fedora 操作系统。我事先不知道进程ID。

请建议。

提前致谢。

0 投票
1 回答
4656 浏览

NUnit(和 MSTest)如何处理改变静态/共享变量的测试?

我有一些代码使用共享网关模式来实现控制容器的反转。我有数百个 NUnit 单元测试来练习使用这个 IOC 的代码。它们都可以工作(在我的机器上!)但我担心这些测试在负载下可能会失败。我似乎记得 NUnit(和 MSTest)尝试在多个线程上并行运行测试(这肯定会触发静态/共享网关上的竞争条件),但我找不到任何说明实际发生情况的文档。我的经验是 NUnit 似乎是按顺序运行测试的。我的问题是,NUnit(或 MSTest)是否曾经并行运行单元测试?如果有,在什么条件下?而且,我可以通过某种配置选项将其关闭吗?


15 30 50 per page
1
2 3 4 5
1498226