Faster FSB speed or faster processor speed?

I’m customizing a new laptop for myself through the dell website. I have a $1000 budget and am doing the balancing act to keep the price at my budget. Anyways i’m wanting to know the real world difference between these 2 options:

(2.10GHz/800Mhz FSB/2MB cache)

vs.

(2.00GHz/1066Mhz FSB/3MB cache) -costs $50 more

Is the faster bus speed and xtra cache gonna make a big difference? Notice the processor speed is a bit lower.

I use my computer Skype, gaming, but nothing terribly graphic intensive. WoW, some shooters from a few years back. Music downloads and playback, blah blah.

My thoughts are to go with option 2 as the bus speed on option 1 is gonna be a bottleneck. Although there is probably not a huge difference. As I said, I have a $1000 budget. option 1 puts me at $930, option 2 at $980. What do you think?

Oh, and I will occasionally have to use it for work related stuff. In that situation, i’ll have VMWare running and and connected to a VPN. I dont know if that’s relevant or not.

Absolutely no doubt at all, the more expensive processor will be faster.

Raw clock rate only has a mild correlation with performance. You can’t use the processor speed if you can’t feed it data. The big win is the 3MB cache, but the faster FSB is also a win. Also, the clock rate does not have a direct relationship with the work done by the processor, even if it has the data it needs. The newer procssor architectures from Intel have a lot of very interesting smarts that more than compensate for a slight drop in clock rate.

In truth there is more to the comparison than this - these are different processors in many other ways, but the basics are there. These other differences make the difference even greater.

Need for VMWare may make a difference. Not all Intel processors have the new vitualisation support instructions. The more expensive one does. If the processor doesn’t, VMWare will probably suck for air a little.

How exactly does the larger cache affect things? For example on the one with the 1066mhz bus, there is an option to go to a 6MB cache instead of the 3MB I asked about. It’s more than I want to pay, but what would the upgrade do? Also, does anyone know if Windows 7 (home version) will be able to use more than 4G RAM?

<snipped because I know this one!>

If you get the 64 bit version. The limit is pretty much hard coded into the 32 bit architecture. I’m sure they could develop a hack to get around it, but with 64-bit processing available, why bother? Very few people even have a 32-bit processor anymore. People are surmising that Windows 8 will entirely drop support for 32 bit processors.

Unfortunately, I know nothing about the hardware/CPU side. I just trust the benchmarks.

OK, a quick lesson in processor architecture.

Modern processors have got faster over the years a great deal faster than the rest of the computer system. In particular the processor core - the bit that does the actual computation has become much faster than the memory it uses. Many many years ago there wasn’t a great deal of difference in the time it took to fetch data from memory and the time it took to say add two numbers together. Now the difference is of the order of a hundred times. Clearly this is bad. Indeed if there wasn’t a fix, computers would be very substantially slower than they are today.

The big win is to notice that programs have temporal locality. That is, things that they have used recently, tend to get used again pretty soon. Also they have spatial locality, things you need soon, are often close by in memory to things you recently used. Also, it is possible to make very very fast memory, that is close in speed to modern processors cores. But it is much much less dense, and much more power hungry than ordinary memory. Plus, in order to access it quickly you really need to have it physically right next to the processor core on the same chip. This very fast, but small memory is called cache. The other trick is that we can make the cache operate automatically, buy adding a heap of extra logic, which keeps looking at the memory requests that the processor makes, and short circuits them if the data needed is already in cache. And we make the cache operate in small blocks - so that the data held is in small blocks of memory addresses that are next to one another. Thus we can take advantage of both temporal and spatial locality. If we fetch a data item from memory, the cache controller will ask the memory system for the entire cache block surrounding that data item, and store it. If either that data item, or a close neighbour is needed again soon, it is ready and waiting to be delivered much faster than if the processor had to go all the way to memory. This is a massive win.

As time has gone on, we find that the balance between really fast performance, and the amount of data we can hold in cache starts to fail, and we really wish we had a much bigger cache, but we can’t make it fast enough. So the easy answer, add another layer of cache. So we have really fast, but not very big, and pretty fast, and much bigger cache. These are level 1 and level 2 caches. Very high end processors have three levels of cache. Expect even more.

The problem is of course that eventually a cache gets full. Then the cache controller throws away some data (writing it back to memory it it needs to) and reuses the space so freed for new data. Clearly it might have to throw away data that was actually still in use, and thus the program pays a penalty to get that data back again. In the worst case you can get cache thrashing behaviour.

So, no matter what, more cache means more data held close to the processor core, and the faster the machine will be.

The difference is access speeds is pretty impressive. I haven’t looked at the later x86 offering, but a typical set of numbers would be - access to data already in the processor, some fraction of a clock cycle. Access to level 1 cache - say three cycles. Access to level 2 cache - say 25 cycles. Access to memory - hundred plus cycles. That 3MB versus 6MB of cache is the level 2 cache. For completeness, it is worth noting that the level 1 caches are per core caches - and there are two per core - one for data and one for program code. The level 2 cache is shared between the two cores and can hold both code and data.

NETA: For once, a Yahoo Answers link seems pertinent. If you are comparing the chips I think you are, you will also get a longer battery life and cooler operation out of the more expensive model.

Really, the chip model number is probably more useful to me than the actual specs. As I said, I look at benchmarks, not pure tech specs.

I was about to be baffled by some of the answers here but the Yahoo link has covered it, to an uh T, well done BigT most appropriate name given the circs.

As it says there, given the CPU models are similar, the performance difference will be negligible in practical terms for most applications, the difference will be in battery life and heat.

If you’re wanting to play shooters you will want to make sure it has a reasonable 3d card, many laptops are intended mostly for business use and will have woeful 3d game performance, even for older shooters.

You can google for the benchmarks for both. Generally, for typical tasks you want the faster FSB and bigger cache. For your uses its splitting hairs. Depend what $50 is worth to you? A lot? Then dont waste it.

If youre concerned about gaming then Otara is right, youre most likely bound by video card performance not CPU. Id spring for the better videocard before I spring for the better CPU especially with this little difference.