Repository Structure
Section author: Axel Huebl
Branches
dev
: the development branch where all features start from and are merged torelease-X.Y.Z
: release candiate for versionX.Y.Z
with an upcoming release, receives updates for bug fixes and documentation such as change logs but usually no new features
Directory Structure
include/
C++ header and source files
set
-I
hereprefixed with project name
lib/
pre-compiled libraries
python/
python modules
set
PYTHONPATH
hereextra/
modules, e.g. for RT interfaces, pre* & post-processing
picmi/
user-facing python interface
pypicongpu/
internal interface for
.param
&.cfg
-file generationused by PICMI implementation
etc/
(runtime) configuration files
picongpu/
tbg
templates (as long as PIConGPU specific, later on toshare/tbg/
)network configurations (e.g. infiniband)
score-p and vampir-trace filters
share/
examples, documentation
picongpu/
benchmarks/
: setups used for benchmarkingcompletions/
: bash completionsexamples/
: each with same structure as/
pypicongpu/
: required files for code generationschema/
: code generation JSON schemastemplate/
: base template for code generation
tests/
: self-validating examples for different scenariosunit/
: small (hopefully expanding) selection of unit tests
bin/
core tools for the “PIConGPU framework”
set
PATH
here
docs/
currently for the documentation files
might move, e.g. to
lib/picongpu/docs/
and its build artifacts toshare/{doc,man}/
,