Friday, November 7, 2008

GPULib 1.0 at SC08

Tech-X will be releasing the 1.0 version of GPULib at SC08.  This supercomputing conference runs from November 15-21, 2008 and will be held in Austin, TX.  Full details are at


If you're going to be at the conference, feel free to stop by the Tech-X booth to see demos of GPULib and chat with some of the developers.

Thanks for all of your feedback from the various beta releases, including the most recent 0.5 beta.  We've gotten many good comments and suggestions -- keep them coming!  You can contact us by leaving comments on the blog, or sending email to support@txcorp.com.

We hope GPULib continues to help you speed up your applications.

Thursday, November 6, 2008

GPULib 0.5 is now available

We've just released a new version of GPULib.  Version 0.5 is available at


The interface continues to improve for both IDL and MATLAB.  We've also made the package much easier to build; once you have CUDA installed, you should be able to build the software with a much more familiar 

tar -xvzf gpulib-0.5.tar.gz
cd gpulib-0.5
./configure
make

Also, this version of GPULib should build easily on Mac OS X as well, with the same steps as above.  With Apple using CUDA-enabled NVIDIA graphics chips in its new MacBook and MacBook Pro releases, this should allow even more users to begin using the GPU for number crunching.

For both Linux and OS X, the configure script will do its best to find IDL and MATLAB automatically.  If you don't have IDL or MATLAB, you can disable building those bindings.  See the README file for full details.

Once you have the package built, running

make check

will run a series of demos for IDL, MATLAB, and C.  The latter is currently just a skeleton, but we'll be adding more C examples soon.

Finally, many users have been asking for better documentation.  We're still working on the User's Guide, but in the meantime both the IDL and MATLAB APIs have much better documentation than the previous release.  If you run

make html

GPULib will generate comprehensive documentation for the IDL bindings, contained in gpulib-0.5/IDL/docs.  MATLAB users can run

help gpuArray

and browse the API and related documentation directly in MATLAB.

As always, feel free to leave questions, comments, feature requests, etc. in the comments, or email us at support@txcorp.com.

Wednesday, August 13, 2008

IDL tip: compile gpuinit before running your own procedures

Another "gotcha" came up today from a user; when using GPULib in IDL, you may need to compile gpuinit before running your code. For example, to run a procedure you've written called foo, you should do something like the following:
IDL> .compile gpuinit
IDL> .compile foo
IDL> foo
As always, if you have questions or suggestion regarding GPULib, feel free to leave comments or email support@txcorp.com.

Tips on building GPULib

Several users have pointed out recently that the documentation included with GPULib is sparser than they would like. The docs do require updating, and you should see better installation and use instructions with the next release of the libraries. Until then, here are some tips on how to deal with common issues.

If you're having trouble getting GPULib to build, make sure that the most recent CUDA libraries are installed for your platform. Also, make sure that you have any other software you need; you can't build the IDL bindings without IDL installed on the machine, for example.

If you see errors such as the following during the build:

cc -I/usr/local/rsi/idl/external/include -I/usr/local/cuda/include -O3 -fPIC -I../vectorOp -I../physicsOp -c gpulib.c
gpulib.c:38:24: error: idl_export.h: No such file or directory
gpulib.c:48: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'get_IDL_long'
In file included from gpulib.c:163:
../vectorOp/gpuVectorOpFuncList.h:38: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'IDL_gpuSqrtF'
../vectorOp/gpuVectorOpFuncList.h:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'IDL_gpuExpF'
you probably need to change your configure line to help GPULib figure out where IDL is. A configure line such as

./configure --disable-MATLAB --with-idl-dir=/path/to/idl
should fix this issue and allow the build to continue.

If you encounter any other issues, feel free to describe them in the comments or send email to support@txcorp.com.

Monday, July 7, 2008

Example MATLAB code in GPULib

I recently had a question from a user looking for information on how to use GPULib with MATLAB; you can find examples of how to use GPULib in the

gpulib-0.3p7/MATLAB/ode_cell/

directory of the current distribution.

We're working on refining the MATLAB interface to the library, and hopefully we'll be able to share that work with you soon. In the meantime, if you have suggestions or comments about using GPULib with MATLAB, please let us know!

Monday, June 23, 2008

GPULib 0.3p7 released

Development continues on GPULib -- the team has made a new release; 0.3p7 can be downloaded at

http://www.txcorp.com/technologies/GPULib/

Wednesday, June 18, 2008

New version 0.3p6 available

Tech-X has just released a new version of GPULib. It is available from

http://www.txcorp.com/technologies/GPULib/download.php

Questions, comments, bug reports, and feature requests are welcome.