• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Development Tools » TI C/C++ Compiler » TI C/C++ Compiler - Forum » All Tags » optimization
Share
TI C/C++ Compiler
  • Forum

Browse by Tags

TI C/C++ Compiler

Welcome to the TI C/C++ Compiler Section of the TI E2E Support Community. Ask questions, share knowledge, explore ideas, and help solve problems with fellow engineers. To post a question, click on the forum tab then "New Post".

Sign In to Post
Tags
You have subscribed to this tag. To view or manage your tag subscriptions, click here.   Close
You have unsubscribed from this tag. To view or manage your tag subscriptions, click here.   Close
You are currently viewing:
optimization
  • 28335
  • ARM
  • bug
  • C
  • c++
  • C2000
  • C6000
  • C6000 compiler
  • C64x+
  • CCS 3.3
  • CCS v3.3
  • CCS v4.2
  • code composer
  • code Composer studio
  • code generation tools
  • compiler
  • compiler error
  • compiler options
  • floating point
  • gcc
  • linker
  • MSP430
  • RTS library
  • TI C/C++ Compiler
  • TMS470
Related Posts
  • Forum Post: Re: Multi-threading and global variables - volatile keyword required?

    H_Smith H_Smith
    I have found that the compiler does indeed perform some register optimizations that will require the volatile keyword when global variables are shared between threads. These optimizations are generated even though all optimizations are disabled (Opt Level = None), this is due to "loop invariant...
    on May 24, 2010
  • Forum Post: Optimization fails if using (wrong written) .asm files

    Leo Bosch Leo Bosch
    CCSv4.1.3.00038 The compiler is probably not looking into .asm files when optimizing. In the project ‘DC/DC LED Developers Kit’ the compiler is filling XAR2 and expect it to remain unchanged, but hereafter it Calls ‘_ISR_Init’ from ‘Lighting_DCDC-ISR.asm’...
    on Aug 25, 2010
  • Forum Post: Re: Writing same value to PWM registers is slow

    Archaeologist Archaeologist
    JHi [..] I don't have any optimitzation. Should I have to make this more quickly? [..] Yes. If speed is a concern, you should always use optimization, at least -O0. It looks like your temporary variable is being stored in *-SP[2]. If you use optimization at any level, this variable will...
    on Sep 7, 2010
  • Forum Post: Re: Convolution with a multiply-and-add (DDOTPL2) instruction

    George Mock George Mock
    I recommend you learn the techniques described in http://processors.wiki.ti.com/index.php/C6000_CGT_Optimization_Lab_-_1 . I think that will give you the improvement you seek. Thanks and regards, -George
    on Oct 13, 2010
  • Forum Post: How to make "restrict" really work?

    Sean Tsai Sean Tsai
    I wrote a function to copy data from in_data to out_data, and I used TSCL to calculate cycle counts. the cycle counts is around 16313967 for 720*480*2 data size. so I tried to add keyword restrict, but saw no improvement. How to make loops faster? void AssignY(unsigned char* restrict in_data...
    on Dec 21, 2010
  • Forum Post: --program_level_compile apparent failure and linker errors

    Tony Morrell Tony Morrell
    Version: 4.1.2.00027 Hi, I am trying to use the program level compilation option so that I can get the benefits of program level optimisation. Without --program_level_compile defined my project builds successfully. With --program_level_compile defined raises a couple of questions: 1. I was...
    on Jan 13, 2011
  • Forum Post: Suggestions for Optimising Code

    Tony Morrell Tony Morrell
    Hi, I am having to optimise my C only (i.e. not C++) code aggressively for speed performance on the TMS570 (compiler version 4.7.0B2). As well as code construction optimisations I am looking at compiler build options. I have selected: Optimisation level ( --opt_level ) 3 Optimise for speed ( -...
    on Jan 17, 2011
  • Forum Post: Re: Compiler optimization question.

    Archaeologist Archaeologist
    No. By unrolling I mean when you change this: Helmut Forren while (num_pixels-- > 0) { *y_data_to++ = *y_data_from++; *cbcr_data_to++ = *cbcr_data_from++; } To this: Helmut Forren num_pixels = num_pixels>>1; while (num_pixels-- > 0) { *y_data_to++ = *y_data_from...
    on Jan 31, 2011
  • Forum Post: query on "-mo" compiler option

    Nitin Manohar Nitin Manohar
    I'm using DSP6410 based board and using CCS for software application building. I've a 3rd party code to use. It is a bulky code and I'm using only a part of it. I came across "-mo" compile time option to enable linker to link only those functions which are used in the application...
    on May 24, 2011
  • Forum Post: Re: Interupt Threshold(mi) option for DM6437

    Saurabh Tiwari Saurabh Tiwari
    George the actual problem is that I have designed a system in which I need to send a message from CAN at every 70 msec and I have set the value for interrupt threshold option for 65msec but at random interval my CAN message gets a peak of 30 to 50msec. So is there any option through which I can disable...
    on May 27, 2011
  • Forum Post: c code problem in CCS 4.21

    Yashpal Patel49892 Yashpal Patel49892
    Hi, We are using LM3S9B92 in our projects, and we are using Code Composer Studio Version: 4.2.1.00004 for programming purpose. We have face simple problem, but we can't understand why this happen in this. We are using optimization level 2. 1.) If we write c code as below for UART0 Transmit...
    on Jun 30, 2011
  • Forum Post: Code size increase in newer version

    Benny Simonsen Benny Simonsen
    I have a project that I have a TMS320C6416 project compiled with CCSv3.3 (CGT v. 6.0.8) The flags have been -O3 -mv6400 Then I have imported that project in CCSv4 (CGT v. 7.2.3), but now the code size (.text) have nearby doubled in size (from ~ 0x5ea0 to 0xA000). I would like to know about I...
    on Aug 31, 2011
  • Forum Post: Optimizer error, 2-dimensional array, 2 multiplications

    Benny Simonsen Benny Simonsen
    Environment: - DSP: TMS320C64xx - Tool set #1: - CCS: 5.0.3 (Ubuntu Linux AND Windows XP gives same result) Help shows version N201105110900 - Code Generation Tools: 7.2.1 (bundled with CCS) - Tool set #2: - CCS: 4.2.4.00033 (Windows XP) - Code Generation Tools: 7.2.1 (bundled with CCS) I see the same...
    on Aug 29, 2011
  • Forum Post: How to determine why C++ compiler is not inlining a function?

    B.J. Buchalter B.J. Buchalter
    Hi Folks, I have some code where I have functions that are declared inline, and I am compiling with -O3. Some of the functions are inlined, but not all of them. I have looked through the C++ compiler docs, and my functions meet the criteria for inlining set forth in the docs. If I add "#pragma...
    on Sep 13, 2011
  • Forum Post: Can use of __builtin_expect() increase if-else-performance?

    Fredrik Noring Fredrik Noring
    Hi all, I've been trying to use the compiler extension __builtin_expect() with CCS4, to increase performance, but after trying several if-else-combinations it appears to have no effect, at least on the DM648 target. Does anyone have a code sample that indicates increased performance using __builtin_expect...
    on Sep 22, 2011
  • Forum Post: Saturated add of two int40 numbers on C64+

    Dieter Schulz Dieter Schulz
    Hi, On the C55 we had the intrinsic _llsadd to saturate add two int40 numbers. The C64+ only has _lsadd, which saturate add an int32 with an int40. Does somebody have C64+ optimized code or tips on how to saturate add two int40 numbers? Many thanks, Dieter
    on Sep 22, 2011
  • Forum Post: C++ STL memory allocation to selected memory segment

    Elmar Damrau Elmar Damrau
    Hello, I'm using CGT 6.1.15 and DSP/BIOS 5.33.06 on different C6000 DSPs. For most parts of the application the STL containers have to be allocated in external memory. Selected containers need to allocated their memory in internal memory. To prevent a copy of the data these containers are passed...
    on Nov 14, 2011
  • Forum Post: without SPLOOP vs with SPLOOP

    Zhijun Wang Zhijun Wang
    hi,experts I had just started to study SPLOOP, there is some doubt. See the example below(from the C6000 Programmer's Guide), Without SPLOOP, kernel clock is 2, with SPLOOP, seems to be 6(but "SPLOOP 2"). who can make it clear? thanks.
    on Dec 7, 2011
  • Forum Post: optimiser bug dealing with assert(), v6.1.19

    Samuel Nobs Samuel Nobs
    hi there it seems like the optimiser removes assert() statements which it clearly shouldn't. assume the following file main.cpp: #include <cassert> int main(int argc, char** argv) { assert((argc & 1 ) == 0); assert((argc & 2 ) == 0); assert((argc & 4 ) == 0); return argc;...
    on Aug 16, 2011
  • Forum Post: Flash utilization saving techniques

    Relativity Relativity
    Hi All, I badly want to reduce flash consumption. Below are the options I tried to clean up code: 1. Reduce repetitive code into functions. Here I let away performance to memory. 2. Remove unused functions 3. Moved many large initialized to NULL global array and structure variables into...
    on Jan 7, 2012
  • Forum Post: C2000/TMS320F28069: Writing to wrong memory location

    Andreas Brunschweiler Andreas Brunschweiler
    We have an issue with the code generation tools for Piccolo 28069 (TI v6.0.1). The issue shows up when using compiler optimization 2 or larger. I generated a short program to reproduce the issue. From the macro generated code, I removed statements and operations as long as the issue shows. Please contact...
    on Jan 25, 2012
  • Forum Post: Multi for loop performance

    Mohd Hafiz Fazalul Rahiman Mohd Hafiz Fazalul Rahiman
    Hi. I used EVM C6747 with CCS v3.3. I tried the following code and it takes 2050ms to complete. I have already tune the build option for optimization level 3 (build details as below) . Any suggestion or idea to improve the performance significantly? i wish to obtain within tenth mili-seconds as...
    on Feb 13, 2012
  • Forum Post: Re: Multi for loop performance

    Luke Postema Luke Postema
    I don't have time to try this, but perhaps some use of the restrict keyword would help. Another thought is that this loop is going to be very limited by data load and store. Is there any mathematical or logical pattern in the SenMap array that can be used instead of using it as a look-up-table...
    on Feb 16, 2012
  • Forum Post: Fast RTS number cycles

    My El Mustapha Ait Yakoub My El Mustapha Ait Yakoub
    Hi, I am using TMS320C6472, and I am trying to reproduce the performances obtained in SPRU653 (TMS320C62x/64x FastRTS Library Programmer’s Reference) for _divf which is 109 cycles using rts6400.lib and 32 cycles using FastRTS. my result are way off (751 cycles using rts6400.lib and 71 cycles...
    on Mar 1, 2012
  • Forum Post: Fast RTS C not inlining addsp_i() However, does inline mpysp_i()

    AYM AYM
    `A Riddle Wrapped in a Mystery Inside an Enigma' Can you solve this mystery? PROBLEM addspy_i will *not* inline. mpysp_i will inline. CONFIGURATION CCStudio 3.3 fastRTS_c62xc64x_1_42_Windows_Setup.exe IDE 598.0.393 BIOS 5.41.10.36 CODEGEN v7.2 For a small test project mpysp_i() and addsp_i...
    on Mar 1, 2012
12
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use