Products

Transparent Multicore Programming Solutions

TMT applies innovative compiler technology to create a uniquely valuable solution - a multicore compiler that automatically extracts parallelisms from non-threaded algorithmic code to deliver optimized application performance. With the SequenceL™ compiler, there is no longer any need for developers to express parallel constructs or to write hardware-specific code. The SequenceL™ compiler provides an automated path from simple code directly to optimized parallel C++ multicore implementations.

SequenceL™ Compiler description:

The SequenceL™ compiler is a unique technology generating parallel C++ implementations from compact high-level language application code. Starting from general-purpose functional descriptions of the application, the SequenceL™ compiler automatically extracts parallel implementations and inserts controls to optimize system synchronization. The SequenceL™ compiler produces high-performance, architecture-independent C++ multicore implementations.

SequenceL™ Features

  • Compiles functional descriptions in high-level SequenceL™ language
    • Simple algorithmic coding
      • Compact language (12 grammar rules)
      • Semantics based on two computational laws
      • Consume-Simplify-Produce
      • Normalize-Transpose-Distribute
    • No need for users to specify parallelisms
    • Easy for engineers and scientists to understand and audit
    • Prevents typical sequential coding errors
    • Compiler automatically finds and implements parallelism
    • Shortens lead time for multi-core programming
    • Descriptions frequently can be used as software documentation
    • Generated parallel C++ easily inserted into legacy code
  • Automated parallel programming solution
    • Ideally suited to multi-core processors
    • Transportable across any number of cores, OS's and architectures
    • Libraries of pre-accelerated IP for specialized functions available
    • Compiler available for Windows and Linux systems
  • Multi-core performance optimization functions
    • Synchronization engine optimizes for specific multicore architectures
    • Inserts proper controls to ensure proper system synchronization
      • Optimizes memory access
      • Distributes load across multiple processors
      • Eliminates communication bottlenecks across cores
    • Optimizes accelerated performance for applications on any target
    • Compatible with heterogeneous many-core architectures (e.g. CPU, GPU, DSP)
    • Works with any number of processor cores

SequenceL™ Benefits

  • Enables transparent multicore programming solution
    • No need to identify parallel opportunities in advance
    • No need to write parallelizing algorithms
  • Enables code transportability across multicore architectures
    • No need to re-write code for new multicore architectures
  • Delivers maximum performance from parallelization
    • Taps parallelisms intrinsically available in the application
  • Renews correlation between new processor releases and "automatic" performance improvements for the application
    • Adding cores results in performance improvements without recoding
  • Improved software quality
    • Dramatically reduces number of lines of code
    • Represents functions in simplest "engineering terms"
    • Simplifies and speeds software verification and debug
  • Reduces development costs for multicore acceleration
    • Compiles application to familiar C++
    • Code can be parallelized in segments and integrated with existing code
    • Fits easily with existing coding methodologies

TMT Product Brochure

Download Brochure