By using this site, you agree to our Privacy Policy and our Terms of Use. Close
Adinnieken said:

 

Typically, you read data from the HDD into a block of memory.  The size of the block varies by memory, 256 bits(b) on GDDR5.  So, if you have a file that's 4 bytes(B) in size you've wasted 28 B.  But let's say you now want to do something with that data.  Maybe it's an XML file that you keep user stats stored in.  Normally, with DDR3 memory you would be able to append the memory.  With GDDR5 you have to either 1) clear that block of memory than write the complete data to it, 2) write to a separate block of memory, then clearing out the original block of memory, or 3) use the HDD as a temporary write space, then read data back into memory after you've cleared out the previous data.

I'm sorry I still don't have the slightest clue about what you are trying to tell. "The size of the block varies by memory" I really have no clue...

When you read data from a disk file, there are basically two methods:a) read the file: read(filename,buffer) or b) blockread(filename,buffer[],NumBytes).The os doesn't give a shit about what type of memory you have, how wide the data bus is, or how the bytes get there: it just reads the bytes you want into the buffer you specify.

Here is a really odd example (I doubt any dev is ever doing something like this) why gddr5 i actually much better than ddr3: Suppose you have a variable array of 32 bytes, one core needs the odd bytes (1,3,5,7..), another core needs the even bytes (0,2,4,6,..). With gddr5, both cores can (pseudosimultaneously) read and write to this same variable array without interfering with each other!