在 Julia 中使用 pmap 时修复参数

Fixing arguments when using pmap in Julia

我在 Julia 中定义了一个函数 f(x, y, z),我想为 x 的许多值并行计算 f,保持 yz 固定。使用 pmap 的 "best practices" 方法是什么?

要是像pmap(f, x, y = 5, z = 8)就好了,这就是apply家族在R中处理固定参数的方式,但好像没那么简单那样。我设计了解决方案,但我发现它们不够优雅,而且我怀疑它们能否很好地概括我的目的。

一个很好的解决方案是使用 anonymous 函数,例如

g(y, z) = x -> f(x, y, z)

pmap(g(5, 8), x)

pmap(x -> f(x, 5, 8), x)

在 Julia 0.4 中,匿名函数有性能损失,但这将在 0.5 中消失。