[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Using threads or process on i686 #SMP (Dual Core)
From: |
Jaroslav Hajek |
Subject: |
Re: Using threads or process on i686 #SMP (Dual Core) |
Date: |
Wed, 3 Jun 2009 10:14:39 +0200 |
On Wed, Jun 3, 2009 at 11:57 AM, David Kremer <address@hidden> wrote:
> Hello,
>
> using octave on Debian, My computer can handle two octave instances,
> with 100% of CPU power for each of them.
>
> Please, do you know a mean to use this computation power for a single
> instance of octave, and a single computation ?
>
> Thank you very much.
>
> David Kremer
>
For a start, take a look the parcellfun function from OctaveForge
general package. Preferably, use the SVN version because a few bugs
have been discovered since the last OctaveForge release. Also, I
didn't actually test it with the old 3.0.x versions, but chances are
good that it will work at least to an acceptable degree.
A demo script is attached.
Result on my Core 2 Duo @ 2.83GHz:
octave:1> demo_parcellfun
create 100 random 400x400 matrices
calculate pseudoinverses - uniprocess
Elapsed time is 55.3668 seconds.
calculate pseudoinverses - multiprocess
parcellfun: 100/100 jobs done
Elapsed time is 30.9943 seconds.
with more intensive tasks (better CPU-to-memory ratio), I'm getting
even much better scalability, up to 99%, even on 8 CPUs.
regards
--
RNDr. Jaroslav Hajek
computing expert & GNU Octave developer
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz
demo_parcellfun.m
Description: Text Data