Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 04-15-08, 10:04 AM   #1
tec-buck
Registered User
 
Join Date: Mar 2007
Posts: 17
Default How to determent memory band-width?

Two weeks ago a purchased two Palit 8800Gt's with 1gb of DDR3. The specifications for these cards report that the memory is 256 bit, however the overclocking utility NVClock reports that the memory is 128 bit DDR3.
Has anyone else experienced this? Can others who have used NVClock post if the program is accurately reporting the memory type?

The first thing that goes through my mind is that the manufacturer makes a tradeoff between memory size and bandwidth, the math seems apparent but I do not have a solid grasp of memory allocation and addressing. Any insight into this would be appreciated.

Lastly, I've heard many arguments that the 1 gb version of these cards are slower. If NVClock is reporting accurately then it would appear that those arguments would be true. Double the memory, but sacrifice memory bandwidth.

Of course the other option is that the card was cheap for a reason (cheaper 128 bit memory), but that would be blatant false advertisement, wouldn't it?


Here is a link to the card I purchased.
http://www.newegg.com/Product/Produc...82E16814261012
tec-buck is offline   Reply With Quote
Old 04-15-08, 10:09 PM   #2
tec-buck
Registered User
 
Join Date: Mar 2007
Posts: 17
Default Re: How to determent memory band-width?

I suspect I figured out what the problem was. The NVClock program may not be up to date. Looking at the website I found that it had been updated for GeF8XXX, but it is still beta. Needless to say, I took a look at the source code and found the 128 value that displays when the program runs.
The brief version of the code is contained on the following two lines. These are the last two lines of the function get_memory_width() (witch follows). By changing the 128 below, I change the value displayed when the program runs, thus this line of code is trying to determine my memory bit width.

/* Generic algorithm for cards up to the Geforce4 */
return (nv_card->PEXTDEV[0x0/4] & 0x17) ? 128 : 64;

I don't pretend to understand it, so if anyone can tell me what it is doing that would be great!

Here is the whole function that determens the 'memory width'. Feed back on the code would be greatly enjoyed as well!

static short get_memory_width()
{
/* Nforce / Nforce2 */
if((nv_card->device_id == 0x1a0) || (nv_card->device_id == 0x1f0))
return 64;
/* GeforceFX cards (except for FX5200) need a different check */
/* What to do with NV40 cards ? */
else if(nv_card->arch & NV3X)
{
/* I got this info from the rivatuner forum. On the forum
* is a thread containing register dumps from lots of cards.
* It might not be 100% correct but it is better than a pci id check */
switch(nv_card->PFB[0x200/4] & 0x7)
{
/* 64bit FX5600 */
case 0x1:
return 64;
/* 128bit FX5800 */
case 0x3:
return 128;
/* 128bit FX5600, FX5700 */
case 0x5:
return 128;
/* 256bit FX5900 */
case 0x7:
return 256;
}
}
else if(nv_card->arch == NV44)
{
return 64; /* For now return 64; (Turbocache cards) */
}
else if(nv_card->arch & NV4X)
{
/* Memory bandwith detection for nv40 but not sure if it is correct, it is atleast better than nothing */
switch(nv_card->PFB[0x200/4] & 0x7)
{
/* 128bit 6600GT */
case 0x1:
return 128;
/* 256bit 6800 */
case 0x3:
return 256;
default:
return 128;
}
}
else if(nv_card->arch & NV5X)
{
/* On Geforce 8800GTS/GTX and 8600GT/GTS cards the memory bandwith is proportional to the number of ROPs * 16.
* In case of the 8500 this isn't the case, there the size is just 128 where there are 4 ROPs.
* So for now use the number of ROPs as a meassure for the bus width.
*/
char rmask, rmask_default;
switch(nv_card->get_rop_units(&rmask, &rmask_default))
{
case 24: /* 8800GTX */
return 384;
case 20: /* 8800GTS */
return 320;
case 8: /* 8600GT/GTS */
case 4: /* 8500GT */
return 128;
}
}
/* Generic algorithm for cards up to the Geforce4 */
return (nv_card->PEXTDEV[0x0/4] & 0x17) ? 128 : 64;
}
tec-buck is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


Similar Threads
Thread Thread Starter Forum Replies Last Post
GPU memory consumption, back buffer, Quadro tdsussman NVIDIA Linux 5 08-14-12 09:14 PM
Video: For HPC Energy Efficiency, Samsung 20-nm Memory Fab Makes a Difference News Archived News Items 0 06-26-12 06:00 AM
Measuring card memory usage peter_ga NVIDIA Linux 0 05-24-12 08:07 PM
new memory tech QBM (Quad band memory) sebazve Rumor Mill 9 09-24-02 09:38 PM
Best DDR Memory... pelly General Hardware 10 09-01-02 04:17 PM

All times are GMT -5. The time now is 04:25 PM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.