* In a message originally to Carey Bloodworth, Herman Schonfeld said:
> CB>Unrolling can help. Pointers slow it down. I've timed it. Contrary
o
> CB>popular convention, pointers are _not_ automatically faster than
> CB>indexing.
> Use an average consumer machine to test out your programs
> then come back with results.
> HS>But according to you, unrolling is bad, then use Duffs Device.
> CB>In some cases, yes. In other cases no. It depends a lot on how much
> CB>the loop does. This is especially true when you tell the compiler to
> CB>unroll loops with an optimization switch such as -O3 for DJGPP.
> lies!
> -O3 unrolls no loops.
> CB>Yes it does use a register. But even on the register poor x86
> CB>architecture, most compilers will keep all three variables in
egisters.
> CB>Only my 8 year old QC20 doesn't bother to keep _any_ of them in
> CB>registers.
> lies!
> With optimizations turned on, my compiler removes unused
> variables from registers which can be used for something
> else.
Hi. May I suggest to you and Carey to use a 'profiler' if optimization of
your apps is a big issue. A profiler that you trust and have confidense in
that is not skewing the statistical data it is collecting on your apps toward
'buying new hardware as solution to getting your app to run faster'. A lot
of skepticism is warranted when using a profiler until you can verify it is
profiling your apps without 'a ax to grind' and is unbiased and objective.
A good quality profiler is worth it's weight in gold - or plutonium :) - in
saving your programming time for optimizing your apps.
Unfortunately, I have yet to find a 'system' profiler which will help to
analyze and optimize a operating system and how it uses your PC's peripherals
- especially how your OS is utilizing your hard drive. Have a good one.
Regards, -= Lou =-
---
---------------
* Origin: ®ÄÄÍÍChicago Ÿire BBSÍÍÄį (1:2624/603)
|