Web Images Videos Maps News Shopping Google Mail more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Message from discussion activate more than one core in Mathematica 6.0 (for win)?
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Follow-up To:
Add Cc | Add Follow-up to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers that you hear
 
michael.p.crouc...@googlemail.com  
View profile   Translate to Translated (View Original)
 More options 4 Aug 2007, 11:01
Newsgroups: comp.soft-sys.math.mathematica
From: michael.p.crouc...@googlemail.com
Date: Sat, 4 Aug 2007 10:01:34 +0000 (UTC)
Local: Sat 4 Aug 2007 11:01
Subject: Re: activate more than one core in Mathematica 6.0 (for win)?
On 3 Aug, 11:49, kristoph <kristophs.p...@web.de> wrote:

> Hi,

> How can Mathematica 6.0 use more than one core of a quad core cpu
> under Windows Vista? During calculations the system requires only 25 %
> of its capacity. This implies that it uses only one of the four cores.

> Thanks for answer,
> Kristoph

Hi Kristoph

As far as I know it is only certain linear algebra functions that
automatically make use of multiple cores.  On my dual core laptop
under windows and Mathematica 6 this seems to be working by default.
For example If I do

Timing[
 a = RandomReal[1, {1000, 1000}];
 b = SingularValueDecomposition[a];
 ]

I get a time of 5.9 (ish)  seconds.

Now in Mathematica 5.2 you could set the number of threads using the
operating system environment variable OMP_NUM_THREADS so I tried
setting this to 2 to see what happened - nothing!  The time stayed the
same.  However if I set it to 1 then the timing came out at 8.9
seconds.  This leads me to the conclusion that Mathematica 6
automatically makes use of multiple cores when it can but you can over-
ride its behavior using OMP_NUM_THREADS,   What would be nice is a
list of functions that makes use of multiple processors/cores.  I
think it is only certain BLAS/Lapack functions but am not sure.

As for Linux - I am confused!  I dual boot into Ubuntu on the same
laptop and this also has Mathematica 6.  The only thing that has
changed is the operating system - everything else is the same but I
get the following timings for the above code (to 1dp)

OMP_NUM_THREADS unset gives 8.8 seconds
OMP_NUM_THREADS=1 gives 8.5 seconds
OMP_NUM_THREADS=2 gives 8.8 seconds

using top I see the processor usage going over 100% when using 2
threads so it seems to be using both cores (only goes up to 100% on
one core). But using 2 cores is slower than one core and everything is
always slower than when I use my windows partition - so something is
messed up!

Best Regards,
Mike


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google