Parakeet is a just-in-time compiler for numerical Python, which can speed up your code by compiling native versions of a function for each distinct set of input types. Parakeet also exposes data parallel operators which enable high-level optimizations and parallelization. Parakeet is not a general-purpose compiler for all of Python but rather supports only a small set of language constructs useful for numerical computing.
If you're curious about how Parakeet relates to other runtime compilers for numerical Python, read this post.
Data Parallel Operators
map ( transform, X1, ..., Xn, axis = 0 ) traverses all the given inputs X1 ... Xn along the specified array axis, and the function transform on every sub-array encountered. Collect and concatenate the results of each function call to transform.
reduce ( combine, X1, ..., Xn, axis = 0 )
scan ( combine, X1, ..., Xn, axis = 0 )
allpairs ( transform, X, Y, axis = 0 )
Authors and Contributors
Written by Alex Rubinsteyn (@iskandr) and Eric Hielscher (@hielscher).