Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Jan 2004 09:52:34 -0800
From:      Brooks Davis <brooks@one-eyed-alien.net>
To:        ml@fruitbat.demon.co.uk
Cc:        freebsd-amd64@freebsd.org
Subject:   Re: malloc() over 4Gb
Message-ID:  <20040126175234.GA28717@Odin.AC.HMC.Edu>
In-Reply-To: <E1AkkSR-000FNA-0Z@anchor-post-35.mail.demon.net>
References:  <E1AkkSR-000FNA-0Z@anchor-post-35.mail.demon.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--vtzGhvizbBRQ85DL
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Jan 25, 2004 at 01:37:47PM +0000, ml@fruitbat.demon.co.uk wrote:
>=20
> Hi. Could someone clarify whether or not it's possible to malloc()
> and mmap() chunks of memory > 4Gb in size using FreeBSD/AMD64 and
> that FreeBSD/AMD64 isn't susceptible to the 4Gb process boundary that
> 32-bit OSs are restricted by?

It works fine (just remember to set your malloc options to aj before
mallocing that much memory, it takes a loooong time if you done :-):

[9:52am] brooks@brimstone (~): uname -a
FreeBSD brimstone 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Tue Jan  6 13:18:20 P=
ST 2004     brooks@brimstone:/usr/obj/usr/p4/xname/sys/GENERIC  amd64
[9:52am] brooks@brimstone (~): ./a
a.out*    aeroauth*=20
[9:52am] brooks@brimstone (~): cat foo.c
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>

#define GB      (1024*1024*1024)

int
main (int argc, char **argv)
{
        void *foo;

        printf("Trying to malloc %zd bytes\n", (size_t)7*GB);
        foo =3D malloc((size_t)7*GB);
        if (foo !=3D NULL)
                printf("Success\n");
        else
                printf("failure\n");
}
[9:52am] brooks@brimstone (~): gcc -o foo foo.c
[9:52am] brooks@brimstone (~): ./foo=20
Trying to malloc 7516192768 bytes
Success
[9:52am] brooks@brimstone (~):=20

-- Brooks

--=20
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

--vtzGhvizbBRQ85DL
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFAFVPgXY6L6fI4GtQRAk6nAJwIfYpHrkkP6/u5/O59Asu1u6S5tQCfSCCP
iftnuUkE/TiN8sDMFIRk51I=
=bNFj
-----END PGP SIGNATURE-----

--vtzGhvizbBRQ85DL--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040126175234.GA28717>