How to determine where a bottleneck is in a given system

Hi.

I would very much like to understand how to build a system that is as balanced as posible.

It is obvious that 4 major things need to be considered :
CPU
RAM
FSB
GPU

Under each there are a subset of specs that are relevant?

Now givin a system. My aging Pentium Duel Core :

Pentium Duel E5200 @ 2.9GHz
Kingston 3GB(1GB+2GB) 800Mhz RAM
MSI G31M3-F 1600MHz FSB
Biostar 9600GT 512MB
550W Coolermaster Extreme Power Plus

Where is the bottleneck and how can I work this out?

At first glance I would say the CPU. But I do not know how to determine this.

I would also like an explanation as to what the relationship is between CPU and GPU spesifically?
For example what constitutes an overkill GPU when considering the capabilities of the CPU.

I will be building a new PC soon and would like to know as much as possible before deciding.

Thanks beforehand.

PS EDIT : The focus of this thread is not on my current system nor on my upcoming build.
 

Petrofsky

Distinguished
Aug 22, 2008
520
0
19,060
Your question is the one everyone is asking all the time. Do I have enough CPU for my GPU, and vice versa? It's not an exact science. One reason is that some games use the CPU much more than others, like GTA, and others, like Crysis, lean heavily on the GPU. The upshot is that, since we have only so much money to spend, if we want to be able to play the widest variety of games, we should split our money between the CPU and GPU to achieve a balanced system. You could do worse than to try to select parts from similar tiers in Tom's hardware charts. Take the Gaming CPU Hierarchy Chart and the Graphics Card Hierarchy Chart , and pick from roughly the same level. (I'd say weight it toward a better GPU, because a weak GPU will affect performance more than a weak CPU, as a rule. But that's me. My Flintstone Phenom is bottlenecking my GTX 295 as we speak.)

There are additional criteria for selecting CPU and GPU besides cost and balance, like upgradability (mobo socket), possibility of future Crossfire or SLI, CUDA if you do Folding, overkill, etc.

I never think about the FSB, and any good memory is plenty fast enough these days.
 
lol thanks, i have built quite a few succesful PC's that perform great. But I need numbers and intercomponent comparison.
I am aware of all the general things to consider.

For example, I want to get a better GPU until I get a new system in a few months(then I just tranfer the GPU to new system), but I do not know what would be too much for my CPU.
There would be no point in getting an HD69xx for example.

What I am asking for here is a way to work this out with numbers(if only estimated numbers). Not speculation.

It must be possible to do this.
 

Petrofsky

Distinguished
Aug 22, 2008
520
0
19,060
You want a general quantification of CPU performance and GPU performance. Interesting, because even if you could do it, the figures would be useless. For one thing, if a rig is dedicated to a purpose, a general number would not help in selection. For another, a general number would have to ignore the different capabilities of nVidia cards vs. ATIs. The problem is not as simple as that. You have to look at the purpose of your machine and what you want out of it and select accordingly, weighing every factor you can find. (I'm broadcasting here, not trying to tell you anything you don't already know.)
 
The system above is a fairly balanced all around home PC.
What is you want to do with your upcoming build and what is your budget, these are more sensible things that we need to know to point you in a general direction.
If you told us you use photoshop a lot, then the CPU and memory is lacking, if you told us you do some mild gaming, then you would benefit first from a GPU upgrade, as that old 9600 is slow and dated for gaming. If you are into heavy gaming, you need a whole new build. If you only surf the internet, download music, and use the PC for basic Office work, you don't need to do anything.
I guess you understand that the memory configuration you are running is also preventing you from running your memory in dual channel mode? This can also have a negative effect to varying degrees depending on what you are doing with the PC.
 
For gaming, my list, in order of importance, would be:
GPU
CPU
RAM
Hard drive.
To help clarify your options, run these two tests:

a) Run your games, but lower your resolution and eye candy.
If your FPS increases, it indicates that your cpu is strong enough to drive a better graphics configuration.

b) Limit your cpu, either by reducing the OC, or, in windows power management, limit the maximum cpu% to something like 70%.
If your FPS drops significantly, it is an indicator that your cpu is the limiting factor, and a cpu upgrade is in order.

