是否有一种简便的方法可以在Julia中获得map / pmap的“状态”?
如果我有一个数组a = [1:10],我想:
1:枚举数组并使用if-conditional添加打印命令
((index,value) -> 5*value ......, enumerate(a)
以及“ .......”所在的位置,将有一种方法可以将匿名函数“链接”到类似
"5*value and then print index/length(a) if index%200 == 0"
2:知道是否已经存在用于此目的的选项,因为pmap用于并行任务,通常用于大型进程,因此它已经存在吗?
另外,是否有一种方法可以使匿名函数一个接一个地做两件“分开的”事情?
例
如果我有
a = [1:1000]
function f(n) #something that takes a huge ammount of time
end
然后我执行
map(x -> f(x), a)
REPL将打印状态
"0.1 completed"
.
.
.
"0.9 completed"
解
Chris Rackauckas answer
有点奇怪,默认情况下ProgressMeter软件包不包含此文件
Pkg.add("ProgressMeter")
Pkg.clone("https://github.com/slundberg/PmapProgressMeter.jl")
@everywhere using ProgressMeter
@everywhere using PmapProgressmeter
pmap(x->begin sleep(1); x end, Progress(10), 1:10)
PmapProgressMeter在github上
最佳答案
ProgressMeter.jl有一个pmap分支。
您也可以使Juno进度栏在pmap中起作用。这种方式使用的是未记录的东西,因此您应该在Gitter中询问是否需要更多信息,因为发布此公开信息只会使人们感到困惑,如果它/何时更改。