Talk glumpy

Abstract

Abstract

glumpy is a small python library built on top of PyOpenGL for the rapid vizualization of numpy arrays, (mainly two dimensional) that has been designed with efficiency in mind. If you want to draw nice figures for inclusion in a scientific article, you’d better use matplotlib. If you want to have a sense of what’s going on in your simulation while it is running, then maybe glumpy can help you.

Main features

Ease of installation and use Very fast display/animation capability Seamless integration with matplotlib Interactive sessions

How does it work ?

glumpy uses OpenGL textures to represent arrays since it is probably the fastest method of visualization on modern graphic hardware. However, the drawback is that it implies some restriction on the type and shape of arrays that can be visualized using this method. The dtype of array must be one of numpy.uint8 or numpy.float32 (because on existing restriction on OpenGL textures data types) and the shape of the array must be one of M, MxN or MxNx[1,2,3,4]. Apart from pure rendering performances, OpenGL textures offer the advantage of being able to use shaders that can alter their rendering. glumpy uses such shaders to implement color lookup table (i.e. colormap), filtering (nearest / bilinear / bicubic) and displacements (heightmaps). In other words, rendering is done entirely on the graphic card, saving CPU time for simulation.

Notes

It has been very briefly introduced (as a flash talk) at EuroScipy 2010.

tagged by
no related entity