Here's a quick primer:

When we say 32-bit or 64-bit architecture, we refer to the "word size". "word" is the natural unit of data processing for a given CPU. The word size is typically the size of the CPU's (integer) registers. Most importantly, it defines the size of pointers and thus the max.  addressable memory within a given (virtual) memory space.

(There are some curious exceptions, such as x32 mode on amd64 platforms, but these can be ignored for practical purposes.)

Note that a 32-bit computer can still work with 64-bit data types, they just won't fit into a single register. Also note that on modern platforms floats/doubles are usually kept in special SIMD registers that are much wider than their integer counterparts  (e.g. 256 bits with AVX on Intel).

The main takeaway is that word size and float size are completely orthogonal. In other words: a 32-bit program can use 64-bit integers or 64-bit doubles.

(On some platforms this comes with a performance cost, though. For example, the ESP32 is a 32-bit processor whose FPU only natively supports 32-bit floats, so 64-bit doubles are emulated in software.)

---

So, Windows 11, the current version, is only for 64 bit architectures, right? so one cannot install pd 32 bit on it.
No. 64-bit Windows has an emulation layer for 32-bit applications (the WoW subsystem). Just like Apple used to emulate PPC on its 32-bit Intel processors (Rosetta 1) and now emulates amd64 code on Apple Silicon (Rosetta 2). This is done to make the transition to another CPU architecture easier for the user because they can run their old programs.

Christof

On 30.05.2024 03:14, Alexandre Torres Porres wrote:
While we're at it, as I only know about macOS, let me ask about windows and linux...

So, Windows 11, the current version, is only for 64 bit architectures, right? so one cannot install pd 32 bit on it.

As for Linux, is there any most recent version only for 64-bit architecture?

cheers

Em qua., 29 de mai. de 2024 às 21:13, Alexandre Torres Porres <porres@gmail.com> escreveu:
I see, not being well versed, I see I'm again confusing 64-bit architecture with double precision. And I'm still confused on what "CPU-architecture" actually means. Let's see if I get things straight.

Older macs with intel chips can run two different architectures: i386 (Intel 32bit) and amd64 (Intel 64bit). This depends on the OS and the last to allow i386 was Mojave (10.14). Newer arm64 is obviously only 64bit.

I'm positive this is what it is, but it still strikes me as a bit uncanny that a computer can have more than one architecture, as my intuition would tell me that the architecture of my chip can only be of one type. So I guess I don't really get the concept of "cpu-architecture".

Anyway, things like this should be made clearer for dummies like me in the manual and stuff.

Cheers




Em qua., 29 de mai. de 2024 às 18:44, IOhannes m zmölnig <zmoelnig@iem.at> escreveu:
On 5/29/24 21:03, Alexandre Torres Porres wrote:
> Can't .pd_linux, .pd_darwin, .d_fat, .dll be 64 bit? As well as .m_amd64,
> .d_arm64 and .l_arm64 and stuff? I mean, probably they "can", but the idea
> was to create new extension possibilities to distinct single and double
> precision, right?

depends on what you mean by "can".
technically they could.
practically, Pd64 will *not* load an external that ends with .pd_darwin.
see the mailinglist archives and the github issues for a lengthy
discussion why it is like this.

>
> While we're at it, can i386 be 64? really? As in .linux-i386-64.so,
> .darwin-i386-64.so and .windows-i386-64.dll?
>

sure, why not?
the "double" floattype has been around for some time.
a quick wikipedia check shows that one of the first (C)PU to implement
IEEE 754 (the floating point standard that defines "double" floats as we
know them) was the Intel 8087, a 16bit processor (and famous
co-processor for the 8086)
It would be capable of running Pd64 (".cpm-x86_16-64.so").


fmdsafds
IOhannes
_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list

_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list