How do I run K-3D with limits on both Memory and Processor usage.

View: New views
3 Messages — Rating Filter:   Alert me  

How do I run K-3D with limits on both Memory and Processor usage.

by Daniel Scott Matthews :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I have a quad core system with 4GB RAM running a server kernel yet
there are occasional bugs with K-3D that lock up the system completely
and I suspect it is due to a memory leak that is grabbing 100% of the
resources. I also have 32GB of swap in a fast RAID configuration but
that just lets K-3D gobble up even more memory. :-)

How can I run the application so that it is limited to 2GB of RAM (no
swap at all) and only 2 cores, so that I can switch to the debugger
and halt the application in a way that will let be know what part of
the code was so greedy?

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
K3d-development mailing list
K3d-development@...
https://lists.sourceforge.net/lists/listinfo/k3d-development

Re: How do I run K-3D with limits on both Memory and Processor usage.

by Timothy M. Shead :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Daniel Scott Matthews wrote:

> I have a quad core system with 4GB RAM running a server kernel yet
> there are occasional bugs with K-3D that lock up the system completely
> and I suspect it is due to a memory leak that is grabbing 100% of the
> resources. I also have 32GB of swap in a fast RAID configuration but
> that just lets K-3D gobble up even more memory. :-)
>
> How can I run the application so that it is limited to 2GB of RAM (no
> swap at all) and only 2 cores, so that I can switch to the debugger
> and halt the application in a way that will let be know what part of
> the code was so greedy?
As long as K3D_BUILD_INOTIFY_MODULE,
K3D_BUILD_NGUI_SPACE_NAVIGATOR_MODULE, and K3D_ENABLE_PARALLEL are
"OFF", there shouldn't be any multi-threaded code running at all.

Take a look at the documentation for "ulimit" to see how you can limit
the time, memory, files, and threads that a process can use.

Cheers,
Tim

[tshead.vcf]

begin:vcard
fn:Timothy Shead
n:Shead;Timothy
org:www.k-3d.org
email;internet:tshead@...
title:Founder
x-mozilla-html:FALSE
version:2.1
end:vcard



------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
K3d-development mailing list
K3d-development@...
https://lists.sourceforge.net/lists/listinfo/k3d-development

Re: How do I run K-3D with limits on both Memory and Processor usage.

by Daniel Scott Matthews :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Nov 2, 2009 at 9:28 AM, Timothy M. Shead <tshead@...> wrote:

> Daniel Scott Matthews wrote:
>>
>> I have a quad core system with 4GB RAM running a server kernel yet
>> there are occasional bugs with K-3D that lock up the system completely
>> and I suspect it is due to a memory leak that is grabbing 100% of the
>> resources. I also have 32GB of swap in a fast RAID configuration but
>> that just lets K-3D gobble up even more memory. :-)
>>
>> How can I run the application so that it is limited to 2GB of RAM (no
>> swap at all) and only 2 cores, so that I can switch to the debugger
>> and halt the application in a way that will let be know what part of
>> the code was so greedy?
>
> As long as K3D_BUILD_INOTIFY_MODULE, K3D_BUILD_NGUI_SPACE_NAVIGATOR_MODULE,
> and K3D_ENABLE_PARALLEL are "OFF", there shouldn't be any multi-threaded
> code running at all.
>
> Take a look at the documentation for "ulimit" to see how you can limit the
> time, memory, files, and threads that a process can use.
>
That did the trick, it looks like the issue is triggered by the
3DSMeshReader but is in the SDK, and this is on a file that did load
OK in the past! I even hand edited the .k3d file so that the .3ds file
was in the same directory to reduce complications, no luck.

xterm &

ulimit -m 2000000 -v 1000000
make run-gdb/fast
run

...
 DEBUG: Triggering event for /home/daniel/projects/k3d_artwork/COW_L.3DS
 INFO: Loading /home/daniel/projects/k3d_artwork/COW_L.3DS using 3DSMeshReader

Program received signal SIGSEGV, Segmentation fault.
0x00002aaaab49e944 in k3d::selection::operator<< (Stream=Cannot access
memory at address 0x7fffe9264ff8
) at /home/daniel/projects/k3d/k3dsdk/selection.cpp:42
42      {
(gdb) bt
#0  0x00002aaaab49e944 in k3d::selection::operator<< (Stream=Cannot
access memory at address 0x7fffe9264ff8
) at /home/daniel/projects/k3d/k3dsdk/selection.cpp:42
#1  0x00002aaaab49ead0 in k3d::selection::operator<< (Stream=...,
RHS=@0x7fffffffa6cc) at
/home/daniel/projects/k3d/k3dsdk/selection.cpp:88
#2  0x00002aaaab49ead0 in k3d::selection::operator<< (Stream=...,
RHS=@0x7fffffffa6cc) at
/home/daniel/projects/k3d/k3dsdk/selection.cpp:88
#3  0x00002aaaab49ead0 in k3d::selection::operator<< (Stream=...,
RHS=@0x7fffffffa6cc) at
/home/daniel/projects/k3d/k3dsdk/selection.cpp:88
#4  0x00002aaaab49ead0 in k3d::selection::operator<< (Stream=...,
RHS=@0x7fffffffa6cc) at
/home/daniel/projects/k3d/k3dsdk/selection.cpp:88
#5  0x00002aaaab49ead0 in k3d::selection::operator<< (Stream=...,
RHS=@0x7fffffffa6cc) at
/home/daniel/projects/k3d/k3dsdk/selection.cpp:88


...
ad infinitum

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
K3d-development mailing list
K3d-development@...
https://lists.sourceforge.net/lists/listinfo/k3d-development