From: Lorenzo B. <bot...@gm...> - 2009-06-06 14:05:30
|
I have a problem with OSX and I know that some of you are used to it. I can run a Navier-Stokes DG P2 code in parallel with more than two processes but in serial I get the following error ns-opt(2096) malloc: *** mmap(size=1644146688) failed (error code=12) *** error: can't allocate region *** set a breakpoint in malloc_error_break to debug [0]PETSC ERROR: --------------------- Error Message ------------------------------------ [0]PETSC ERROR: Out of memory. This could be due to allocating [0]PETSC ERROR: too large an object or bleeding by not properly [0]PETSC ERROR: destroying unneeded objects. [0]PETSC ERROR: Memory allocated 0 Memory used by process 0 [0]PETSC ERROR: Try running with -malloc_dump or -malloc_log for info. [0]PETSC ERROR: Memory requested 1644143684! [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: Petsc Release Version 3.0.0, Patch 5, Mon Apr 13 09:15:37 CDT 2009 [0]PETSC ERROR: See docs/changes/index.html for recent updates. [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting. [0]PETSC ERROR: See docs/index.html for manual pages. [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: ./ex4-opt on a darwin9.7 named ihabia-pro.local by ihabia Sat Jun 6 15:21:38 2009 [0]PETSC ERROR: Libraries linked from /Users/ihabia/src2/petsc-3.0.0-p5/darwin9.7.0-c-opt/lib [0]PETSC ERROR: Configure run at Sat May 30 15:21:07 2009 [0]PETSC ERROR: Configure options --with-debugging=0 --with-mpi=1 --download-hypre=1 --with-shared=0 [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: PetscMallocAlign() line 61 in src/sys/memory/mal.c [0]PETSC ERROR: MatSeqAIJSetPreallocation_SeqAIJ() line 2986 in src/mat/impls/aij/seq/aij.c [0]PETSC ERROR: MatCreateSeqAIJ() line 2863 in src/mat/impls/aij/seq/aij.c [0]PETSC ERROR: User provided function() line 145 in unknowndirectory/src/numerics/petsc_matrix.C application called MPI_Abort(comm=0x84000000, 1) - process 0[unset]: aborting job: application called MPI_Abort(comm=0x84000000, 1) - process 0 With two processes the memory usage is almost 2GB per process and I have 12 GB installed. If I try to run a P3 in parallel (4 processes is the max for my mac) I get the same error. With ulimit i get core file size (blocks, -c) 0 data seg size (kbytes, -d) 6144 file size (blocks, -f) unlimited max locked memory (kbytes, -l) unlimited max memory size (kbytes, -m) unlimited open files (-n) 256 pipe size (512 bytes, -p) 1 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 266 virtual memory (kbytes, -v) unlimited It seems that there isn't a process memory limit. Any idea? Thanks for help! Lorenzo |