Python for High Performance Computing

Date and Time: 
2013 Tuesday, April 2
CG1 Auditoriums
Monte Lunacek

Authors: Monte Lunacek and Thomas Hauser

Python is a popular interpreted programming language that is slowly emerging as an effective way to run distributed tasks in a High Performance Computing environment. This is partly because it’s much faster to write a parallel application in python than it is in a more traditional distributed language. Python also does not have the steep learning curve that makes using MPI with C or Fortran difficult for those unfamiliar with these more structured languages. As a consequence, users with some python modeling background can quickly bring their code to scale. In this talk, we will discuss some of the ways we have been using Python recently at the University of Colorado. Topics for the talk include interactive parallel development and education with the iPython notebook, task management with mpi4py and other distributed python implementations, and linking python models with C and Fortran to create efficient parallel applications. Our performance comparisons suggest that Python is an efficient way to glue a parallel application together.

Speaker Description: 

Monte recently joined the Research Computing group at University of Colorado from the National Renewable Energy Lab where he was a postdoc in the Computational Science group. His expertise are in high performance computing and parameter optimization. Monte received his PhD in Computer Science from Colorado State University.

PDF icon python_hpc.pdf2.75 MB
Video recorded: 

Event Category: