I'm on a 32 bit OS Windows XP Home–will be upgrading to a 64 bit XP Pro–and I'm upgrading my RAM to 16GB. Should I see a difference?
I typically compress a ton of files at one time. The 32 bit @ 4GB RAM is really 3.25GB RAM and when I'm compressing 20 files–which takes all 3GB–the system is almost frozen. So if I upgrade to 16GB should this solve my problem? The CPU has little stress in this process.

migrated from stackoverflow.com Mar 8 '11 at 16:45

This question came from our site for professional and enthusiast programmers.

  • 1
    What are you asking? – SLaks Mar 8 '11 at 16:46
  • 1
    16GB might be overkill. – Shinrai Mar 8 '11 at 16:57
  • 1
    Shinrai: That depends on the application. If, for example, the user needs (or wants; I'm told that it's usually a "need") to play Doom III in super-high-resolution mode, then more RAM will definitely improve the quality of the game play. – Randolf Richardson Mar 8 '11 at 17:09
  • 1
    @Randolf - Hence "might". I'm subtly suggesting that the OP evaluate their actual needs. – Shinrai Mar 8 '11 at 17:30
  • @Randolf: Doom 3 with super high resolution requires nowhere near 4GB of RAM... About 512MB of VRAM is more than enough. – rubenvb Mar 8 '11 at 21:04

You are right in that the 32-bit edition of Windows XP is limited to a maximum of 4 GBs of RAM.

The difference you will find with the 64-bit edition for Windows XP is that it's difficult to find hardware drivers for it, and some software simply isn't compatible. You'd probably be much better off running the 64-bit edition of Windows 7 (don't waste any time with Windows Vista, it's like a persistent yet inconsistent problem child) and virtualize Windows XP in VirtualBox.org to run any applications you have that aren't compatible with Windows 7.

  • 3
    +1 for a balanced look at an unbalanced issue. :) – Shinrai Mar 8 '11 at 16:56
  • 2
    Thanks Shinrai! I like to focus my answers on what I think will be most helpful to the questioner. – Randolf Richardson Mar 8 '11 at 17:00
  • 1
    Agreed! Don't really get people who still stick with the ancient XP... – Svish Mar 8 '11 at 18:44
  • 2
    @Randolf Richardson: one should add that this is a deliberate limitation of 32bit Windows XP, that the limit is usually somewhere slightly above 3 GB for technical reasons and that the internet is full of ideas how to get PAE to work with XP (which opens it up for up to 64 GB) – 0xC0000022L Mar 8 '11 at 19:35
  • 2
    @Randolf Richardson: there are some, but easiest is when you have some RCE skills. Check out MmInitSystem then. While distributing a patch (or potentially a link to it) is illegal in many countries, DIY is not in many of those very same countries. This appears to explain both the underlying mechanics as well as to suggest a patch. Though it's for 32bit Vista, the same principle does indeed hold for XP. Prerequisite is a processor (and AFAIK sometimes BIOS) that supports PAE, though. – 0xC0000022L Mar 9 '11 at 12:51

I typically compress a ton of files at one time.

It sounds like the real bottleneck in that case might in fact be hard-drive I/O.

Compressing many files at the same time causes a lot of overhead, lots of seeking on spinning-platter drives, and, on certain file systems (FAT32 especially), tons of fragmentation. I would recommend serializing such tasks–if at all possible.

  • During compression with the newer algos like LZMA or LZMA2 or ppma, the bottleneck is likely the CPU and most often during compression in conjunction with the RAM (depending on block sizes etc). Still, if those go on in parallel, the hard disk would just start to contribute to slowness. – 0xC0000022L Mar 8 '11 at 23:35
  • Indeed. Considering a single thread of LZMA compression can take about 350MB of RAM per thread/core, compressing 30 files at the same time can quickly amount to 42 gigabytes of used memory. Not even a beefy 16GB will save you from the page file in such a case. @STATUS_ACCESS_DENIED – oKtosiTe Mar 9 '11 at 15:47
  • oKtosiTe, I think you are wrong, and packing 30 files (with single archiver started) don't require 30 times more memory. 350MB of memory is per thread (?). 30 times more can be, if you will start 30 archivers. – osgx Apr 22 '11 at 14:58
  • "I typically compress a ton of files at one time." sounded to me like there were many files being compressed simultaneously, which would imply several compression threads running at the same time. If that is not what the asker meant, I don't see how the number of files being compressed is even relevant and in that case you are right. @osgx – oKtosiTe Apr 23 '11 at 8:31

