I’m considering implementing a parallel fluid simulation code in Julia, either reimplementing my Fourier-Chebyshev http://www.channelflow.org code, or doing a simpler isotropic turbulence in a triply-periodic cube as a simpler test case.
But it’s not clear to me how to do it with Julia’s current parallel infrastructure. MPI.jl appears to be limited to julia-0.4 (https://github.com/JuliaParallel/MPI.jl), and this 2014 post says Julia does yet support distributed-memory FFTW calls (https://groups.google.com/forum/#!topic/julia-users/ww-57NucHKA).
I would actually like to leave MPI behind and do parallelism at a higher level with distributed arrays. and native Julia parallel constructs. But distributed memory FFTW is a must, including FFTW’s distributed-memory transpose functions.
Anyone out there with relevant Julia expertise and experience in this kind of distributed-memory scientific computation? Tips and pointers would be much appreciated. @stevengj?