Overclock.net › Forums › Software, Programming and Coding › Operating Systems › Linux, Unix › Performance from 32bit to 64bit
New Posts  All Forums:Forum Nav:

Performance from 32bit to 64bit - Page 2

post #11 of 30
Quote:
Originally Posted by anywhere View Post

Currently have a small home raid 5, it's 32bit, 512mb ram, 1.8ghz amd.

I have 3 more 3tb cudas on order, and I acquired for free an amd64 with 512mb

Is it worth the performance to hassle and move everything to the 64bit and reinstall (only a few software packages, it's headless) before growing to raid6?

Some googling says such small ram it's pointless, but I'm curious for cpu crunching for parity checking.

Sent from my rooted HTC Supersonic using Tapatalk 2 Pro

The only time you'll see a strong performance increase switching from 32-bit to 64-bit is if you have more than 3-4GB of RAM otherwise I'd stick with 32-bit
post #12 of 30
Quote:
Originally Posted by DonDizzurp View Post

The only time you'll see a strong performance increase switching from 32-bit to 64-bit is if you have more than 3-4GB of RAM otherwise I'd stick with 32-bit

Not necessarily. Some software really takes advantage of 64bit addressing and such like. ZFS, for example, really comes to life on 64bit systems. Some PostgreSQL functions run significantly faster in 64bit as well.
post #13 of 30
Quote:
Originally Posted by Plan9 View Post

Quote:
Originally Posted by DonDizzurp View Post

The only time you'll see a strong performance increase switching from 32-bit to 64-bit is if you have more than 3-4GB of RAM otherwise I'd stick with 32-bit

Not necessarily. Some software really takes advantage of 64bit addressing and such like. ZFS, for example, really comes to life on 64bit systems. Some PostgreSQL functions run significantly faster in 64bit as well.

Sure but with limited RAM, those advantages of a 64bit OS and CPU are limited as well

Sent from my Galaxy Nexus using Tapatalk
post #14 of 30
Quote:
Originally Posted by DonDizzurp View Post

Sure but with limited RAM, those advantages of a 64bit OS and CPU are limited as well

Sent from my Galaxy Nexus using Tapatalk

Actually, ram quantity has a null impact on the advantages of 32 or 64 bit; 32-bit operating systems can utilize up to 64gb of ram. Microsoft put pseudo limitations on different licenses of Windows Vista+ and prior to Windows Vista, Windows XP didn't have PAE enabled in the kernel (although the code was there), Windows Server 2003 (which was XP's server iteration) did have PAE and could handle 64gb of ram. From there, a single 32-bit image can handle up to 3gb of ram without a memory paging thread using LAA. With a memory paging thread and several 'images' it can take advantage of PAE and allocate as much ram as is available. It can only address the first 3gb directly however, but that's not really an issue when working with large datasets you can page as you need anyways. The real advantage comes from 64-bit instructions and properly taking advantage of them, most math done in menial applications doesn't even fill a 32-bit register, so the 64-bit function is actual a waste the majority of the time. As Plan9 pointed out, there are obvious exceptions to this rule.

In general:
(De)Compression (including video encoding, decoding)
Post Processing/Filtering (I.e. photoshop filters)
High point count manipulation (detailed models in basically any 3d modeling program)

All see large benefits from 64-bit instructions. Even further, most of the above also can take advantage of AVX 256-bit instructions for even further performance gains. There are several other instances where the gains are quite large, but the above are the most commonly occurring.

Data streams take almost zero calculation, so the register size is really negligible. If he was working with a large data set and the processor was pegged at 100% usage and that was limiting his write speed, I'd say 64-bit would help. But it's being limited by I/O count, he's seeing Queue Depth start to take effect, a high-speed high IOPS cache array would mitigate this, but add the risk of data loss (since you'd want probably 2 SSD's in Raid 0 for the cache, that'd be plenty of IOPS and a huge data throughput pipe ~1gb/s, which is more than the mechanical drives could hope to catch up with)

Here's a question - how many iops does iostat report for the process doing the writing? (that would be block read/s and block write/s) That's probably more important than the throughput of your drives for the application.
    
