This forum is in permanent archive mode. Our new active community can be found here.

Really, how awesome is a Core 2 Duo?

edited May 2007 in Technology
So I'm sitting here at work. I've finished all my assignments. I'm bored. I've got my laptop, and I've got my badass work PC. What should I do with this vast amount of computing power at my fingertips? I know, I'll measure this vast amount of computing power!

How will I measure it? Well, I need to find something to make the computer do that only requires CPU power. The obvious answer is, compiling. Taking source code and compiling it into a working binary application is pretty much dependent entirely on the CPU. I can time how long it takes each machine to compile the same exact program, and that will show how much faster the Core 2 Duo is. It helps that both my work machine and my laptop both run Feisty, so all software factors are equal. To compile, I needed a somewhat complicated application that I knew would work in Feisty. I chose to compile gaim 1.5 from source.

Let's not bother prancing around, here are the results.

My laptop has an Intel Core Solo U1400 CPU @ 1.2GHz.

It took 3 minutes and 21.651 seconds to compile gaim 1.5 on the laptop.

My desktop at work has an Intel Core 2 Duo 6300@1.86GHz.

Using just one of the cores, it took 2 minutes and 3.546 seconds to compile gaim.

And what you've all been waiting for.

Using both cores, it took 1 minute and 12.727 seconds to compile gaim.

So, just in case you were wondering. Core 2 Duos are fucking fast. Holy shit. This is only the 6300, and it's a Dell. Imagine how fast it would be if it were the 6600 on a real motherboard. You could probably build a Gentoo system in one day with one of these things. That's insane.

Comments

  • Dell doesn't always use the fastest memory either. Plus, you could build a PC with two Raptor HDs using RAID 0 and that would speed things up too. And there's always overclocking...
  • Dell doesn't always use the fastest memory either. Plus, you could build a PC with two Raptor HDs using RAID 0 and that would speed things up too. And there's always overclocking...
    That's the reason I did a test compiling. A RAID 0 isn't really going to help the compiling speed in any significant fashion. Faster RAM can help, but not much. The CPU was pretty much maxed out the entire time it was compiling, so that was definitely the bottleneck.
  • If you're going to just be doing compiling you're probably not going to benefit that much from a Core Duo. I doubt there are any compilers available right now that could make use of SMP, although I image you could actually hack gcc to make an internal representation of code with one thread, optomize it with another, and translate that to machine code with a third. I wouldn't think compiling code would have the sort of local fine grain parallelism that would let you take advantage of the Core Duo's wider superscalar architecture, let alone parallelism regular enough to take advantage of its new SIMD instructions.
  • If you're going to just be doing compiling you're probably not going to benefit that much from a Core Duo. I doubt there are any compilers available right now that could make use ofSMP, although I image you could actually hack gcc to make an internal representation of code with one thread, optomize it with another, and translate that to machine code with a third. I wouldn't think compiling code would have the sort of local fine grain parallelism that would let you take advantage of the Core Duo's widersuperscalararchitecture, let alone parallelism regular enough to take advantage of its newSIMDinstructions.
    Um, I think I just demonstrated that yes, in fact compiling does take advantage of multiple cores. In Linux it's simply a matter of make -j3 instead of make. The j argument to make specifies the number of jobs make should run simultaneously. If you set it at one higher than the number of cpus/cores that you have, it will take full advantage.

    That's how I tested compiling with just one of the two cores. I did make -j2. My CPU usage graph was 50% full the entire time. When I did make -j3, the CPU usage graph was almost 100% full the entire time. The Linux kernel process scheduler and the SMP code therein is some of the best on earth. Even if you don't have a multi-threaded application, it properly schedules separate processes to separate cores to make the most out of what your CPU has to offer.
  • In everyday use(some gaming and video converting), do you think there is a noticeable difference in processing power of the 1.6Ghz Core Duo versus the 1.66Ghz Core 2 Duo? When I bought my laptop, I got the 1.6Ghz Core Duo because the Core 2 Duo would of cost $75 more. I thought about getting the Core 2 Duo but could not justify the price difference.
  • There definitely is a difference between the Core Duo and the Core 2 Duo. Although, I am not qualified to tell you what the difference is. The Core 2 Duo is definitely better, but how much better is hard to say. Whether it would have been worth $75 more at the time you purchased it is pretty difficult to say. All I can definitely say is that at the present point in time most people will want to buy Core 2 Duos. The prices have dropped now, so there is no reason to get the older chip.
  • I'll be receiving my laptop with a Core 2 in the mail any day now. If you want, I'll run the same test and see how it compares. After all, you were comparing a desktop to a laptop.
  • Dude, that Core 2 Duo has a 55% higher clockrate and it compiled your code 70% faster than the Core Solo, that doesn't sound like taking full advantage of SMP to me. I guess gcc can run the front and back ends as separate threads now, but if you're getting such little benefit from SMP either the workloads have to be pretty asymetric or your program is big enough that you're getting enough cache missed that memory latency is playing a factor. Actually, from what I know about how they make memory buses for laptops the speed differential there ought to actually be just as big as in the processor.
Sign In or Register to comment.