Excel multi-threading calculations on 8 processors

Ever wondered what it means to have Excel multi-thread its calculations?  On a 64bit I7 computer, crunching 500,000 rows of calculations for the Euler 36 problem resulted in the below.  The display was from the 64bit version of the Process Explorer program (www.sysinternals.com though now a part of Microsoft at http://technet.microsoft.com/en-us/sysinternals/default.aspx).

img5

HTML clipboard

Posted in Uncategorized

5 thoughts on “Excel multi-threading calculations on 8 processors

  1. Multi-threading is the future of high performance computing, since CPU makers threw the towel at Moore’s Law.

    What always strike me as creepy is that there are some Excel users who really think they have a high performance computational tool in their hands.

    No, what you see is not multi-threading. It’s nothing but ONE thread being distributed into your 8 cores.

    Once again, if you want speed and reliability, leave Excel for a serious program.

    Regards,
    Karl

  2. Karl,

    Excel 2007 has a multi-threaded calculation engine which splits the calculation chain into multiple threads and allocates to the available cores.

    but everything else in Excel (including VBA) is still single-threaded.

  3. They are all procesing at the same time. Peaks and valleys match on all 8 procesors. Not very efficient not too mention bad use of capacity.

  4. “They are all procesing at the same time….”

    Yes, but most of the processing seems to be kernel (red), not application (green) cycles. I am not sure what kernel activities might have been loading the processors, but suspect that most of the application work was completed by the first, second, and seventh (from the left) CPUs, with a very little amount by the sixth, and probably in the last interval after the three peaks that are common to all processors…


Posting code? Use <pre> tags for VBA and <code> tags for inline.

Leave a Reply

Your email address will not be published.