Why is FSB Slower than CPU internal speed?

ocd

Distinguished
Feb 21, 2009
32
0
18,530
I am currently involved in the process of selecting the best components for a new build. I have been at it for a long time now researching various articles on Google. I came into this with barely any knowledge of PC components and it is tremendously frustrating.

Please correct me if I'm wrong.

I have found that the CPU has two types of speed. There's an internal speed which is how its advertised. Then there is a Front Side Bus.

This Front Side Bus always seems to be much slower than the CPU internal speed. Is there a reason why this is so? This means that a CPU is able to actually do a lot more work than it can simply because it is operating at the FSB frequency. I also understand that CPU internal speeds are locked, however the FSB can be changed to gain maximum performance.

My questions are, why is the FSB slow? This is clearly a bottleneck. And how can one match the CPU maximum FSB with the maximum FSB supported by the Motherboard? Also, how does RAM play into this?

It has been atleast 2 months of learning, confusion, and the PC I started out building, still is not making sense what components to buy. Why are the CPUs so fast, but only limited by the FSB? Does this mean that I could use my old Pentium 4 to the maximum of its abilities by putting in the fastest supported Motherboard/RAM combination to squeeze out the maximum performance?

I also have a Pentium 3, 933Mhz processor. The Motherboard however only operates at 133 MHz. I was told by a friend that CPUs are quite powerful and that its usually what they are attached to that slows them down. So why don't the Motherboard/RAM manufacturers attempt to match the CPU speeds to eliminate these bottlenecks?

This means that it is probably more economical to buy a slower processor, with the fastest supported FSB Motherboard and RAM combo, rather than a processor which will be bottlenecked by current available motherboards.

If anyone has links which I can read up on how to match CPUs with Motherboards and RAM, I would appreciate that very much. 2 months into it now and I am struggling to organize the facts. This endeavor has been a tough one, but as my first, I would like to continue my research so I can build a system that is most efficient performance wise. Please advise me on this.
 

Crashman

Polypheme
Former Staff
You have a 933 MHz processor. When your computer was made, they couldn't produce a motherboard with a 933 MHz link between the CPU and Chipset because of electromagnetic interference (EMI).

Since then companies have come up with ways to force more bits through each pathway per cycle. Intel's last FSB was 333 MHz, using an advanced design to reduce EMI, and with a "Quad Data Rate" that allowed it to move four bits per pathway per cycle for a data frequency of 1333 MHz.
 
^ +1 although it is 400MHz/1600MTs not 333Mhz/1333MTs ;)

Perhaps a quick trip to Wikipedia's Front Side Bus Article is in order.
It will give you a good overview of the FSBs function and relation to the CPU speed.

Although a faster FSB is generally better for overall system performance, with the current generation Intel Core 2 CPUs (the last CPUs still using a traditional FSB) there is only a minimal performance hit when running the same speed CPU on a slower FSB.
What is much more important is the CPU architecture and clock speeds.

If you need advice for your specific build, please post a budget, preferred etailer and intended usage for the system.
 
It's an old problem. Started with the 486DX2-50.

The problem with the matching that you are talking about is the extreme variability of solid state electronics. Two CPU dies cut from the same, even adjacent, area of the wafer can have entirely different characteristics. Likewise, two successive motherboards from the production line.

It's generally better to seek a balance between the performance of all the components involved. There are certain combinations that make sense and others that don't.
 

B-Unit

Distinguished
Oct 13, 2006
1,837
1
19,810
The FSB is only responsable for transporting data, therefore doesnt need to run nearly as fast as the CPU, which takes said data, processes it, then sends it back on the FSB.

The major bottleneck in todays systems is the hard drive. SSDs are gaining traction, and will do much to alleviate that bottleneck.
 

ocd

Distinguished
Feb 21, 2009
32
0
18,530
The system I am intending to build is primarily a 'Gaming' system. After a lot of reading. I've learned (and correct me if I'm wrong) that Gaming systems seem to be at the top of squeezing maximum performance out of a system while keeping a realistic budget in mind. For this, I am going to be considering DDR3 memory with the Intel Core i7 920 and a matching Motherboard to go along with it. I would like a system that can move data quicker between the Video/Ram and CPU.

Also, I am not in a rush to get a system built and ready to roll. This is because DDR3 is still new, and I have read many articles where DDR2 based systems are out performing some DDR3 configurations. I will continue to research to see what components will be best when it comes to Price/Performance.

I have already decided upon a PSU (a Corsair 620W modular). I already have a SATA 7200RPM hard drive. While I understand that Hard Drives are the primary bottlenecks, SSD is out of the question. It's new technology and definitely very expensive. As for the rest of the hardware, any other bottlenecks with the Motherboard/RAM/Video are what I am trying to avoid.

My main question is, in the end, does the speed really depend on the BUS carrying that data? Why get the fastest processor, when it only inputs/outputs at less than half the speed to the rest of the components? I could be wrong here, but advertising is for sales. The fastest processors seem too powerful and not able to actually do all they can with the other limiting factors of the rest of the components.
 

Fruity

Distinguished
Feb 20, 2009
200
0
18,680


