I have been using the
@animate macro in the
Plots.jl package. I have noticed that the animation is always built using one thread. So for example, in the following toy example :
N=1000; anim = @animate for t in 1:N x = [ 0;cos(n)]; y = [ 0;sin(n) ]; plt = plot( x, y ) end gif( anim, "t.gif", fps=10);
The animation is created one frame at a time and put together. I have checked that it used only processor although 36 are available.
julia> Threads.nthreads() 36
Is it possible to parallelize this ? For example, if there are 4 threads, one could parallely compute the frames for n in the ranges 1:250, 251:500, 501:750 and 751:1000, and finally append them end to end.