Skip to main content

Peano 4

Peano is a framework for solvers operating on dynamically adaptive Cartesian meshes. It is the base for a couple of further engines or toolboxes for different application areas, while the framework is really only about the mesh management, data storage, distribution and mesh traversal. The latest version of Peano is the 4th generation of the code. It is completely free.

Codes built with Peano

Download

Peano and its extensions are hosted on the gitlab of the LRZ. We do not provide any regular snapshots, but you can always clone the latest version directly from the git:

git clone -b p4 https://gitlab.lrz.de/hpcsoftware/Peano.git

We are happy to give interested users write permissions to the repository such that they can merge their contributions into the public code base.

License

Peano has a BSD-like license. Clone the code and study the file COPY in the root folder. BSD-like means that you can basically do anything with the code including any commercial use, even if you directly inline code (what you have do if you use Peano’s templates). In return for all the freedom, we’d appreciate if you cited the code when you use it.

Documentation

Peano realises a relatively strict document-in-the-code paradigm. All the documentation (including tutorials, installation instructions, FAQs, description of the numerics, …) can be generated from the code through doxygen. The resulting documentation is generated after each push and can be found at

https://hpcsoftware.pages.gitlab.lrz.de/Peano/

If you want to generate the documentation locally, clone the repository and type in

doxygen documentation/Doxyfile

to create the documentation website on your machine.

Citing Peano

While Peano is a plain C++ code, most colleagues use it through its Python API. The API generates a lot of glue code plus a makefile such that Peano can run as stand-alone without any Python dependencies. It also generates a Readme file which clarifies which subcomponents of Peano you have used, where you find information about the underlying algorithmic concepts, and what to cite in this context. The Readme should be your first choice when you search for literature about the software.

If you search for a generic overview paper which describes the fundamental design principles and ideas and provides a first overview, please read the ACM TOMS paper

@article{Weinzierl:2019:Peano,
  author = 	 {T. Weinzierl},
  title = 	 {The Peano software---parallel, automaton-based, dynamically adaptive grid traversals},
  journal = 	 {ACM Transactions on Mathematical Software},
  year = 	 {2019},
  volume = 	 {45},
  number = 	 {2},
  pages = 	 {14}
}
  

@tobiasweinzierl.bsky.social

  • Fifth day of Durham HPC Days. And still some people are up for a run in the early morning.
  • This is a picture of one of our #HPCDays morning runs. Was great, but the guys are (too) fit (for me).
  • Thanks @inseismoland.bsky.social for dropping by. An excellent conference depends on excellent talks! [contains quote post or other embedded content]
  • The first keynote is by Sven Bodo Scholz who starts from the observation that tuning makes code (quality) worse and unfit for modern, heterogeneous hardware. And therefore should be done by compilers where possible. But are our compilers and programming languages fit for purpose?
  • Totally full room for the first tutorial of the HPC Day run by friends of Nvidia on AI model upscaling.