Loving your cynicism!! That kind of talk could put many a well known PC Retailer out of business :D
 



Without being way oversimple here, but it appears that a very simple explanation is all you can grasp. It's because the processor runs EVERYTHING, it must handle instructions to and from all the components at the same time.
You have had some pretty good explainations here in this thread, just what is you are not understanding?

 

ocd

Distinguished
Feb 21, 2009
32
0
18,530
While you can certainly insult my lack of knowledge, insulting my intelligence is another matter. You need to understand that if you know more than someone else, you have to be a little patient. Maybe you got off the wrong way, or maybe I did, but please do have some patience.

What am I not understanding?

FSB has been labeled a bottleneck by Intel. FSB is responsible for communication between CPU and components. Now, why is it that the CPU is always faster in processing information, than it is in sending it out? Shouldn't the CPU send it out just as fast as it can process it?

Think of it as, you have the capacity to do x amount of work. But your output at any given instance is x/2. I am not an expert with this, but this simple reason is probably why Intel decided to ditch the FSB.

Now if you are saying that the CPU Input/Output totals the Total amount of work it does, meaning, I/O = X = internal processor functions, then I understand why the FSB clock was always slower than the internal clock speed.

In any case, please do enlighten me. As you can see, I tend to keep things simplistic and ofcourse I try to make sense out of things. I am very curious to know more about these things without going overboard. Thanks for understanding.


 

ocd

Distinguished
Feb 21, 2009
32
0
18,530
Also, lately I've been noticing quite a lot of hostility on the forums. The reason why most people join these forums is to get help, answers, and knowledge. Not to be bullied or looked down upon. So if you have a problem explaining something, or if you think you will come across as a total jackass, then just avoid posting all together. I'm sure there are a ton of people out there who would post something sufficient, whether I grasp it or not, or whether it is simple or it isn't, just shouldn't concern you should it?
 

Fruity

Distinguished
Feb 20, 2009
200
0
18,680
ocd,
i can't answer all of your questions, but here a (re)start:

'Yes' it can pay to trade slower processor speed for a higher FSB speed, although all of the Core i7's use the same FSB (not that it operates in the same as Intels traditional FSB - refer to the wikipedia article linked above).

Processors can have different input to output rates, depending on the operations that it has to perform on the data. This is especially the case with multi-cores processors (each core can be working on different instructions).

Additional:

Think carefuly about the northbridge chipset that you get on your new system; the northbridge acts as a hub for the rest of the high speed data links in the PC (a Memory Controller Hub, to be precise!). If it isn't capable of processing data through it fast enough then you will effectively reduce system efficiency.

Processor cache may help to reduce FSB bottlenecks - the more cache you have the less requests to RAM need to be made over the FSB. The cache is used to store 'frequently used instructions', which would otherwise have to be held elsewhere on your system.


All-in-all, if your budget allows and you have concerns, go for the Core i7 with an X58 chipset and triple channel DDR3. But i guess the final choice of processor comes down to what you will use the PC for and how long you want it to be before you upgrade. One thing is for sure - spending more doesn't necessarily result in a better PC, but then i suspect you know that or you wouldn't be asking the questions!

While the Core i7 is undoubtedly a top notch processor, you may find that perfectly acceptable results are acheivable by using a high core 2 duo processor, afterall, there are not many games out there that can even use four processor cores anyway. That will change over the next few months & years, but at least with a C2D processor you can always upgrade to C2Q at relatively little cost.

hth and sorry if you've been offended by any comments people have made.
 

The FSB is not always a bottleneck, only on extremely memory intensive operations. Intel has only stated it is a bottleneck on certain operations. If you want proof that it isn't always a bottleneck, compare the numbers for the i7 with hyperthreading off compared to the Core 2 Quad at the same speed. You will find that in several tasks, there is little to no appreciable difference between those, implying that the FSB is not a bottleneck.


It is nowhere near that simple. The FSB has the capability to transfer a certain amount of data per second. That is all that matters - data bandwidth. How much data the CPU can process per second depends on the operation being performed. Some operations take a relatively long time while using a fairly small quantity of data. These operations will not be bottlenecked at all. This type of application is also fairly representative of normal desktop workloads. On the other hand, some applications run quite fast on a very large amount of data. In these cases, the FSB may be saturated before the CPU cores are saturated. This is nowhere near as common as you seem to think though, and it definitely isn't the case that 1 FSB transfer is needed for every CPU clock cycle used.


As nice of a philosophy as that is, oversimplifying things only causes misunderstandings in this case. As I said, what matters is whether the application requires immense amounts of data or small amounts, and the FSB is not directly connected to the CPU cores anyways. Think of it this way: each CPU task requires some quantity of data. This data is acquired by the FSB, but it is actually stored in the CPU cache prior to the CPU processing it. Therefore, all that matters on this side of the equation is that the FSB can transfer enough data (regardless of how it does the transfer). Similarly, once the CPU is done processing the data, it is temporarily stored in the cache prior to being sent out to the system, so there need not be any direct correlation between the number of clock cycles performed and the number of FSB transfers required to transport the data.
 