It is possible that both tests are positive, indicating that you have a well balanced system, and both cpu and gpu need to be upgraded to get better gaming FPS.

As to ram, no game, by itself will use more than two or three gb. But, since ram is so cheap these days, I consider 8gb(2 x 4gb) as a standard.
If you multitask at all, 8gb is highly recommended. 8gb will hold more of your stuff in ram, ready for instant reuse.

If you are on anything more than a minimal budget, consider using a SSD for at least the boot drive, and a few apps.
60gb is minimum, and 120gb will hold some games. Use a hard drive for storage and overflow.

On the cpu, games will use no more than two or three cores as a rule. The performance of the cores is more important.
If your cpu budget is $200 or so, you can't do better than a 2500K. It will run any graphics configuration well.
If your cpu budget is $150 or less, then amd and intel have viable options. Do not discount the dual core 2100 for a budget build.

For graphics, the market is very competitive, and you mostly get what you pay for.
Something like a GTX560ti or 6950 is very good for 1080P resolutions. Past that, you get diminishing increases in performance for your dollar.
UNless you are looking at triple monitor gaming, I would avoid sli or crossfire. A good single card will be simpler and cheaper.
Dual low end cards show good benchmarks, but are susceptible to microstuttering.
 

caqde

Distinguished
When picking a limiting factor I usually try and find out what is limiting me. What am I trying to do and what part in my system is slowing me down. Am I running out of memory, is my processor loaded completely, or is my computer waiting for data from storage. These are easy to figure out using a program like Process Explorer or the Windows Resource Manager. Although with the CPU you need to watch the usage a bit differently than you would other components if your CPU usage is consistently 50% on a given task using a Dual Core CPU (100% / Number of Cores(2) * Cores in use(1)) then your limitation for that task is your processors weakness in Single Threaded tasks. In this case you would be looking for a processor with a higher clock speed, more cache, and/or higher IPC.

Although if you have a limitation in games finding your limitation is not going to be as easy. A weak cpu in one game could be strong in another. A limitation that seems like it is the GPU could actually be the CPU. There are tools like GPU-Z and Process Explorer that you could use to monitor the usage of both the GPU and CPU but I am not sure if that would give accurate information on what part of your computer is under the most load, but it is worth a shot. I personally haven't tried it as other applications usually give me issues with my CPU first and I upgrade my GPU based on my needs using research from Toms Hardware and other sites.
 

boju

Titan
Ambassador
cpu & gpu is most important

the guys above are ready to recommend you the latest with good advice. Depending what you want to do with your new build and im assuming heavy applications/and or gaming because you're bottleneck aware, going new and tested might be best for you.

To extensively test the limits of new hardware could take ages. Even the latest gpus 'could' be lacking a respectable amount of cpu horse power simply because there isn’t anything else faster to test with.

Back in the day when i used the same gpu (geforce 3) in a couple of builds; Pentium 3 600mhz and p4 1.6ghz there was a sweat spot for the graphics card between 1-1.6ghz. Now the geforce3 came out roughly when the p3 600mhz was the latest. It needed the xtra oomph to really flex the geforce's muscles. Upgrading to p4 2ghz didn’t see any more improvement in 3dmark 2001 over the p4 1.6ghz. Graphics cards of today behave the same way; influenced by the speed of the cpu.

Its better to have more than enough then not enough.








 


I am aware of the limitations of my current system. I have a 32-bit windows so more than 3 GB RAM is pointless.

This threads focus is not on my current nor on my upcoming build.

I am interested in bottlenecks specifically. Out of interest sake and not for any practical reason as yet.
 


Thank you, the steps for checking for limitations was quite helpful. Retroactively it could work when upgrading a system but I would like to apply the same theory on a new build as well.

I figured out that my system is pretty balanced and that at 2.9GHz I can upgrade my GPU abit for gaming, but not enough that seems worthwhile.

As for suggestions on new build, thanks but as I said on previous post, that is not the aim of this thread.

 

neonneophyte

Distinguished
Feb 18, 2010
159
0
18,710
pretty balanced system, but if you want to see what you bottleneck is, monitor your gpu and cpu use when running your game. if the gpu runs at 100 percent and the cpu less than 100 percent, the gpu is the limiting factor. if the cpu runs at 100 percent and the gpu less than 100 percent, the cpu is your limiting factor.

