From: Alexander Brugh (abrugh_at_lanl_dot_gov)
Date: Tue May 15 2007 - 16:33:25 PDT
Dan and Jason, Thanks for the sanity checks. I sorta figured I was doing something wrong, and it turns out I was. I would have needed a couple hundred gigs for what i was asking for... once I fixed that, I only need 1GB, which is about what I expected. I have some arrays of structs, and each struct points at a handful of other structs, I was using the array size value for the dependency-array size, so I had 1 million elements in the array each trying to get 1 million pointers. Thanks again, Alex Jason Duell wrote: > On Tue, May 15, 2007 at 01:53:42PM -0700, Dan Bonachea wrote: > >> Hi Alex - >> >> local and global shared memory are allocated from the same area which hosts >> two heaps that grow towards each other. Therefore specifying >> --shared-heap=600 implies a limit where: >> global heap sz on thread 0 + max local heap of any thread <= 600 >> The message below indicates your program is using 578 MB of local heap and >> 15 MB of global (already nearly 600 total), and then asking for at least 8 >> MB more - so the limit of 600 is not enough for your program's memory >> requirements. >> >> hope this helps.. >> > > Yes, try with '-shared-heap=1GB' or '2GB', etc (if the runtime can't allocated > that much on your machine, it will just get as much as it can, and emit a > warning message saying how much it actually got). > >