Dr. Paehler,
I will be sending you some executables privatly, but I wanted to make
some comments to the list publicly.
1) All of your programs run when compiled under Digital Unix 3.2D using the
DECC compiler. If I try to compile it with gcc 2.7.1 under Digital Unix,
the program seems to run forever if I use optimization. If I compile
with -g, it does work. This certainly looks like a compiler bug.
Perhaps you could post this program to the list so that others could take
a look at it.
2) Your program makes extensive use of float data types. I have found
that RISC processors handle floats poorly compared to doubles. This
was certainly a supprise to me the first time I noticed it, and its
certainly not what I was taught in school. By compiling your programs
with cc -Dfloat=double I was able to significantly improve their
performance. The only case where performance went down appears to be
cases where you are limited by memory bandwidth. I did not get a chance
to run these programs on the RS6000, but judging from prior experience,
they could run up to 3X faster if you use doubles.
Jim