Windows notoriously freezes when doing heavy disk accesses.
More RAM will not change much if disk access is the bottleneck.

If your CPU is slow and the computer is not multi-core, then the CPU might be another bottleneck.

Better to invest your money in a faster disk and faster CPU. But then you may need a faster system bus, and pretty quick one cocncludes that one needs to get a totally new computer.

  • 2
    not only windows freezes when doing heave disk access. I've had it happen under Linux as well, and not sporadically. – rubenvb Mar 8 '11 at 21:06
  • @rubenvb: you can't say that, because it takes the fun out of Windows bashing ;) – 0xC0000022L Mar 9 '11 at 0:12
  • @rubenvb: Linux can slow down a lot, but it doesn't totally freeze like Windows does, where even the Start menu may be suspended. – harrymc Mar 9 '11 at 6:11
  • @harrymc: it sounds like you are talking about Windows 9x ;) – 0xC0000022L Mar 9 '11 at 16:07
  • @STATUS_ACCESS_DENIED: I believe that the disk i/o management has unfortunately not evolved in capacity for the last several generations of Windows. – harrymc Mar 9 '11 at 18:36

Running 64 bit Windows XP is a "little like having bees live in your head".

Do one of the following:

  • switch to 64 bit Windows 7
  • switch to your favorite flavor of Linux (64 bit Ubuntu 10.04 LTS rocks)

You don't say what kind of processor you have, but I would caution you that just adding a ton of memory and switching to 64 bit windows won't give you as much speed-up as moving to an OS that knows how to take advantage of multiple cores.

I've got windows running on a dual quad core xeons with 24Gb of memory, and even running windows 7 there are times that it bogs down doing simple stuff.

Edit 1 Another good reason to steer clear of Windows XP Pro 64 Bit is that there is a nebulous end of support date. For most version of Windows XP is April 4, 2014, but as you can see here there are some special conditions on the 64 Bit version

  • -1 for FUD. Seriously now, take the anti-Windows FUD outside; we don't need it. – Billy ONeal Mar 9 '11 at 4:24
  • I use windows professionally, and there are many things that I prefer to do with windows. There is no anti-windows FUD, it is rather the reality that hits me in the face whenever I think that Windows is going to grow up and be a real operating system. – Zeke Hansell Mar 9 '11 at 15:58
  • For the record:I don't think Linux or Mac OS are close to growing up either. ;-) – Zeke Hansell Mar 9 '11 at 15:58
  • 1
    I disagree with the FUD assessment on this one simply because the first recommended alternative to 64-bit Windows XP is 64-bit Windows 7. In fact, the 64-bit edition of Windows XP is a known problem due to a lack of drivers from most vendors (they all support the wildly common 32-bit edition of Windows XP, but most generally ignore the 64-bit edition of Windows XP as if it doesn't even exist). I knew one person who used 64-bit Windows XP and had terrible problems finding drivers, so they gave up on it after multiple vendors told him that it would never be supported. – Randolf Richardson May 25 '11 at 18:27

Why not just compress fewer files at once? You're unlikely to have more than four CPU cores, so you don't need to have more than four compression processes running at once to get the most out of your CPU. And if you use a multithreaded compression program like 7-zip, you can just do your compression one file at a time.

  • 2
    Massive IO thrashing is probably why he notices the CPU basically being idle. – Mark Sowul Mar 8 '11 at 17:08
  • 1
    I am reading "I typically compress a ton of files at one time" to simply mean one instance doing a compression of a lot of files, rather than multiple compression operations occurring simultaneously and independently. I believe that some recent archivers allow for high RAM use on compression, so it is not inconceivable to use 3GB this way. – Mr.Wizard Mar 8 '11 at 19:09

I'd recommend you switching to Windows 7 x64. Windows XP x64 doesn't function very well for many people due to device driver incompatibility and lots of software doesn't make use of the x64 so you'll wind up with software running in 32 bit mode because there are no alternatives... Windows 7 has much better support from what I've seen for x64 and many of the device drivers will install

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy