Exploiting parallelism in automatic differentiation

Exploiting parallelism in automatic differentiation
复制标题

在自动微分中利用并行性

DOI:
--
复制
发表时间:
1991
期刊:
International Conference on Supercomputing
影响因子:
--
通讯作者:
D. Juedes
D. Juedes
中科院分区:
--
文献类型:
--
作者:
C. Bischof;A. Griewank;D. Juedes

文献摘要

被引文献

相似文献

用于解决许多科学计算问题的数值方法需要计算函数f的一阶或二阶导数:R{sup n} {yield} R{sup m}。我们提出了一种方法,给定一个用于计算f(x)的串行C程序,以完全自动的方式导出f及其导数计算的并行执行时间表。这是通过在c++中重载f(x)的计算来实现的,以获得要执行的计算的跟踪,然后将该跟踪转换为f(x)计算的数据流图。除了计算f(x)之外,这个图还允许我们通过重复使用链式法则精确而廉价地计算f的导数。并行性以两种方式被利用:导数矩阵的行或列可以通过通过计算图的独立通道来计算,并且该计算图的处理中的并行性可以通过并发处理独立子图来利用。我们给出的实验结果表明,使用图形解释器方法可以在共享内存机器上获得良好的性能。然后,我们提出了一些目前正在开发的用于调节计算粒度的想法,以及更多»允许派生用于f及其导数的并行计算的编译程序,使用PCN(并行组合符号)并行语言环境。参28。, 5个无花果。«少
The numerical methods employed in the solution of many scientific computing problems require the computation of first or second order derivatives of a function f:R{sup n} {yields} R{sup m}. We present an approach that, given a serial C program for the computation of f(x), derives a parallel execution schedule for the computation of f and its derivatives in a completely automatic fashion. This is achieved by overloading the computation of f(x) in C++ to obtain a trace of the computations to be performed and then transforming this trace into a data flow graph for the computation of f(x). In addition to the computation f(x), this graph also allows us to exactly and inexpensively compute derivates of f by the repeated use of the chain rule. Parallelism is exploited in two ways: Rows or Columns of derivative matrices can be computed by independent passes through the computational graph, and parallelism within the processing of this computational graph can be exploited by processing independent subgraphs concurrently. We present experimental results that show that good performance on shared-memory machines can be obtained by using a graph interpreter approach. We then present some ideas that are currently under development for regulating computational granularity, andmore » to allow for the derivation of a compiled program for the parallel computation of f and its derivatives, using the PCN (Parallel Composition Notation) parallel language environment. 28 refs., 5 figs.« less