A platform description is a human- and machine-readable data sheet describing the main structure and parameters of a computer system's hardware and system software for retargetable toolchains for analysis and optimization.
XPDL is a formal modeling language for describing
the structure and properties of computer systems as
far as relevant for modeling, analysis and optimization
of programs and system configurations for improved
performance and energy usage.
XPDL allows to model the structure of clusters, servers with accelerators, embedded computing devices, processors, accelerators and memory units and their interconnects, as well as static principles of their behavior, such as power domains and power state machines. Beyond hardware modeling, platform specifications also include descriptions of installed system software, such as libraries, compilers, runtime systems and operating systems.
XPDL allows for modeling at the meta-level (e.g., new
processor types) as well as instantiations at the base level
(e.g., concrete server installations).
XPDL uses XML syntax; its hierarchical structure reflects the hierarchy of complex computer systems.
XPDL leverages inheritance and hyperlinks to increase reuse of submodels and to create a world-wide web of platform specifications,
The main purpose of XPDL is to promote retargetability in generic toolchains for performance and energy optimization, as being developed e.g. in the EU FP7 EXCESS project.
Christoph Kessler, Lu Li, Aras Atalar, Alin Dobre:
XPDL: Extensible Platform Description Language to Support Energy Modeling and Optimization.
2015 International Workshop on Embedded Multicore Systems (ICPP-EMS'15), in conjunction with ICPP-2015, Beijing, Sep. 1-4, 2015.
In: Proc. 44th International Conference on Parallel Processing Workshops, pages 51-60, IEEE, 2015. DOI: 10.1109/ICPPW.2015.17.
Usman Dastgeer and Christoph Kessler:
Conditional component composition for GPU-based systems.
Proc. Seventh Workshop on Programmability Issues for Multi-Core Computers (MULTIPROG-2014) at HiPEAC-2014, Vienna, Austria, Jan. 2014.
Current version: XPDL toolchain v0.8
Access to source-code on request, please contact us by e-mail.
See the above publications for XPDL example models.
XPDL is a work in progress. Future work includes adding support for modeling more features and properties, supporting model visualization and graphical editing, and conversion tools.
If you would like to contribute, please let us know.
This work was partly funded by the EU FP7 project EXCESS and by SeRC project OpCoReS.