Date: Sat, 9 Mar 2013 16:18:23 -0800 From: Mehmet Erol Sanliturk <m.e.sanliturk@gmail.com> To: mexas@bristol.ac.uk Cc: freebsd-questions@freebsd.org Subject: Re: how to forbid a process to use swap? Message-ID: <CAOgwaMtBN%2BLxA5k0zQTbjdM%2BjmWuNT58UYp5eX7cbqPnFbhKfA@mail.gmail.com> In-Reply-To: <201303092355.r29NtRX4015510@mech-cluster241.men.bris.ac.uk> References: <201303092355.r29NtRX4015510@mech-cluster241.men.bris.ac.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Mar 9, 2013 at 3:55 PM, Anton Shterenlikht <mexas@bristol.ac.uk>wrote:
> I run a program that uses large arrays.
> I don't want it to use swap, because it's
> too slow. I want the program to fail when
> there's not enough RAM, rather than using
> swap. How to do this?
>
> Is it something to do with these kernel
> variables:
>
> kern.dfldsiz: 34359738368
> kern.dflssiz: 8388608
>
> kern.maxdsiz: 34359738368
> kern.maxssiz: 536870912
> kern.maxtsiz: 134217728
>
> Many thanks
>
> Anton
>
If you have program source , you may do the following :
Define a constant : Maximum_Allocatable_Memory = ?
Define a variable : Total_Allocated_Memory = 0
Before allocating a memory of size M ,
check whether Total_Allocated_Memory + M < Maximum_Allocatable_Memory
If yes : Allocate memory ;
Add M to Total_Allocated_Memory .
If no :
Return an error and gracefully stop your program instead of a crash which
will loose data .
Thank you very much .
Mehmet Erol Sanliturk
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOgwaMtBN%2BLxA5k0zQTbjdM%2BjmWuNT58UYp5eX7cbqPnFbhKfA>