i can tell you right now though, in startcraft, you cpu is going to limit you. in metro, it will be your gpu
 


I happen to like Coolermaster, I got this PSU after the old one gave problems because it is priced well for a not to noisy PSU. I am unwilling to spend money on this PC that can not be transferred to the new build.

But I stress this again, MY CURRENT BUILD OR UPCOMING BUILD IS NOT THE FOCUS OF THIS THREAD.
 


Indirectly, your current build and/or future build is the focus of your thread. What you're asking for is a systematic way to quantify where to spend your money to increase performance. You will then take this knowledge and apply it to your future build. We understand that you want to know what is bottlenecking your current system.

In an effort to not reinvent the wheel here, geofelt gave a very good explanation on how to test for bottlenecks between the two most important components. In your defense, though, nobody has given you the explanation of the relationship between any of the four topics you're concerned with.

The GPU cannot work independently; it still needs to work with the CPU. So, the relationship here is that when it comes to display, the GPU renders all things graphical, while the CPU handles the rest. Let's use Starcraft as an example (since it was mentioned earlier). In Starcraft, you could split up the graphics into several categories: colors, shades, shapes, etc. But once you've finished separating all of the things you see within the game, ask yourself how it all works together. How does good ol' Jim Raynor move from Point A to Point B? This is where the CPU comes in.

The CPU is taking the command from the mouse/keyboard to move Mr. Raynor, but, at the same time, the game is demanding attention from the CPU to load the terrain, monsters, other players, npcs, etc. During this time, if the CPU cannot meet the demands, your game performance will decrease. This is what is known as a CPU bottleneck. By performing the tests recommended by geofelt, you'll be able to determine which component is causing your bottleneck.

The role of RAM is to assist the CPU. CPUs cannot communicate directly with an HDD because the HDD is too slow. RAM enters the picture because the game is installed on the HDD, and the game's files are pulled from storage and temporarily put into RAM so that the CPU can process its workload to make the game run. The quality of RAM is based on three major factors: Latency, Voltage, and Frequency. The latency tells us how many clock cycles are needed for information to be "handled" by the RAM. The voltage rating is the amount of energy the DIMM needs in order to operate. The frequency is necessary to determine the speed of the RAM. The actual speed of your RAM is the RAM:CPU multiplier/ratio times the FSB.

To sum it all up, GPUs render the graphics-related tasks (such as shapes and colors), but the CPU takes care of level loading, player placement, etc. RAM assists the CPU by temporarily storing the game files that will be processed by the CPU and GPU.
 
Eish... Now I am being told what I created this thread for. This thread is purely academical.

T_T I am fully aware of the general role that each component plays. I am interested in numbers. SPECIFICS.

I only mentioned a new build in passing, it is not relevant in ANY way until such a time as I actually build it. (I have not even looked at a budget so far out of scope it is)
This thread is PURELY ACADEMICAL as I said.

Please stop trolling people.
 


Enter geofelts response on testing for bottlenecks.

Seems straight forward to me.



If you know this, why ask?



Ultimately, the reason for your post...

Where did we miss the point?

What number are you looking for?

 
Hi, WIN7 has some nice tools to find bottlenecks. Open task manager. Open the performance tab. Click on 'resource monitor'. Run this in the background during a period when you want to go faster. Look at he graphs. Were you 100% CU? Was disk a problem? Are you paging ? Network? -- pretty nice. Not a final answer, but gives you a good place to start looking.

p.s. discussing 'bottlenecks' without discussing 'workloads' is futile. Most people here will reasonably assume a gaming workload then decide if the system is 'balanced' or 'bottlenecked'. If what you want is a video render farm or a chip sim lab or a web server they will give you bad advice, which would be on you for not making it clear what workload you want optimized.
 

G6ET1987

Distinguished
Sep 25, 2011
68
0
18,640
IMO there is no way to work this out with pure numbers, this will be different from person to person and dependant on the underlying intent of the build.

I think the best way to build a well balanced system is doing your research and knowing the current market as best as you can.