CPUMotherboardGraphicsRAM
Core i7 920 D0 4.2ghz HT (1.3625v) Asus R3E 2xGTX 460 (non SLi, no overclock) 6x2gb G.skill @ 6-8-6-24-1T 
Hard DriveOptical DriveOSMonitor
WD-VR 300GBx1, 2xWD 1tb,2x60gb Agility Some crappy combo burner... Arch x64 3xDell U2410f rev A02 
KeyboardPowerCaseMouse
X-Armor U9BL TT Toughpower 1200w (NTB more efficient) Mountain Mods Pinnacle 24 CYO Roccat Kone (R.I.P. A4Tech x7) 
Mouse Pad
Steelpad Experience I-1 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Core i7 920 D0 4.2ghz HT (1.3625v) Asus R3E 2xGTX 460 (non SLi, no overclock) 6x2gb G.skill @ 6-8-6-24-1T 
Hard DriveOptical DriveOSMonitor
WD-VR 300GBx1, 2xWD 1tb,2x60gb Agility Some crappy combo burner... Arch x64 3xDell U2410f rev A02 
KeyboardPowerCaseMouse
X-Armor U9BL TT Toughpower 1200w (NTB more efficient) Mountain Mods Pinnacle 24 CYO Roccat Kone (R.I.P. A4Tech x7) 
Mouse Pad
Steelpad Experience I-1 
  hide details  
Reply
post #15 of 30
Quote:
Originally Posted by Xaero252 View Post

Actually, ram quantity has a null impact on the advantages of 32 or 64 bit; 32-bit operating systems can utilize up to 64gb of ram. Microsoft put pseudo limitations on different licenses of Windows Vista+ and prior to Windows Vista, Windows XP didn't have PAE enabled in the kernel (although the code was there), Windows Server 2003 (which was XP's server iteration) did have PAE and could handle 64gb of ram. From there, a single 32-bit image can handle up to 3gb of ram without a memory paging thread using LAA. With a memory paging thread and several 'images' it can take advantage of PAE and allocate as much ram as is available. It can only address the first 3gb directly however, but that's not really an issue when working with large datasets you can page as you need anyways. The real advantage comes from 64-bit instructions and properly taking advantage of them, most math done in menial applications doesn't even fill a 32-bit register, so the 64-bit function is actual a waste the majority of the time. As Plan9 pointed out, there are obvious exceptions to this rule.

In general:
(De)Compression (including video encoding, decoding)
Post Processing/Filtering (I.e. photoshop filters)
High point count manipulation (detailed models in basically any 3d modeling program)

All see large benefits from 64-bit instructions. Even further, most of the above also can take advantage of AVX 256-bit instructions for even further performance gains. There are several other instances where the gains are quite large, but the above are the most commonly occurring.

Data streams take almost zero calculation, so the register size is really negligible. If he was working with a large data set and the processor was pegged at 100% usage and that was limiting his write speed, I'd say 64-bit would help. But it's being limited by I/O count, he's seeing Queue Depth start to take effect, a high-speed high IOPS cache array would mitigate this, but add the risk of data loss (since you'd want probably 2 SSD's in Raid 0 for the cache, that'd be plenty of IOPS and a huge data throughput pipe ~1gb/s, which is more than the mechanical drives could hope to catch up with)

Here's a question - how many iops does iostat report for the process doing the writing? (that would be block read/s and block write/s) That's probably more important than the throughput of your drives for the application.

"Actually, ram quantity has a null impact on the advantages of 32 or 64 bit"

LOL what?

"32-bit operating systems can utilize up to 64gb of ram. "

I stopped reading right there.

2^32 = 4,294,967,296 bytes = 4GB

You have a total of 4GB of available memory for RAM and other resources on a 32-bit OS and CPU. Page filing is irrelevant.

Real world test: install a 32-bit Windows 7 on a PC with 1GB of RAM and then a 64-bit Windows 7 on that same PC. I can almost guarantee the 32-bit one will but quicker.
Edited by DonDizzurp - 3/11/14 at 4:43pm
post #16 of 30
Quote:
Originally Posted by DonDizzurp View Post

"Actually, ram quantity has a null impact on the advantages of 32 or 64 bit"

LOL what? 

"32-bit operating systems can utilize up to 64gb of ram. "

I stopped reading right there.

2^32 = 4,294,967,296 bytes = 4GB

You have a total of 4GB of available memory for RAM and other resources on a 32-bit OS and CPU. Page filing is irrelevant.

Real world test: install a 32-bit Windows 7 on a PC with 1GB of RAM and then a 64-bit Windows 7 on that same PC. I can almost guarantee the 32-bit one will but quicker.

http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778(v=vs.85).aspx#physical_memory_limits_windows_server_2003_sp2

