Re: allocate more than 2 GB on IA32

From: Hartmut Manz (manz@intes.de)
Date: Thu Feb 20 2003 - 12:40:21 EST


On Tuesday 11 February 2003 17:11, Martin J. Bligh wrote:
> > i would like to allocate more than 2 GB of memory on an IA32
> > architecture.
> >
> > The machine is a dual XEON_DP with 3 GB of Ram and 4 GB of swap space.
> >
> > I have tried with the default SUSE 8.1 kernel as well as with a
> > 2.4.20-pre4aa1 Kernel compile by my own using these Options:
> >
> > CONFIG_HIGHMEM4G=y
> > CONFIG_HIGHMEM=y
> > CONFIG_1GB=y
> >
> > but I am only able to allocate 2 GB with a single malloc call.
> > I tought it should be possible to allocate up to 2.9 GB of memory to a
> > process, with this kernel settings.
>
> Well, assuming you had no user-space code or data, or a stack, or any
> shared libraries to fit into that space as well ;-)
>
> Try shifting TASK_UNMAPPED_BASE down from 1GB to 0.5GB - that should give
> you some more breathing room, though you'll never get to 2.9GB.
>
> M.

First of all I would like to say THANK YOU for your help.

I am now able to allocate up to ~3.2 GB of memory on a 4 GB Machine, even with
shared libraries.

This is what I have done.

1. I have activated the kernel option in Kernel 2.4.21pre4aa3
   CONFIG_05GB=y
  This gives the following:
    a: TASK_UNMAPPED_BASE is now 0xe000000 wich is 224 MB
    b: Upper Limit for User-Space memory is now at 3.5 GB
   So I have the potential to allocated up to 3360 MB of memory

2. I have exchanged malloc with anonymous mmap, since malloc
    was still only able to allocate about 2 GB.

-- 
-----------------------------------------------------------------------------
Hartmut Manz                                      WWW:    http://www.intes.de
INTES GmbH                                        Phone:  +49-711-78499-29
Schulze-Delitzsch-Str. 16                         Fax:    +49-711-78499-10
D-70565 Stuttgart                                 E-mail: manz@intes.de
   Ein Mensch sieht, was vor Augen ist; der Herr aber sieht das Herz an.
------------------------------------------------------- 1. Samuel 16, 7 -----

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Feb 23 2003 - 22:00:30 EST