ParallelSum

ParallelSum[expr,{i,imax}]

并行计算和 .

ParallelSum[expr,{i,imin,imax}]

i=i_(min) 开始.

ParallelSum[expr,{i,imin,imax,di}]

用步长 di.

ParallelSum[expr,{i,{i1,i2,}}]

用连续值 i_(1)i_(2).

ParallelSum[expr,{i,imin,imax},{j,jmin,jmax},]

并行计算多重和 .

更多信息和选项

  • ParallelSum 是一个并行的 Sum,在不同的内核和处理器之间自动分配部分加和.
  • ParallelSum 将给出和 Sum 相同的结果,除了计算过程中的副作用.
  • Parallelize[Sum[expr,iter,]] 等价于 ParallelSum[expr,iter,].
  • 对于不能并行化的 ParallelSum,用 Sum 执行计算.
  • 可以给出下列选项:
  • Method Automatic并行化粒度
    DistributedContexts $DistributedContexts用于将符号分配到并行计算的上下文
    ProgressReporting $ProgressReporting是否报告计算进度
  • Method 选项指定要使用的并行化方法. 可能的设置包括:
  • "CoarsestGrained"将计算分成与可用内核数量相同的段
    "FinestGrained"将计算分成最小的子单元
    "EvaluationsPerKernel"->e将计算分成每个内核最多 e
    "ItemsPerEvaluation"->m将计算分成每个内核最多 m 个子单元
    Automatic在总开销和负载平衡之间的折中
  • Method->"CoarsestGrained" 适用于涉及多个子单元的计算,所有子单元采用相同的时间计算. 将总开销降到最低,不提供任何负载均衡.
  • Method->"FinestGrained" 适用于少量子单元的计算,子单元采用不同的时间计算. 它提高总开销,但最大化了负载均衡.
  • DistributedContexts 选项指定出现在 expr 中的哪些符号在计算之前将其定义自动分发到所有可用内核.
  • 设置 $DistributedContexts:=$Context,默认值为 DistributedContexts:>$DistributedContexts,该值分发当前上下文中所有符号的定义,但不分发程序包中的符号定义.
  • ProgressReporting 选项指定是否报告并行计算的进度.
  • 默认值为 ProgressReporting:>$ProgressReporting.

范例

打开所有单元关闭所有单元

基本范例  (1)

耗时更长的计算显示有关其进度和估计完成时间的信息:

选项  (9)

Method  (2)

具有很大差异的运行时间的计算应该被尽可能精细地并行化处理:

大量简单计算应该被分配为尽可能少的批次:

DistributedContexts  (5)

默认情况下,当前上下文的定义会自动分配:

没有分配任何函数的定义:

分配出现在并行计算中的所有上下文中的符号定义:

只分配给定上下文的定义:

恢复 DistributedContexts 选项的值为默认值:

ProgressReporting  (2)

不显示临时进度报告:

即使默认设置 $ProgressReporting 可能为 False 也显示临时进度报告:

可能存在的问题  (2)

具有平凡项的和式可能使用并行比串行更慢:

把计算分成尽可能少的块可以减少并行开销:

Sum 可以使用比所有项的迭代求和更快的符号方法:

Wolfram Research (2008),ParallelSum,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ParallelSum.html (更新于 2021 年).

文本

Wolfram Research (2008),ParallelSum,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ParallelSum.html (更新于 2021 年).

CMS

Wolfram 语言. 2008. "ParallelSum." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2021. https://reference.wolfram.com/language/ref/ParallelSum.html.

APA

Wolfram 语言. (2008). ParallelSum. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/ParallelSum.html 年

BibTeX

@misc{reference.wolfram_2024_parallelsum, author="Wolfram Research", title="{ParallelSum}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/ParallelSum.html}", note=[Accessed: 17-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_parallelsum, organization={Wolfram Research}, title={ParallelSum}, year={2021}, url={https://reference.wolfram.com/language/ref/ParallelSum.html}, note=[Accessed: 17-November-2024 ]}