Running 32bit on 64bit Machine = CPU Reduction?

Audio Plugin Hosts and other audio software applications discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

This is probably a ridiculous question, but does running my DAW in 32bit mode take up less resources that running it on 64bit mode on my 64bit machine?
Yes, I know it's less stable, but if it takes up less resources, I'm up.
And, if it makes any difference, I'm on a Windows machine. Desktop PC.
Thanks!

Post

Nope, it actually takes more, because a bridge is always a compatibility layer which adds CPU load. And, some 32-bit plugins are CPU heavier than their 64-bit counterparts as well.

Althought I'm not sure if I get you right. You mean installing a DAW in the 32-bit version and using 32-bit plugins with that, or bridging 32-bit plugins in a 64-bit DAW?

Post

Domenico KVR wrote: Fri Jan 29, 2021 4:23 pm This is probably a ridiculous question, but does running my DAW in 32bit mode take up less resources that running it on 64bit mode on my 64bit machine?
In theory yes, because the pointers are 32 Bit instead of 64 (all else is equal), so you need a bit less RAM. But you can't (well, theoretically you could use PAE) use more than 4 GB in the DAW.
But it also lacks some registers, because in 64 bit mode the CPU 'has' more, so it could be slower.
It certainly is less tested, if we're talking about a recent DAW, so more bugs.
Practically the only difference is the possibility of using more than 4GB of RAM.

Post

In theory running 32 bit code on a 64 bit CPU is faster. Many games are still using 32 bit code for this reason.
Orion Platinum, Muzys 2

Post

v1o wrote: Fri Jan 29, 2021 4:43 pm In theory running 32 bit code on a 64 bit CPU is faster.
Only if the 64 bit registers would be split to two 32 bit registers. Which practically no CPU does, because all CPUs I know use the 'old' 32 bit interface - the main point is not needing to recompile 32 bit programs. With x64 the 64 bit mode has actually more registers, so is, in theory, faster.
We are talking about a x64 CPU in 'long mode' with a 'sub mode' of 'compatibility mode' (instead of the 64 bit mode of 'long mode') if the 32 bit program runs on a 64 bit OS, if it runs on a 32 bit OS, the CPU is in 'legacy mode and 'protected mode''.

Practically ....

Post

v1o wrote: Fri Jan 29, 2021 4:43 pm In theory running 32 bit code on a 64 bit CPU is faster. Many games are still using 32 bit code for this reason.
From my naive understanding, I don't think that this is really true. Actually, the whole deal with going 64-bit is that it's faster.

Post

Okay...
So, if I have a good new processor, going 32bit will be less efficient... But I have Intel i2 (budget's low, LOL). So, from what I see here, I'm better off going 32bit until I get a better processor, which I will have to be doing soon because it's killing me, LOL.
OK! Thank you all for your input!

Post

chk071 wrote: Fri Jan 29, 2021 4:26 pm Althought I'm not sure if I get you right. You mean installing a DAW in the 32-bit version and using 32-bit plugins with that, or bridging 32-bit plugins in a 64-bit DAW?
Yes, I mean using the actual 32bit DAW, along with its 32bit plug-ins (when possible) on a 64bit system.
Sorry for my lack of precision on this.

Post

Ok. I don't think it makes much of a difference, if any. What you exclude yourself from, of course, is the ability to run 64-bit plugins, without much benefit.

Post

Short answer: it makes no difference in CPU load.
If the exe is 32 bit, it can't allocate more than 3.(something) GB of RAM, so not recommended for sample libraries.

Post

ReleaseCandidate wrote: Fri Jan 29, 2021 4:50 pm
Only if the 64 bit registers would be split to two 32 bit registers. Which practically no CPU does, because all CPUs I know use the 'old' 32 bit interface - the main point is not needing to recompile 32 bit programs. With x64 the 64 bit mode has actually more registers, so is, in theory, faster.
We are talking about a x64 CPU in 'long mode' with a 'sub mode' of 'compatibility mode' (instead of the 64 bit mode of 'long mode') if the 32 bit program runs on a 64 bit OS, if it runs on a 32 bit OS, the CPU is in 'legacy mode and 'protected mode''.

Practically ....
Yes you're right. While x64 has a few more registers this is counteracted by the fact pointers are now larger and using any structures with pointers results in a higher memory traffic. I would estimate the increase in the overall memory usage for a 64bit application compared to a 32bit could be 15-30 %.
Orion Platinum, Muzys 2

Post

v1o wrote: Fri Jan 29, 2021 7:30 pm I would estimate the increase in the overall memory usage for a 64bit application compared to a 32bit could be 15-30 %.
That's just not true in general.

Post

v1o wrote: Fri Jan 29, 2021 7:30 pm Yes you're right. While x64 has a few more registers this is counteracted by the fact pointers are now larger and using any structures with pointers results in a higher memory traffic. I would estimate the increase in the overall memory usage for a 64bit application compared to a 32bit could be 15-30 %.
Depends on what data structures are in major use. Linked lists and most forms of hashtables are pointer-heavy and make a big 64 bits difference not only to RAM but also to cache lines usage, cache hits and TLB hits.

Imagine an extreme case, a linked list of >= 32 bit integers. Every list element takes 2 pointers and one 32 bit word. So that is 96 bits in a 32 bit program and 160 bits in a 64 bit program. Almost a factor of 2.

Java programs and most interpreters are probably screwed purely looking at data size. But who has ever seen a RAM-efficient Java program?

There is no emulation layer to execute x86 code on x86_64 OSes, btw. You just load other libraries.

Post Reply

Return to “Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.)”