comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Passing an array from IDL to MPI
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Passing an array from IDL to MPI [message #28852] Mon, 14 January 2002 06:03 Go to previous message
Mark Rivers is currently offline  Mark Rivers
Messages: 49
Registered: February 2000
Member
Miska Le Louarn <lelouarn@eso.org> wrote in message
news:3C428D26.1080405@eso.org...
> Hi all IDL / parallel computing experts !
>
> I am trying to integrate a piece of MPI-code written in C into my IDL
> program.
> I have a cube of data produced in the IDL code, which needs to be
> Fourier transformed. So I want to write a little MPI program (in C)
> which uses several CPUs to compute the FFT of each plane in the cube.
> My problem is that I need to pass the data cube to the MPI program. This
> would not a problem with a plain C program (a simple call_external would
> do the trick), but MPI likes to be lauched with the "mpirun" command
> which initializes all the parallel stuff.

You might want to consider another solution to obtain rapid 2-D FFTs taking
advantage of multiple CPUs. This is to use the Intel Math Kernal Library
(MKL) routines. These are free, highly optimized for Intel CPUs, and take
advantage of multiple CPUs if they are present. I have written tomography
reconstruction code that is accessed via CALL_EXTERNAL from IDL, and uses
this library. The MKL speeded things up a factor of 3-4 compared to non-MKL
FFT routines. The latest version of the MKL is available for Linux as well
as Windows.

Mark Rivers
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: Turning off math error checking for a code block
Next Topic: naming elements in an array

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 15:51:47 PDT 2025

Total time taken to generate the page: 0.00396 seconds