2001-02-20 11:04:29

by Michal Vitecek

[permalink] [raw]
Subject: 2.4: maximum process size on i386?

hello list,

i apologize if this is way off-topic but noone i asked in my
whereabounds would help: what is the maximum task size for 2.4.x on a
i386 box and how do i change it (if possible)?
i have processes that have to be really over 1gb (database engines) but
unfortnately, when one reaches over 900mb kswapd starts eating 50+% of 1
cpu and the whole thing gets slower.
so i tried to decrease __PAGE_OFFSET in include/asm-i386/page.h to
0x80000000 which as i learned should increase the task limit to ~2gb, but
the kernel _won't even boot_ (halts right after lilo loads it, no output
is written).
the machine is 8xp3 xeon, 4gb ram, kernel 2.4.1-ac10, CONFIG_HIGHMEM
and CONFIG_HIGHMEM4G are set.

thank you for any help on this,
--
Michal Vitecek


------------------------------ na IRC -------------------------------------
BillGates [bgates@http://www.microsoft.com] has joined #LINUX
...
mode/#linux [+b BillGates!*@*] by DoDad
BillGates was kicked off #linux by DoDad (banned: We see enough of Bill
Gates already.)



2001-02-20 19:07:39

by Eric W. Biederman

[permalink] [raw]
Subject: Re: 2.4: maximum process size on i386?

Michal Vitecek <[email protected]> writes:

> hello list,
>
> i apologize if this is way off-topic but noone i asked in my
> whereabounds would help: what is the maximum task size for 2.4.x on a
> i386 box and how do i change it (if possible)?
3 gigabytes of virtual address space.

> i have processes that have to be really over 1gb (database engines) but
> unfortnately, when one reaches over 900mb kswapd starts eating 50+% of 1
> cpu and the whole thing gets slower.
You don't have enough ram?

> so i tried to decrease __PAGE_OFFSET in include/asm-i386/page.h to
> 0x80000000 which as i learned should increase the task limit to ~2gb, but
> the kernel _won't even boot_ (halts right after lilo loads it, no output
> is written).

That decreases the task size. The implementation in 2.4. is totally
different from 2.2. and the process virtual address space size does
not change in 2.4.

> the machine is 8xp3 xeon, 4gb ram, kernel 2.4.1-ac10, CONFIG_HIGHMEM
> and CONFIG_HIGHMEM4G are set.

It looks like you might have a legitimate problem with your database
task, but you haven't provided enough information about it's behavior,
and it's expected behavior for anyone to diagnose what is going wrong
with your machine.


Eric

2001-02-21 10:10:56

by Michal Vitecek

[permalink] [raw]
Subject: Re: 2.4: maximum process size on i386?

hello and thank you for your answers.

"Albert D. Cahalan" <[email protected]> wrote:
>> i have processes that have to be really over 1gb (database engines) but
>> unfortnately, when one reaches over 900mb kswapd starts eating 50+% of 1
>> cpu and the whole thing gets slower.
>
>You didn't provide output from "ps" or "top". You can not be helped.
>Maybe output from "vmstat" or "sar" would be good too.

oh - sorry for that. here's the normal state of things (well almost, the
processes are in the R state most of the time). however as i wrote before,
when those processes get over ~900mb, kswapd starts paging with ~50+% cpu
usage. i lived under the impression memory shown in SHARE column is
'shared' so the processes summed up could actually be bigger than
physical memory (like 6x 1.5gb SIZE, 1.49gb RSS, 1.49gb SHARE for a 4gb
machine). am i living in the dark?

PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
16578 user 14 0 705M 704M 704M D 88.9 18.6 323:57 engine
16574 user 13 0 705M 705M 704M D 87.1 18.7 388:35 engine
16568 user 12 0 705M 705M 705M D 85.8 18.7 439:38 engine
16576 user 14 0 705M 705M 705M R 83.3 18.7 364:51 engine
16575 user 16 0 704M 704M 704M R 82.4 18.6 362:39 engine
16577 user 12 0 705M 705M 705M R 78.0 18.7 332:01 engine
3 root 9 0 0 0 0 SW 11.9 0.0 133:37 kswapd

also, ipcs claims there's 812593152 bytes (yes, that's 774mb, when i
configure the engines to eat more memory ipcs shows for example 1+gb of
shared memory allocated). how can this be possible? overcommit_memory is
set to 0.

thank you for your help in advance,
--
Michal Vitecek


------------------------------ na IRC -------------------------------------
BillGates [bgates@http://www.microsoft.com] has joined #LINUX
...
mode/#linux [+b BillGates!*@*] by DoDad
BillGates was kicked off #linux by DoDad (banned: We see enough of Bill
Gates already.)