tag: python

Introducing Galry, a high-performance interactive 2D visualization Python package

2012-10-24

I'm releasing today the code of a first experimental version of Galry, a high-performance interactive 2D visualization Python package that I'm creating as part of my current research project.


Profiling and optimizing Python code

2012-10-10

Premature optimization is the root of all evil.

Donald Knuth

There are two opposite directions a programmer can take when writing a piece of software: coming up with an elegant software design or with an heavily optimized code. A good design leads to better readability and maintenance, often at the expense of pure performance. Conversely, highly optimized code tends to be more difficult to read, and can lead to bugs that are hard to fix.


Making PyQt4, PySide and IPython work together

2012-09-20

PyQt and PySide are two independent Python libraries allowing access to the Qt framework. PyQt is maintained by the British firm Riverbank Computing, whereas PySide is developed by Qt developers from Nokia. PySide was created by Nokia in 2009 after they "failed to reach an agreement with PyQt developers to change its licensing terms to include LGPL as an alternative license" (quoting Wikipedia). Fortunately, the two APIs are very similar (which is not that surprising given that they are just bindings to the same Qt library).


A tutorial on OpenGL/OpenCL interoperability in Python

2012-09-18

In the last two posts, I've shown how to use OpenCL for GPGPU, and OpenGL for graphics rendering, with Python. Here I'll show how both OpenCL and OpenGL can be used at the same time with Python. It's called OpenCL-OpenGL interoperability. What is it about?


2D graphics rendering tutorial with PyOpenGL

2012-09-17

UPDATE: you may be interested in the Vispy library, which provides easier and more Pythonic access to OpenGL.

OpenGL is a widely used open and cross-platform library for real-time 3D graphics, developed more than twenty years ago. It provides a low-level API that allows the developer to access the graphics hardware in an uniform way. It is the platform of choice when developing complex 2D or 3D applications that require hardware acceleration and that need to work on different platforms. It can be used in a number of languages including C/C++, C#, Java, Objective-C (used in iPhone and iPad games), Python, etc. In this article, I'll show how OpenGL can be used with Python (thanks to the PyOpenGL library) to efficiently render 2D graphics.