Please, do your research before personally attacking someone for their knowledge.

Windows Server 2003 32-bit CLEARLY supports 64gb of memory. As I stated in my post - Microsoft imposes pseudo limitations on Windows releases BY LICENSE. For example, the "Standard" edition of Windows Server 2003 only supported 4GB of memory, however the Enterprise and DataCenter editions of the operating system each supported 64gb of memory on 32-bit.

Yes, 2^32 is 4GB - the kernel can allocate one single 4GB contiguous portion of memory per pool. That doesn't mean the kernel cannot allocate multiple pools of memory. In theory, the kernel could allocate 2^32 pools of 4GB in size. This technique for memory allocation is called "paged pool" and has nothing to do with the page file which as you pointed out would be a very dumb statement indeed.

Congratulations - You agreed with me on your last point - everything about loading an operating system would be faster with 32-bit instructions. Because NONE of those operations would be able to utilize a 64-bit register - which inherently takes longer to process than a 32-bit one.

Oh, and a bit of further reading on PAE; The technology that enables 32-bit CPUs to access the memory ranges beyond 4GB:
Http://en.wikipedia.org/wiki/Physical_Address_Extension
Edited by Xaero252 - 3/11/14 at 5:28pm
    
CPUMotherboardGraphicsRAM
Core i7 920 D0 4.2ghz HT (1.3625v) Asus R3E 2xGTX 460 (non SLi, no overclock) 6x2gb G.skill @ 6-8-6-24-1T 
Hard DriveOptical DriveOSMonitor
WD-VR 300GBx1, 2xWD 1tb,2x60gb Agility Some crappy combo burner... Arch x64 3xDell U2410f rev A02 
KeyboardPowerCaseMouse
X-Armor U9BL TT Toughpower 1200w (NTB more efficient) Mountain Mods Pinnacle 24 CYO Roccat Kone (R.I.P. A4Tech x7) 
Mouse Pad
Steelpad Experience I-1 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Core i7 920 D0 4.2ghz HT (1.3625v) Asus R3E 2xGTX 460 (non SLi, no overclock) 6x2gb G.skill @ 6-8-6-24-1T 
Hard DriveOptical DriveOSMonitor
WD-VR 300GBx1, 2xWD 1tb,2x60gb Agility Some crappy combo burner... Arch x64 3xDell U2410f rev A02 
KeyboardPowerCaseMouse
X-Armor U9BL TT Toughpower 1200w (NTB more efficient) Mountain Mods Pinnacle 24 CYO Roccat Kone (R.I.P. A4Tech x7) 
Mouse Pad
Steelpad Experience I-1 
  hide details  
Reply
post #17 of 30
Quote:
Originally Posted by DonDizzurp View Post

"32-bit operating systems can utilize up to 64gb of ram. "

I stopped reading right there.

2^32 = 4,294,967,296 bytes = 4GB

You have a total of 4GB of available memory for RAM and other resources on a 32-bit OS and CPU.

I have noooooo how you came up with a blatant lie like that.
Quote:
Originally Posted by Xaero252 View Post

http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778(v=vs.85).aspx#physical_memory_limits_windows_server_2003_sp2

Please, do your research before personally attacking someone for their knowledge.

Windows Server 2003 32-bit CLEARLY supports 64gb of memory. As I stated in my post - Microsoft imposes pseudo limitations on Windows releases BY LICENSE. For example, the "Standard" edition of Windows Server 2003 only supported 4GB of memory, however the Enterprise and DataCenter editions of the operating system each supported 64gb of memory on 32-bit.

Yes, 2^32 is 4GB - the kernel can allocate one single 4GB contiguous portion of memory per pool. That doesn't mean the kernel cannot allocate multiple pools of memory. In theory, the kernel could allocate 2^32 pools of 4GB in size. This technique for memory allocation is called "paged pool" and has nothing to do with the page file which as you pointed out would be a very dumb statement indeed.

Congratulations - You agreed with me on your last point - everything about loading an operating system would be faster with 32-bit instructions. Because NONE of those operations would be able to utilize a 64-bit register - which inherently takes longer to process than a 32-bit one.

Oh, and a bit of further reading on PAE; The technology that enables 32-bit CPUs to access the memory ranges beyond 4GB:
Http://en.wikipedia.org/wiki/Physical_Address_Extension

It supports 4GB by design. 64GB requires you have PAE as you clearly stated several times.

