32 bit vs 64 bit computer ?

Jakob Østergaard jakob at unthought.net
Fri Nov 23 00:57:33 PST 2001

On Fri, Nov 23, 2001 at 04:22:35PM +0900, Yoon Jae Ho wrote:
> I want to know the exact definition of the 32 bit computer (PC ) vs 64 bit computer.
> and Why we can't make 128 bit computer for long time ?

*Usually* these bits refer to the addressing capability of the machine.

A 32-bit machine can address a 32-bit memory space, meaning, 2^32 bytes,
or 4 GB.

Now, current 32-bit Intel machines actually contain some hacks so that
the CPU can address more than 32-bits.  One process can still only address
a 32-bit space though (yes, I know you can do windowing/mmap hacks to
sort-of address more, but the process will still live in one 32-bit
address space).

A 64-bit machine can address a 64-bit memory space. I suppose that's
around 16 exabytes or something like that.  It's the rediculous amount
of ~ 10^19 bytes.

Now, a 128 bit machine would address around 10^38 bytes.

There's something like 10^86 elementary particles in the known parts of the
universe - building a machine with an actual 128 bit physical address space is
going to be challenging with today's technology, to say the least  :)

> I don't know how much(the maximum number) the 32 bit computer vs 64 bit makes exact calculation without error.

If you use floating point, you usually use "float" or "double" types.
Those have been 32-bits (float) and 64-bits (double) on all 32-bit
and 64-bit systems regardless, forever.  It's an IEEE standard.

> and With different architecture PCs - for example AMD, Intel, MAC cpu , Is it possible to communate the calculatiton results each other ?

Communication happens with a protocol.

If you protocol is standardised among platforms, you can.  If you didn't
make your protocol to work between different machines, you can't.

> and With same os - for example LINUX, Is it possble to make one beowulf Using Alpha(64 bit) & Intel(32 bit) Computers ?

Sure, it's possible.

Now, many parallel application will either use a protocol that is not
"safe" between different architectures, or the application will depend
on special numerical properties of specific architectures.  Mixing 
architectures can give some headaches there.  But then again, it would
be trivial to make sure that parallel jobs only execute on one particular

Whether it's desirable to mix architectures depends entirely on what
kind of applications you are planning to run.   Diversity can be as
useful as it can be painful.    It all depends...

> I mean we can communicate the calculation results with each other( 32 bit vs 64 bit) during caluculation with same O.S ?

Again, communication happens over a protocol.

If your protocol can make it work, it will work.  If your protocol cannot
make it work, it cannot work  -  operating systems do not matter here.

:   jakob at unthought.net   : And I see the elder races,         :
:.........................: putrid forms of man                :
:   Jakob Østergaard      : See him rise and claim the earth,  :
:        OZ9ABN           : his downfall is at hand.           :

More information about the Beowulf mailing list