| Please note: This documentation is very dated and should be treated as an old draft. Among the major updates as of 8/2005 are a jump from version .6 to .8, the renaming of staging to launcher. |
Table of Contents
Pyre is not an acronym. It's not a combustible, either. It's a 21st century software framework for high performance computing. Written in Python, Pyre is an extensible, object-oriented framework for specifying and staging complex, multi-physics simulations. It includes support for remote monitoring and visualization. With Pyre, you do not need to be fluent in FORTRAN or C to harness the power of massively parallel resources.
Pyre, which has the ability to utilize code written in other languages, provides a level of transparency that allows scientists to focus on their research rather than being distracted by computational details. However, while Pyre will enable the average user, it was also designed not to hinder expert users, offering powerful, flexible development features.
Pyre provides a software framework, or environment, in which the assorted codes can coexist. It was designed to solve the types of compatibility issues run rampant in scientific computing. The framework can utilize codes written in Fortran, C, or C++, and produces a veneer that permits access to scientific computation without the user having to be a software engineer. Pyre also reduces the risk that changes in one code may produce unexpected results in another code.
Michael Aivazis of the Center for Advanced Computing Research at Caltech began coding Pyre in 1998. As of September 1, 2003 shows Python consists of at 1300 classes and 70,000 lines of code with C++ having 30,000 lines of bindings and infrastructure. The largest run to-date was performed on the US Department of Energy's Nirvana: 1764 processors, 2.7 mel solid fluid, 256x256x512 fluid, approximately 3,000 timesteps/24 hours, and approximately 1.5 terabytes of data.
Pyre development has been funded by the Department of Energy's Advanced Simulation and Computing program and the National Science Foundation's Information Technology Research (ITR) program (grant #0205653). Development is housed at Caltech's Center for Advanced Computing Research.
There has been some confusion over the distinction between Pythia and Pyre. Pythia is a larger collection of tools that includes Pyre.
Pyre was never intended to be an acronym, though various people have extracted one from a PYthon fRamEwork, PYthon Run-time Environment and the PYre Research Environment.