Verify 4 GB Limit is overcome in 64 Bit Processor

We are moving from a 32 Bit PA-RISC processor to 64 Bit Itanium processor based System.
I am aware that 64 Bit processor allows for memory (RAM) addressibility beyond the 4 GB memory (RAM) limit imposed by a 32 bit processor

I have been asked to prove that the new systems are capable of addressing RAM beyond 4 GB

Is there any utility that I can use to prove this or UNIX command or script

Any input / help on this would be great!

Thanks in advance.

-Allan

Verify that you're running 64-bit executables and not 32-bit executables and you've verified that you have a 64-bit address space.

1 Like

Hi Corona688,

Thanks for responding.
Yes I am executing 64 bit executable.
But how do I verify that I am using a 64-but address space?
Is there a some script or a system command that can tell me this?
PS:- I am on a HP-UX Itanium machine

Cheers,

-Allan

If you can run a 64-bit executable, it must have a 64-bit address space. 64-bit executables cannot run in a 32-bit address space.

This might not be the same thing as being able to allocate 5 gigs of ram though, since there might be system policies in place or some such.

Do you have a C compiler on your machine?

Thanks Again.
Yes I do have a C Compiler on the machine.

#include <stdlib.h>
#include <string.h>

int main(int argc, char *argv[])
{
        // Allocate 5 gigs of address space
        void *mem=calloc(1024*5, 1024*1024);

        // Write to all this memory, will take a while
        memset(mem, 0, (size_t)(1024*5) * (size_t)(1024*1024));
}

What 4 Gigabytes memory limit? This is not Microsoft Windows NT.

There is a 2 Gigabyte file size addressing limit with 32-bit HP-UX Operating Systems. The theoretical 2 Gigabyte memory addressing limit in HP-UX was addressed by changing the page size such that the the maximum became a multiple of the page size. Watch the boot-up on a large memory 32-bit system (16 Gb) when it relocates memory. You should see the same on a 4 Gigabyte memory system.