问题标签 [parallel-for]
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.
c# - Parallel.For 中 StringBuilder 的线程安全
我创建了一个结构,比如说AStruct
,并覆盖它的ToString()
方法。然后我写了一个并行返回一些AStruct
并将它们放在一个列表中,这样我就可以使用 aStreamWriter
来输出它们,比如
问题是输出文件只打印了 AList 的 7/8 行,而 AList 实际上得到了所有 10 个元素。我想知道这是否与 StringBuilder 的线程安全有关。有人可以解释为什么不是所有的行都输出吗?
c++ - Intel TBB 并行循环线程 ID
如何确定 TBB 并行循环体中的线程 ID?
基本上我需要的是一个对象的每个线程副本,所以我认为我应该在数组中拥有那些由线程 ID 索引的副本。
我正在寻找这样做的便携式 TBB 方式,而不是操作系统本机服务。
matlab - parfor中的Matlab sim命令
我想在parfor
具有不同数据的许多内核上循环运行 Simulink 模型。但是,我使用时无法获得sim
结果,parfor
而仅使用 for 循环时可以获得结果。
它只是[t,u]
从中获取workspace1
,考虑一个传递函数n{1}/d{1}
,然后计算EqFracInt
到workspace2
。
我的代码有问题的部分是
我无法获得这些PGRs
值。您能否向我解释一下错误以及如何解决?
multithreading - C# 4 .NET 4.0 Parallel.For 长循环问题
我正在 c# 4、.NET 4.0 中测试一些并行化解决方案。
我有一些奇怪的结果,所以我想知道我是否以正确的方式做事。
这是我的代码的描述:
这段代码给了我这个结果:
计数方法5:299250
而不是300000
.
这是并行性的错误吗?
c++11 - 在顺序和并行 for 循环中“继续”的常用关键字
在顺序for
循环中,当前迭代可以通过调用continue
. 类似地,在Concurrency::parallel_for
循环中,当前迭代(即调用 lambda 函数的线程)可以用return
.
有时,我必须调试一个parallel_for
循环,使其成为顺序并忘记将其更改return
为 a continue
,因为在void
函数中,编译器不会抱怨。这会导致有时很难追踪的错误。
我想知道 Visual C++ 2013 是否提供任何机制来为两个循环使用相同的关键字/宏/…。这可能吗?
c# - Parallel.For 迭代中的不同线程亲和性
我需要一个并行 for 循环的迭代以使用 7 个内核(或远离 1 个内核),但另一个迭代使用 8 个(所有)内核并尝试以下代码:
这为两次迭代输出 255。因此,parallel.for 循环要么为它们使用单线程,要么一个设置也设置了其他迭代亲和力。另一个问题是,这是来自对延迟敏感的应用程序,所有这些关联设置都会增加 1 到 15 毫秒的延迟。
我必须明确使用线程吗?我应该只设置一次关联吗?
编辑:我尝试了线程版本,同样的事情发生了。即使有明确的两个线程,都将 255 写入控制台。现在看来这个命令是针对进程而不是线程的。
OpenCL 上下文在一次迭代中使用最大内核在 cpu 上执行内核。其他迭代使用 1-2 个内核来复制缓冲区并将命令发送到设备。当 cpu 被 opencl 使用时,它会使用所有的内核,并且设备无法获得足够的时间来复制缓冲区。设备裂变似乎比我想的解决这个问题更难。
c++ - 从 parallel_for 返回值的最佳方法是什么
我有简单的 parallel_for 循环和我插入到 concurrent_unordered_map 的每次迭代的结果。我看到插入使我的代码变慢了。那么将对从parallel_for返回到unordered_map的最佳方法是什么?我正在尝试使用 Critical_section,但速度要慢得多。我试图使用combinable,但我不知道如何使用map。
伪代码:
c# - Parallel.For() 更新项目的属性
假设我有一个需要更新的“不同”人员列表。我想使用 Parallel.For()
有问题的方法:
VS
当使用 Parallel.For() 枚举此列表并并行运行这些更新(即调用此方法)时,使用一个与另一个是否有任何潜在问题?
c++11 - 并行化rocksdb迭代器
我的迭代器代码:
迭代的顺序无关紧要,但打破循环很重要,所以我们不会迭代不需要的元素。我使用元素按有意义的顺序排序的事实来知道何时中断。callback
可能需要很长时间。
所以我想做的伪代码是
我尝试应用 concurrency::parallel_for_each,但似乎不适合rocksdb api。
你会如何建议实现并发迭代?
c++ - OpenMp For-Loop 并行化
我尝试使用 OpenMP 并行化以下代码。
但 SpeedUp 始终约为 1.0 (+- 0.05)。我尝试了所有可能的调度(自动、动态、静态和引导),不同的块大小,没有折叠和折叠(2)。运行时根本没有改变......
谁能解释我为什么或我的错在哪里?
可能是由于自动 for-loop 编译器并行化吗?
提前感谢您的任何建议/提示!
更新:
根据需要提供可验证的示例。
解决了:
愚蠢的错误......设置了/MP-Flag(使用多个进程构建)而不是/openmp。现在 SpeedUp 大约是 2.0 :)
对不起,谢谢大家的帮助!