c#-4.0 - Parallel For 对 ushort 数组求和(大数组 18M)

标签 c#-4.0 parallel-processing

我想使用并行处理来获取大型无符号短(16 位)值数组的数组统计信息。

ushort[] 数组 = 新 ushort[2560 * 3072];//x = 行(2560) y = 列(3072)

double avg = Parallel.For (0, array.Length, 这里有什么);

标准差和行平均值的标准差也是如此。

我有这些函数的普通 for 循环版本,与中值过滤器方法结合使用时它们花费的时间太长。

最终产品是尝试为数组获取中值过滤器。但第一步也很重要。因此,如果您拥有很棒的整个解决方案,但如果您也想为第一部分提供帮助,我们将不胜感激。

最佳答案

您尝试过 PLINQ 吗?

double average = array.AsParallel().Average(n => n);

我不确定使用大量 ushort 值时它的性能如何,但值得测试一下它是否满足您的需求。

关于c#-4.0 - Parallel For 对 ushort 数组求和(大数组 18M),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14886105/

相关文章:

xml - 如何下载xml文件中的xml内容

c# - 数据表行数限制

c# - 仅在 C# winforms 中的数据网格中单击鼠标后应用的属性

c++ - MS concurrency::parallel_for() 单次迭代的性能

.net - windows installer 3.1 和 4.5 的区别 创建 SetUP 项目时,选择哪个

c# - 是否使用静态类

scala - 对于 Scala 2.13,更新具有数百万次更新的 LongMap、HashMap 或 TrieMap 的最快方法是什么?

c++ - MPI突然停止在多个内核上工作

time - 在科学集群上使用并行处理时 $time 意味着什么?

r - 如何处理 foreach 循环 R 中的 API 错误?