Computing Power Skirmish

By ET

I have to make some heavy computations these days.  It gives me a chance to compare the computing power of my two computers.
On both machines, I have the same version of MySQL.  The program, written in Perl, conducts some complex calculations based on MySQL data.
skirmish
Dell-Mac Skirmish
It is interesting to observe that my Macbook Pro actually performs better than my Dell Server.  The above figure shows 5 random sampling points, at which I count how many data records have been processed since last sampling.  Macbook constantly beats Dell.
Here are the specs:
Dell:
Dual Quad-Core Xeon CPU 2.33GHz, 32GB Memory, 1T HDD, Windows 7 64 Bit
Macbook Pro:
Core 2 Duo Intel CPU 2.8GHz, 8GB Memory, 500G HDD, Snow Leopard 64 Bit
Due to the nature of the program, only 1 CPU-Core can be used, this may explain the disadvantage of Dell. (Although it has 8 cores, 4 times that of the Macbook Pro.)
UPDATE:
A few more hours of data keep supporting the advantage of Macbook:

dellmac

4 Responses to “Computing Power Skirmish”

  1. Wei Says:

    Interesting.

    I used to do some analysis over 30 years of labor econ data. I ran a regression for each year of data. If your job is similar to this, maybe you can very simply bring in some concurrency to “fully utilize” the computing power:

    (1) Write the script that takes input of the year, and do analysis for a single year.
    (2) Use some simple multi-threading to make the active threads to be fixed at X at any time. X = 8 for your dell server.

    I guess that will make the computation faster. :)

  2. ET Says:

    so you are suggesting adding that “thread_concurrency=8″ option in my.ini? From what I read, it only works in Solaris machines. Anything involving rebooting MySQL is out of the question now, I’m actually quite happy with the speed, it should be finished in less than 10 hours.

  3. Wei Says:

    No, I meant you implement the multi-threading part in your own code. This is pretty easy to do with C# or Java.

    Anyway, if you seldomly need to do that much computation, maybe it is not worthy to make your program more complex. Also, 10 hour is not that long because it can overlap with your sleep, lunch, lectures, etc.

    I once thought about writing a simple distributed computing framework for Stata to utilize all lab computers during the night to speed up my computation. I didn’t do that because I haven’t encountered heavy computing tasks after my labor econ course project.

  4. ET Says:

    This reminds me a way to do it in perl. It is as simple as creating 8 sessions in the beginning and use each of them sequentially in the loop for data processing. I’m almost sure this works…

    No need to do it now though, as the program has triumphantly ended.

Leave a Reply


BlogTimer
You are visitor number several since September 1, 2001

Copyright Xiaoquan (Michael) Zhang, 2004-2020. All rights reserved.
All trademarks property of their owners.