Hello,
Yesterday Bretton Wade wrote to me about problems he experienced with Intel
C++ not resolving partial specialization of member templates properly.
So today I set up a workspace with the following 29 test cases from the
testsuite directory:
storage
shapecheck
reduce
derrick-bass-1
qcd
loop1
peter-nordlund-1
shape
interlace
promote
arrayresize
derrick-bass-2
minmax
transpose
reverse
extract
free
chris-jeffery-1
where
minsumpow
gary-huber-1
peter-nordlund-2
derrick-bass-3
constarray
chris-jeffery-2
reindex
Ulisses-Mello-1
peter-bienstman-1
Only two examples failed to compile on the first attempt.
loop1 makes duplicate declarations of the loop index i and Intel does not
support the new scoping rules.
gary_huber_1 included <iostream.h> and this lead ambiguity for all the std::
symbols (such as cout, endl, etc). Changing this to the new <iostream>
syntax resolved the problem.
Total compile and link time for the suite was 18 minutes on a PPro 200 w/128
MB. Release build was used with no special options; pre-compiled headers
were disabled (this step improves the build time). The compiler used
anywhere up to 53MB of working memory during the build. Target exe size
ranged between 80K and 250K.
All tests passed on the first run through. I verified that the tests are
actively reporting failures by manually breaking one of the examples. The
broken line was successfully reported as an error.
This work so far would seem to demonstrate that Intel C++ 4.0 is 100%
capable of compiling the Blitz library.
However, some severe performance issues remain. My performance on the QCD
benchmark example ranged between 4% and 10% of what I would expect this
platform to achieve. It is clear that some template expressions are not
being fully simplified.
I will be working with Ganesh Rao from Intel next week to see if we can
pinpoint the source of the performance issues.
Anyone who has an interest in seeing SWAR/SIMD support added to Blitz for
the new KNI instructions please drop me a note.
Allan
--------------------- blitz-dev list --------------------------------
* To subscribe/unsubscribe: mail to majordomo@oonumerics.org, with
"subscribe blitz-dev" or "unsubscribe blitz-dev" in the body of the message
* Blitz++ web page: http://oonumerics.org/blitz/
This archive was generated by hypermail 2b29 : Wed Feb 20 2002 - 04:30:07 EST