Python Integrated Parallel Pipeline EnviRonment: PIPPER

K

Kyle

I wanted to share a Python based project which I've been working on.
Python Integrated Parallel Pipeline EnviRonment (PIPPER) is an MPI
based programming environment that works much like an OpenMP on Python
code. It is designed to create a python programming environment where
parallel computations on a set of distributed memory processors (you
may call it a cluster, or a Beowulf cluster) is easy to accomplish.
The idea is to make writing parallel code easy in order to promote
rapid development of script based distributed calculations.
There are tools, such as MPI or PVM that help with communicating
between processes running on different machines, but most people are
quickly scared off by the additional complexity in programming.
PIPPER eliminates this barrier to entry by automating the process of
data passing and job scheduling.
Most importantly is that there is no code 'lock-in'. PIPPER works as
a pre-parser and is designed to be completely backward compatible with
a single CPU python environment. If you write a script for PIPPER, it
will still work on systems that don't have PIPPER installed.

You can find the source code and documentation at http://pipper.sourceforge.net

A 'Hello Work' example of PIPPER code:

#!/usr/bin/python

import sys
import os

def do_call(x,y):
print "Hello World", x, y, os.getpid()

if __name__ == '__pipper_main__':
a_range = range( int(sys.argv[1]) )
#pragma pipper_start
for a in a_range :
for b in a_range :
do_call(a,b)
#pragma pipper_end
 
S

Stefan Behnel

Kyle said:
def do_call(x,y):
print "Hello World", x, y, os.getpid()

if __name__ == '__pipper_main__':
a_range = range( int(sys.argv[1]) )
#pragma pipper_start
for a in a_range :
for b in a_range :
do_call(a,b)
#pragma pipper_end

I'm not a big fan of comments that change semantics. Wouldn't a modified
'with' statement look better?

We have a couple of other syntax proposals in the Cython Wiki.

http://wiki.cython.org/enhancements/parallel

Stefan
 
K

Kyle

PIPPER doesn't yet have a very large user base, and is still in
Alpha. So if there is enough demand, syntax changes would still be
possible at this stage.

Kyle
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,057
Latest member
KetoBeezACVGummies

Latest Threads

Top