Konstantinos Theodorakos - Optimization and parallelization of CBD models


This document presents methods to parallelize Causal Block Diagram models by using parallelized dependency graphs.This modified graph, combined with the original CBD model produces output traces to parallel languages and frameworks. The resulting source code is based on Domain, Functional and Task Decomposition methodologies.

The pipeline parallel programming pattern is applied in the case of loop and delay dependencies of the original CBD model. The generated pipeline uses computational overhead calculations in order to generate almost equally spaced stages.

The resulting source code uses the Intel Thread Building Blocks, OpenCL, OpenMP frameworks that run on modern CPU, GPU and DSP compute devices. After the execution of the output code, it is also possible to generate a custom OpenGL graph transformation to visualize the input and output values into a three dimensional cartesian system.

Keywords: CBD, Parallel, Dependency Graph, Parallelization, Computational Overhead, Optimization, Block diagrams, Domain Decomposition, Task Decomposition, Pipeline, GPGPU, Compute Device, OpenCL, OpenMP, Intel Thread Building Blocks