Project partner Tampere University, in the framework of research work performed in the framework of CPSoSaware, and in particular the Customized Parallel Computing (CPC) research group, leads the development of TTA-based Co-design Environment (TCE) tools. OpenASIP, also known as TTA-based Co-Design Environment (TCE), is an open source application-specific instruction-set processor (ASIP) toolset for design and programming of customized co-processors (compiler-programmable accelerators). It is based on the static energy efficient Transport Triggered Architecture (TTA) processor template. The toolset provides a complete retargetable LLVM-based compiler supported co-design flow from high-level language programs down to FPGA/ASIC synthesizable processor RTL (VHDL and Verilog generation supported) and instruction-parallel program binaries. The size and quantity of register files, function units, supported operations, and the interconnection network can be freely customized to create new co-processors ranging from small single-application specific cores with special operations to more general multi-issue domain-specific processors. Open source code is available at ZENODO.
Portable Computing Language (PoCL) v3.0
CPSoSaware partner, Tampere University, and in particular its Customized Parallel Computing (CPC) research group, leads the development of PoCL on the side and for the needs of their research projects, including CPSoSaware project. PoCL is a portable open source (MIT-licensed) implementation of the OpenCL standard. It likely supports the minimal v3.0 feature set (official conformance stamp not yet applied for). In addition to being an easily portable multi-device (truly heterogeneous) open-source OpenCL implementation, a major goal of this project is improving interoperability for diversity of OpenCL-capable devices by integrating them to a single centrally orchestrated platform. Another key goal is to enhance performance portability of OpenCL programs across device types utilizing runtime and compiler techniques. Upstream PoCL currently supports various CPUs, NVIDIA GPUs via libcuda and ASIPs (experimental, see: http://openasip.org). It is also known to have multiple (private) adaptations in active production use. Open source code is available at ZENODO.
Tauray: A Scalable Real-Time Open-Source Path Tracer for Stereo and Light Field Displays (Software)
Tauray is a real-time rendering framework, with a focus on distributed computing, scalability, portability and low latency. It uses C++17 and Vulkan, primarily relying on the VK_KHR_ray_tracing extension, but comes with a fallback rasterization mode that can be used on devices that do not have that extension.
The main features of Tauray are:
– Real-time path tracing (–renderer=path-tracer)
– Offline rendering (–headless=output_file)
– DDISH-GI, as used in the DDISH-GI publication (–renderer=dshgi)
– Multi-GPU rendering (real-time and offline!)
– Light field rendering
– VR rendering (–display=openxr)
Open-source code is also available at ZENODO.