Parallel programming with MPI
Parallel programming: techniques and applications using networked workstations and parallel computers
Using MPI (2nd ed.): portable parallel programming with the message-passing interface
Using MPI (2nd ed.): portable parallel programming with the message-passing interface
A multigrid tutorial: second edition
A multigrid tutorial: second edition
cgimodel: CGI Programming Made Easy with Python
Linux Journal
The Quick Python Book
Internet Programming with Python
Internet Programming with Python
Python Essential Reference
Python robotics: an environment for exploring robotics beyond LEGOs
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
APSEC '97 Proceedings of the Fourth Asia-Pacific Software Engineering and International Computer Science Conference
Steering Object-Oriented Scientific Computations
TOOLS '97 Proceedings of the Tools-23: Technology of Object-Oriented Languages and Systems
Python Scripting for Computational Science (Texts in Computational Science and Engineering)
Python Scripting for Computational Science (Texts in Computational Science and Engineering)
Run-time automatic instantiation of algorithms using C++ templates
International Journal of Computational Science and Engineering
High-performance parallel computations using python as high-level language
Euro-Par 2010 Proceedings of the 2010 conference on Parallel processing
pupyMPI - MPI implemented in pure python
EuroMPI'11 Proceedings of the 18th European MPI Users' Group conference on Recent advances in the message passing interface
Type systems directed programming language evolution: overview and research trends
Proceedings of the 50th Annual Southeast Regional Conference
Generation of an adaptive simulation driven by product trajectories
Journal of Intelligent Manufacturing
Hi-index | 0.00 |
This article addresses the performance of scientific applications that use the Python programming language. First, we investigate several techniques for improving the computational efficiency of serial Python codes. Then, we discuss the basic programming techniques in Python for parallelizing serial scientific applications. It is shown that an efficient implementation of the array-related operations is essential for achieving good parallel performance, as for the serial case. Once the array-related operations are efficiently implemented, probably using a mixed-language implementation, good serial and parallel performance become achievable. This is confirmed by a set of numerical experiments. Python is also shown to be well suited for writing high-level parallel programs.