"With PAE, IA-32 architecture is augmented with additional address lines used to select the additional memory, so physical address size increases from 32 bits to 36 bits."
^ Straight from the Wiki article you linked

I didn't say compare a 32-bit program running in a 32-bit vs 64-bit OS. I said simply a 32-bit OS vs 64-bit OS as they come.

No need to get upset and take it as a "personal attack". It's only the internet.
Edited by DonDizzurp - 3/11/14 at 5:46pm
post #18 of 30
Quote:
Originally Posted by DonDizzurp View Post



It supports 4GB by design. 64GB requires you have PAE as you clearly stated several times.

I didn't say compare a 32-bit program running in a 32-bit vs 64-bit OS. I said simply a 32-bit OS vs 64-bit OS as they come.

Which design? an old one or the one currently in use?

Since this thread is in a Linux Forum and OP specifically was asking about Linux, and also considering that essentially all recent 32bit distros ship with PAE enabled kernels, in fact you are NOT comparing Linux 32bit vs/ Linux 64bit "as they come".
NewMain
(16 items)
 
  
CPUMotherboardGraphicsRAM
Intel i5 - 3550 Asrock Z77 Extreme4 Gigabyte GTX 760  4x2GB Corsair Vengeance 
Hard DriveOptical DriveCoolingOS
Seagate SATA 2TB x 2  Plextor PX-891SAW CM-Hyper N520 Slackware 14, Studio KUbuntu, OpenSuSe 12.3, Wi... 
MonitorKeyboardPowerCase
32" Vizio HDTV + DLP Logitech Wireless Corsair HX-850 Antec Sonata I 
MouseMouse PadAudioOther
Razer DeathAdder 2013 dual ESI Juli@ CoolGear ExtSata Enclosure w/ Optical and 3TB S... 
  hide details  
Reply
NewMain
(16 items)
 
  
CPUMotherboardGraphicsRAM
Intel i5 - 3550 Asrock Z77 Extreme4 Gigabyte GTX 760  4x2GB Corsair Vengeance 
Hard DriveOptical DriveCoolingOS
Seagate SATA 2TB x 2  Plextor PX-891SAW CM-Hyper N520 Slackware 14, Studio KUbuntu, OpenSuSe 12.3, Wi... 
MonitorKeyboardPowerCase
32" Vizio HDTV + DLP Logitech Wireless Corsair HX-850 Antec Sonata I 
MouseMouse PadAudioOther
Razer DeathAdder 2013 dual ESI Juli@ CoolGear ExtSata Enclosure w/ Optical and 3TB S... 
  hide details  
Reply
post #19 of 30
Quote:
Originally Posted by DonDizzurp View Post

"Actually, ram quantity has a null impact on the advantages of 32 or 64 bit"

LOL what?

"32-bit operating systems can utilize up to 64gb of ram. "

I stopped reading right there.

2^32 = 4,294,967,296 bytes = 4GB

You have a total of 4GB of available memory for RAM and other resources on a 32-bit OS and CPU. Page filing is irrelevant.

Real world test: install a 32-bit Windows 7 on a PC with 1GB of RAM and then a 64-bit Windows 7 on that same PC. I can almost guarantee the 32-bit one will but quicker.
I suggest you Google PAE before calling people liars
post #20 of 30
Quote:
Originally Posted by DonDizzurp View Post


It supports 4GB by design. 64GB requires you have PAE as you clearly stated several times.

"With PAE, IA-32 architecture is augmented with additional address lines used to select the additional memory, so physical address size increases from 32 bits to 36 bits."
^ Straight from the Wiki article you linked

I didn't say compare a 32-bit program running in a 32-bit vs 64-bit OS. I said simply a 32-bit OS vs 64-bit OS as they come.

No need to get upset and take it as a "personal attack". It's only the internet.

You're doing this thing that people do when they're too proud to admit they were wrong where you argue the semantics of your original post narrowly describes your point, despite the fact that everyone knows the semantics were not only an accident at the time of writing but also completely irrelevant to the point if the discussion. However we're now arguing the semantics, which you do understand, rather than 64bit addressing, which you don't understand, and theargument has shifted focus away from your original falsehood.

So in the interest of keeping this discussion on topic let's stick to the crux of the argument. Regardless of PAE, nor available RAM, some software will perform better on 64bit platforms.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Linux, Unix
Overclock.net › Forums › Software, Programming and Coding › Operating Systems › Linux, Unix › Performance from 32bit to 64bit