smartel7070

Distinguished
Feb 26, 2006
584
0
18,980


I wouldn't call it hostility ...... maybe lack of patience ..... a lot of newcomers ask really simple questions that they could have gotten answered with a simple google search.

There a a lot of very knowledgeable members here who have been using computers for a long time. Even before the internet, if anyone can remember such a prehistoric time.

Let me give you an personal example. When I started out with pc's (94, 95)I knew nothing about it. I worked with a friend who was using pc's for a couple of years. Back then we were running pre-release beta versions of Win95. Whenever I had problems with my computer at home I called my friend who had way more knowledge than me. And every time I called him he gave me the same answer: Learn yourself !!! He wasn't hostile he just wanted me to learn and try stuff on my own. I know for sure now that if that friend had given me the answers I wouldn't be working as a network admin now.

Now as for your question, it shows that you don't really understand some of the basics of the way a pc works. The FSB does not need to work at the same speed as the cpu. It only transports data, it does not process it. If the FSB was the same speed as the cpu, the fsb would be waiting on the cpu most of the time.

When there is a need for speedier data tranfers, new technology comes out. Graphic card used to be on the PCI bus, which operates at 33mhz. When this speed was no longer sufficient for the cards to perform Intel introduced the AGP bus which operated at 66mhz. And after that now we have PCI-E which operates at 100mhz.

Now that the FSB is an important bottleneck with modern cpu's, both Intel and AMD moved the memory controller on the cpu die so data could be fed faster to the cpu.

Am I being hostile ?? :heink:
 

ocd

Distinguished
Feb 21, 2009
32
0
18,530
Smartel, THANK YOU. This was perhaps the best and the nicest reply someone has given me for my 'simplistic' questions.
Your reply is great and let me tell you, during a course of my day, I get asked many questions. The only time I am unwilling to provide an answer is when I know for a fact that I am dealing with someone will refuse to understand the subject from any angle (as impossible as that may seem, some people actually do hear it and forget it, which seems rather interesting specially since they are the ones who introduced the question in the first place)

In this case, Can I also safely say that the FSB provided for a socket is sufficient for its Processor(s)? Whether it be a Pentium Dual Core or Core 2 Duo, in a 775 Socket. Will both output to the FSB at the same rate or does the FSB adjust itself (manually or auto) within the BIOS?

In any case, thank you once again for your answer. Your patience is much appreciated and this is the type of member I would be. If I did not have anything nice to say, I would not say it at all. Believe me, I read or hear some things and I begin by trying to understand what they are really asking. Once I understand, then I tell them that the question can be asked in a better way. Then I proceed to help them with the answer. Knowing something is good, but sharing it with others rather than making them feel below yourself is a rather nasty approach to life. Knowledge is power but spreading that knowledge is a large part of wisdom. Thank you.



 

japps2

Distinguished
Oct 16, 2007
553
0
19,060
ocd,

for the most part, yes the socket is matched to what the processor series can put out. As socket 775 got saturated to the limits with the QX9770, intel integrated the memory controller and came out with the i7. But keep in mind (as smartel put it perfectly) that the simple transport of information requires much less horsepower than processing. CPU's and GPU's (graphics cards) have enormous computing power...but the bandwidth needed to transport the data doesn't need to be extreme. In fact the PCIe 2.0 connection for your videocard can handle much more bandwidth than videocards can send through. And as stated, it's only running at 100MHz. Overclocking it to 105MHz actually decreased performance for me on several tests.
 


You can't always say that a FSB is sufficient, as it depends heavily on the workload. The FSB is fixed for a given processor line, and it is certainly adequate for most tasks, but there are some tasks (mostly related to server and high performance computing uses rather than desktop tasks) for which the FSB is not adequate, and becomes the bottleneck. In addition, the Core series of CPUs has rather aggressive prefetchers which try to anticipate which data will be used before the CPU even asks for it, and then brings that data in across the FSB and into the CPU cache. This allows the CPU to then pull this directly from the cache when it is needed, and the FSB isn't even needed in these cases (which is part of the reason why the Core 2 series has so much cache compared to the AMD CPUs, or even the i7). Basically, I can say that the FSB in Intel's current lineup is adequate for normal desktop tasks almost 100% of the time.

Oh, and yes, the CPU is matched to the appropriate FSB speed. The older P4 CPUs ran at 667-800 MT/s FSB, and then the 65nm Core 2s ran at 1066MT/s because they needed more bandwidth. Then, the 45nm Core 2's upped that further to 1333MT/s.
 

RJR

Distinguished
Jan 7, 2009
1,065
0
19,360


Here's a graph that shows the theoretical bandwidth of the i7 system. You can see that with an onchip memory controller, PCIE 2.0 and triple channel memory lanes you don't have any worries about FSB bandwith. You may want to reconsider your PSU when you know what your exact system configurations are depending on your OC and number of GPU's since it's strickly a gaming setup. You may also want to take a look at 10,000 RPM HDD's (since the SSD's are out), the egg has got the Velociraptor (300 GB) on sale for 189.99 after MIR at the moment.

my.php
[/URL] [/img]