2gb or 4gb?

Associate
Joined
6 Dec 2007
Posts
25
ok, so this may seem like a silly question, but im considering upgrading from 2 to 4 gb ram.. at the moment does it make much difference to anything?
I mainly utilize system resources when converting videos, however I believe the RAM doesnt gt used much for this? However I could be wrong and then I intend on doing some gaming.

cheers
 
1. If you're running a 32-bit OS, then yes, why not, it's some extra RAM, although you won't get the full 4Gb.

If you're running a 64-bit OS, then your PC could actually be slower in computationally intensive applications with 4Gb over 2Gb. With a 64-bit OS, I would recommend 8Gb.

DDR2 is as cheap now as it's ever going to get. Look at what happened to DDR RAM. If you want to upgrade, now is a good time to do it - but get 8Gb if you can afford it.
 
That is very surprising:confused:

Also goes completely against what the Corsair guy posted a week or two ago. Sure 8GB might be better than 4, but 4 is virtually always better than 2 with any memory hungry application.

Sure more memory often means slightly slacker timings and a little increased latency, but Core 2 Duo is so good at handling its memory its virtually a non issue.

Under 64bit windows 2 > 4 is an worthwhile upgrade even for gaming.
 
deff. go for 4

one of my mem stick has gone bad.. and until I go to the shop and return it I am running with a single 2gig dimm..

I hate every momment of it..

multitasking sucks... can't alt+tab during instalation.
cant surf during gaming
and generally everything has gonne way down...

there is a significant diff from 2 to 4 gigs
no question about it... and if u can go to 8 then do it.
not a necessity but if you can u wont regret it!
 
Also goes completely against what the Corsair guy posted a week or two ago. Sure 8GB might be better than 4, but 4 is virtually always better than 2 with any memory hungry application.

Sure more memory often means slightly slacker timings and a little increased latency, but Core 2 Duo is so good at handling its memory its virtually a non issue.

Under 64bit windows 2 > 4 is an worthwhile upgrade even for gaming.

What you are saying is absolutely correct. The Corsair guy (a former Journalist, not a hardcore tech) was talking about gaming. And I don't disagree with anything he said, or indeed anything you have said.

I posted specifically about computationally intensive applications - not memory hungry or games. The slow-down occurs with the way the 64-bit OS handles storing 64-bit numbers. Up to 4Gb of RAM, with the same amount of RAM available, the 32-bit OS is more efficient than the 64-bit OS as it stores numbers in half the space. Once you get beyond the 4Gb the 64-bit OS powers ahead in everything.

I was simply recommending that if the OP can afford it, 8Gb is better again.
 
At least nehalem will give us the first major boost in memory bandwidth we've seen for some time :). 64bit apps will just lap up the 192bit tripple channel memory bus :) The increased bandwidth should help counter the increased memory requirements of 64bit apps when working with 64bit data :) Plus give an easy route to 12Gb memory :)

With the current price of memory, 8gb is not a bad idea. I guess you meant to write that 2gb with 32bit windows can outperform 4gb on the 64bit OS? Which can be true under certain circumstances. I do find it a little hard to believe that a 64bit windows would perform better with 2gb than 4gb :)

That said, if the application actually works on 64bit data, wouldnt the 32bit OS be totally hamstringed by having to break the data into 32bit chunks.. Its hell of a lot of CPU work to do maths on numbers that dont fit into the 32bit registers unless of course the application is coded for 64bit or 128bit SSE, but then even with the 32bit OS your doing 64/128bit math and the data will have to be stored accordingly.

Its hard to compare the performance of a 32bit platform, and a 64bit platform, both obviously have their advantages and disadvantages, and I believe that AMD, Intel and Microsoft made a pretty good job considering the 64bit versions of windows are virtually a match performance wise to the 32bit OS.
 
With the current price of memory, 8gb is not a bad idea. I guess you meant to write that 2gb with 32bit windows can outperform 4gb on the 64bit OS?

Correct.:o

That said, if the application actually works on 64bit data, wouldnt the 32bit OS be totally hamstringed by having to break the data into 32bit chunks.. Its hell of a lot of CPU work to do maths on numbers that dont fit into the 32bit registers unless of course the application is coded for 64bit or 128bit SSE, but then even with the 32bit OS your doing 64/128bit math and the data will have to be stored accordingly.

I do not believe so, as 64-bit applications have to be specifically coded to run as 64-bit applications. If they run 32-bit applications they still store the numbers as numbers and it still allocates 64-bits worth of memory space to them.

Its hard to compare the performance of a 32bit platform, and a 64bit platform, both obviously have their advantages and disadvantages, and I believe that AMD, Intel and Microsoft made a pretty good job considering the 64bit versions of windows are virtually a match performance wise to the 32bit OS.

Absolutely. Squeezing quarts into pint pots comes to mind.
 
the WOW64 layer simply isolates the 32bit applications in their own 32bit virtual memory space, Unlike Itanium, which has to run an emulator to run X86 code, X64 processors can run X86 code natively. All data is stored as 32bits for these 32bit applications.

All the historical registers in the X86 processor are still available for use in 64bit mode, AL/AH (8 bit pairs), AX (16bit), EAX(32bit), and RAX(64bit). Apparently some instructions are unavailable in 64bit mode, but Im pretty sure that if can still make use of the smaller registers if need. And if you pop 8 bits from AL into a memory location, it should still be 8 bits when its stored.

The transition from 16bit to 32bit certainly kept the ability to store numbers in both 8 and 16bit formats. Im pretty sure that its possible with 64 bit as well, and its certainly true with 32bit applications running under the WOW layer (has to be, the applications themselves are coded with 32bit address boundarys). If the WOW layer was "converting" 64bit data and addresses into 32bit on the fly it would have a much larger performance hit. All it does is say AHH 32bit application, assign a 32bit virtual memory pool. (remember that complied languages end up machine code, and machine code will work with specific bit offsets. If the hardware/os suddenlty changed the data storage, the application would likely keep grabbing the wrong memory locations)

It's all down to the programmers at the end of the day, and what needs they have. If a program requires data that wont fit into a 32bit register, then obviously they have to store that data as 64bits. It wont matter if the result of the calulation is 1 or 1 billion, it would still take all 64bits. Also depends on what languages are used, how variables are defigned etc etc etc.

If you code in C, you can use the following data types when you define a variable, and they can be signed or unsigned integers.

8-bit: int8_t uint8_t
16-bit: int16_t uint16_t
32-bit: int32_t uint32_t
64-bit: int64_t uint64_t

If you know your code NEVER needs integers larger than 256 (and no negatives) you can still use an 8 bit unsigned integer for example.

At the end of the day it simply depends how much care was put into developing the software in the first place. Its always possible (though lazy) to pick the largest integers for everything, and simply "up the memory requirements"

In other languages int's often default to 32bit, with longints available for 64bit. However outside the "WOW" layer, a true 64bit application pointers will generally be 64bit, but data can still be stored in smaller variables, and will be stored in memory accordingly.
 
Last edited:
Back
Top Bottom