Forgot the versioninfo() julia> versioninfo() Julia Version 0.3.0-prerelease+2967 Commit b90f41e* (2014-05-09 15:35 UTC) Platform Info: System: Linux (x86_64-redhat-linux) CPU: Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz WORD_SIZE: 64 BLAS: libmkl_rt LAPACK: libmkl_rt LIBM: libopenlibm
On Monday, 19 May 2014 13:31:41 UTC-4, Gustavo Camilo wrote: > > Hi all, > > I've run across a memory problem that I want to know if I'm doing wrong > before I open an issue: > > In the function I optimize I run a large procedure that calls C code > repeatedly and I end up having a huge (40^5 Float64) matrix, which I want > to be able to use in a function I pmap, so I run this code to compute and > then copy into a shared array: > > > capitalsRaw = findZeroDividendsInC(privModel) > capitals = > SharedArray(Float64,(length(privModel.vW),3,length(privModel.vK),length(privModel.vQ), > length(privModel.vQ),length(privModel.vQ)),init=false,pids=workers()); > copy!(capitals,capitalsRaw) > > I do some work with this, and then, since my memory usage was increasing, > I release these arrays like it says in the Performance section of the > manual: > > > capitals = 0 > capitalsRaw = 0 > gc() > > > However, after the function has been called a bunch of times: > > exception on > From worker 17: System max size of single shmem segment(MB) : > 65536 > From worker 17: System max size of all shmem segments(MB) : 16777216 > From worker 17: Requested size(MB) : 1221 > From worker 17: Please ensure requested size is within system limits. > From worker 17: If not, increase system limits and try again. > ERROR: memory mapping failed: Cannot allocate memory > in systemerror at error.jl:39 > in mmap at mmap.jl:32 > in mmap_array at mmap.jl:107 > in shm_mmap_array at sharedarray.jl:357 > in anonymous at sharedarray.jl:59 > in anonymous at multi.jl:840 > in run_work_thunk at multi.jl:613 > in run_work_thunk at multi.jl:622 > in anonymous at task.jl:6 > > > Shouldn't releasing the shared arrays by setting them to zero and calling > gc() have cleaned up my usage? I don't think there is any other leak in the > code, and the error is from the shared memory array allocator always, not > for any other part of the code. > > Thanks for any help! > Gustavo >
