NOTICE: The Processors Wiki will End-of-Life in December of 2020. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

Optimization Techniques for the TI C6000 Compiler

From Texas Instruments Wiki
Jump to: navigation, search

This page links to optimization resources that contain the key techniques used to obtain the best performance from the TI C6000 Code Generation Tools.

Introduction to C6000 DSP Optimization[edit]

C6000 Optimization Workshop and Materials[edit]

  • TMS320C6000 DSP Optimization Workshop
    • The workshop materials on this page show a user how to optimize their high-level C code for the TMS320C6000 DSP.
    • Scroll down to "Workshop Materials"

c64, c64Plus Compiler Overview[edit]

  • C64plus_cgt_overview.pdf‎
    • Compact instructions, sploop, trampolines, performance/codesize data for c64x+ and a very brief splattering of tuning tips

c64, c64Plus Optimization Techniques[edit]

  • C64p_cgt_optimization.pdf‎
    • Selecting the right build options
    • Also adds intermediate/advanced techniques for optimizing structure accesses, using restrict with structures and new examples.
    • Examples use cgt version 6.0.x.
    • Good data on control code optimizations

Hand-Tuning Loops and Control Code on the TMS320C6000[edit]

  • Detailed Application Report
    • The TMS320C6000 compiler automatically performs a great deal of performance-related tuning. This compiler-driven optimization usually suffices. For the occasional cases where additional CPU performance is needed, this application report presents strategies and examples for improving performance of C/C++ applications. Memory-related performance improvements (such as background DMA transfers or cache usage) are outside the scope of this report. The techniques apply to all members of the C6000 architecture family.
    • The target audience is intermediate to advanced application developers. Familiarity with the C6000 architecture and experience developing code for this architecture is assumed.

Tuning Software Pipelined Loops[edit]

C6000 Programmer's Guide[edit]

Performance Tuning with the "Restrict" Keyword[edit]

E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Optimization Techniques for the TI C6000 Compiler here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Optimization Techniques for the TI C6000 Compiler here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article Optimization Techniques for the TI C6000 Compiler here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article Optimization Techniques for the TI C6000 Compiler here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article Optimization Techniques for the TI C6000 Compiler here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Optimization Techniques for the TI C6000 Compiler here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Optimization Techniques for the TI C6000 Compiler here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article Optimization Techniques for the TI C6000 Compiler here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article Optimization Techniques for the TI C6000 Compiler here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity