Jump to content
  • Advertisement
Sign in to follow this  
manonoc

graphics card's frequencies

This topic is 3762 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm wonder about the 3 frequencies, seen on the NVIDIA site: GeForce 9600 GT Stream Processors 64 Core Clock (MHz) 650 MHz Shader Clock (MHz) 1625 MHz Memory Clock (MHz) 900 MHz Memory Amount 512MB Memory Interface 256-bit Memory Bandwidth (GB/sec) 57.6 Texture Fill Rate (billion/sec) 20.8 the memory clock is the frequency we can read memory, ok so 256 -> 32 bytes at 900MHz = 28800 Mb/sec = 28.8 Gb/sec (if 1G = 1000 M) but strangely, the memory bandwidth is 57.6 (=28.8 * 2) from where is the coefficient 2 ? (from DDR2 ? double data rate ?) there my first question. second question: the shader clock is the speed to process one vertex (or one pixel ?) through this shader ? third one: but what is the core clock ? (the frequency at which the rest of the pipeline is executed ?) thanks

Share this post


Link to post
Share on other sites
Advertisement
Probably the hardware guru's here can help you much better, but I'd like to give a shot. Excuse me if I'm telling nonsense :)

The shader clock speed tells you how many instructions per second can be done, not vertices or pixels. Nowadays each vertex/pixel can have a shader program to calculate its output. This can be a fairly simple program, or a very complex one. Thus, you can't exactly tell how many pixels/vertices can be processed per second. Just like on a CPU, a program is a list of instructions (move, add, subtract, multiply, divide, ... ). Simple instructions take 1 cycle, more complex instructions could take more.

I think the bandwidth is to indicate how much data can be processed parallel > at the same time. A car can drive 200 km/h on the highway, but the traffic gets stuck if too many cars try at the same time. A shader can get data from multiple textures at the same time. If you need 8 huge textures at the same time, you probably slow down the whole thing because the limited bandwidth. So, the memory clock could work faster than the bandwidth may allow, or vice-versa, you never take full use of the available bandwidth if the memory clock is relative slow (200 cars driving with 10 km/h on a huge highway).

Greetings,
Rick

Share this post


Link to post
Share on other sites
The 2x bandwidth comes from the fact that the memory is DDR, which means it can transfer data twice per clock tick (once on the rising edge, once on the falling edge). It's for this reason that 400 MHz DDR RAM is referred to as "DDR 800".

Share this post


Link to post
Share on other sites
Also, don't forget than the new-gen NVIDIA video cards are composed of several multiprocessors with a central scheduling system which dispatches computation blocks to the multiprocessors and handles interaction with the outside world. The shader clock represents the multiprocessor clock, while the core clock represents the central system clock.

Either way, this is an extremely optimistic best-case description. The GPU is fragile enough to get stalled at the first sign of suboptimal resource use. For instance, your 57.6 GB/sec bandwith will get you nowhere if your shader requires unaligned sub-pixel access (which usually divides bandwidth by 128), and you 1625 MHz shader clock will be useless if memory latency divides your execution speed by 400.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!