Automation Tools
for Better Code
Automated Software Parallelization for Embedded Multicore, GPUs, DSPs and Vector Processors
With more than 10 years of research and tool development, emmtrix Technologies is your solution provider for efficient software development targeting high-performance embedded multicore systems: Multicore and vector processors, accelerators (e.g. GPUs, DSPs), or any heterogeneous combination of these are fully supported.
Your benefits:
- Parallelize your applications onto the various processing elements (software parallelization)
- Maintain your functional safety (ISO 26262 / DO 178C)
- Convert your code (C++, MATLAB®, Simulink™, GNU Octave and Scilab) efficiently and transparenly to C
- Estimate the performance of your code even at an early development stage
- Understand data dependencies and event chains of your code (static code analysis)
Our Solutions
Performance Estimation
- Early in workflow
- Master your timing budgets
- Continuous integration support
- Estimation methods:
- Static source code
- Simulation
- Profiling on hardware
- Intuitive visualization
- Continuous performance monitoring during the development
Parallelization
- Parallel C code for
- Multi-/Manycore CPUs
- Vector Processors
- GPUs
- DSPs
- Interactive workflow
- Parallelization with functional safety according to standards like ISO 26262, DO-178C and others
Automated Vectorization
- Easy exploitation of parallel vector hardware
- Correct-by-construction code generation
- Speedup > 10x
Data Dependency Analysis
- Identify data dependencies
- Verify your specification
- Document for (re-)certifcation
- Event chain analysis
- Data flow analysis
Code Conversion
- Conversions:
- User-controlled optimizations
- Aimed at embedded systems and automatic analysis
Tools & Services

emmtrix Parallel Studio (ePS)
User-configurable automated development of parallel C code for embedded multicore systems, GPUs and FPGAs.

emmtrix Code Generator (eCG)
Embedded C code generation from MATLAB® or Simulink®, Scilab or Xcos or GNU Octave optimized for parallelization.

emmtrix Model Code Generator (eMCG)
Translate graphical Simulink® models (*.slx) into MATLAB® or GNU Octave language files (.m) with emmtrix Model Code Generator.

emmtrix C++ to C Compiler (eCPP2C)
Automatical translation of C++ source code into analyzable C code enables software parallelization of C++ applications with ePS.

ePS Qualification Kit (ePS-QKIT)

Customization, Consulting and Trainings
Wide range of custom services to address your specific multicore requirements, get going fast and take the right decisions.
Free Webinars on Software Optimization
Modern multi-core systems, DSPs and GPUs are ubiquitous, with vector processing units like the PPU of AURIX TC4x™ adding another type of accelerator. In order to use these platforms efficiently and effectively, companies and software developers have to deal with and understand parallelization/vectorization. Distributing software onto the available processing units increases performance but also complexity. In our webinars you will learn how to successfully parallelize/vectorize code, as well as more about our tools and their benefits.
Latest News & Next Event(s)

Performance Estimation
Solutions | May 10, 2023
Request our free information material (white paper and webinar recording)

emmtrix C++ to C Compiler
Solutions | May 03, 2023
Five reasons for the emmtrix C++ to C Compiler that translates C++ code to efficient, readable C code.

Fire Safety Education
Company | Apr 18, 2023
emmtrix sponsors a class set of the workbook „Brandschutzerziehung für Kinder in der Stadt Karlsruhe“