Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
05/17/07 21:41
Read: times


 
#139464 - most compilers
Responding to: ???'s previous message
You can speed up your code by unrolling loops and inlining functions if the cost of doing so is less than the cast of keeping them as functions.the metric used to determine if a function is suitable for inlining depends on the compilers idea of 'cost'.You can usualy force a compile to inline any function regardless of its cost metrics.
There is a trade-off between speed of execution and size of the code.
You can use other tricks like always decrementing loop counters and so on.You can get c to run 'almost' as fast as hand written code.
Recently Ive been using gcc which sometimes misses code optimisations and has a bit of a funny turn when it sees code in which it cannot analyse the dataflow properly so its always a good plan to give the resulting code the once over to see if you can improve it.
The project I am working on has 4 arm7's and one arm9 because of all the embedded modules it employs so its not possible to even have sight of 70% of the code which is running which is a little frustrating.

List of 43 messages in thread
TopicAuthorDate
How to speed code?            01/01/70 00:00      
   How did you come to that bizarre idea...            01/01/70 00:00      
      bizarre!?            01/01/70 00:00      
         I am a C-hater, remember...            01/01/70 00:00      
      Smaller, Faster            01/01/70 00:00      
   Is that true??            01/01/70 00:00      
   Often mutually exclusive...            01/01/70 00:00      
   Take my contribution with a grain of salt.            01/01/70 00:00      
      http://www.8052.com/users/disasm/            01/01/70 00:00      
   what compiler?            01/01/70 00:00      
   Data types            01/01/70 00:00      
   Getting the least            01/01/70 00:00      
   My Two Cents            01/01/70 00:00      
      Turn in your Programmer's ID Card.            01/01/70 00:00      
         heheh...yeah            01/01/70 00:00      
         SJMP            01/01/70 00:00      
   Comments            01/01/70 00:00      
   How to speed code?            01/01/70 00:00      
   a couple of \'rules\'            01/01/70 00:00      
      More on Erik's Rules            01/01/70 00:00      
         a comment            01/01/70 00:00      
         PDATA            01/01/70 00:00      
            don't forget about @DPTR access to CDATA            01/01/70 00:00      
               but            01/01/70 00:00      
                  WHAT??? You mean I have it too? Dystypia?            01/01/70 00:00      
                     Enginnering is all about the tradeoffs            01/01/70 00:00      
                        two places where you REALLY can make an impact            01/01/70 00:00      
                           b) buffer at 256 byte boundary            01/01/70 00:00      
                              Alignment            01/01/70 00:00      
                              you did'nt hear ?            01/01/70 00:00      
               Another \"but\"            01/01/70 00:00      
                  it is, after all, quicker            01/01/70 00:00      
                     Errr...            01/01/70 00:00      
                        perhaps, but it has to "live" somewhere.            01/01/70 00:00      
                           You\'re assuming...            01/01/70 00:00      
                              confirming Andys statement            01/01/70 00:00      
                                 We WERE discusisng 805x ...            01/01/70 00:00      
                                    well, does it not?            01/01/70 00:00      
                                       Tables in code space vs data space            01/01/70 00:00      
                                          Philps XA, the best "16 bit '51"            01/01/70 00:00      
                                             Maxim/Dallas DS89C450            01/01/70 00:00      
   most compilers            01/01/70 00:00      
      Thanks            01/01/70 00:00      

Back to Subject List