Running 32bit on 64bit Machine = CPU Reduction?
-
- KVRist
- 51 posts since 2 Jan, 2021
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!
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!
-
- KVRAF
- 35679 posts since 11 Apr, 2010 from Germany
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?
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?
-
ReleaseCandidate ReleaseCandidate https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=476930
- KVRian
- 620 posts since 19 Oct, 2020
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.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?
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.
-
ReleaseCandidate ReleaseCandidate https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=476930
- KVRian
- 620 posts since 19 Oct, 2020
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 ....
-
- KVRAF
- 35679 posts since 11 Apr, 2010 from Germany
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.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.
-
- KVRist
- Topic Starter
- 51 posts since 2 Jan, 2021
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!
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!
-
- KVRist
- Topic Starter
- 51 posts since 2 Jan, 2021
Yes, I mean using the actual 32bit DAW, along with its 32bit plug-ins (when possible) on a 64bit system.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?
Sorry for my lack of precision on this.
- KVRian
- 1055 posts since 3 Jul, 2006
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.
If the exe is 32 bit, it can't allocate more than 3.(something) GB of RAM, so not recommended for sample libraries.
-
- KVRAF
- 3374 posts since 2 Oct, 2004
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 %.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 ....
Orion Platinum, Muzys 2
-
- KVRAF
- 35679 posts since 11 Apr, 2010 from Germany
That's just not true in general.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 %.
- KVRian
- 564 posts since 3 Jan, 2021
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.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 %.
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.