[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SSE warnings, Band matrix request feature
Greetings! Two items:
1) In trying to clean up the warnings on the l2 SSE kernels, I'm
finding that many of them only appear when using the 2.96 (broken)
gcc version on torc. 2.95.x and 3.0.2 don't appear to show these
warnings, which refer to macro redefinitions, but I have only
tested 3.0.2 on non-i386 machines. In any case, my code includes
the same header multiple times, between each of which a few key
macros are changed. And certain of the macros in the header file
thus multiply included give the redefinition warning with 2.96,
while others adjacently defined do not. No apparent rhyme or
reason. I can certainly work around with undef's, or some moderate
rewriting, but I'd like to get a minimal fix in first, so I'm
wondering whether 2.96 is faulty in this respect and should be
ignored. As long as I've used these macros, redefining the same
macro to the same value never produces a warning, but maybe I've
been relying on non-standard cpp all this time.
2) I've gotten interested in band matrices recently, and am wondering
how atlas handles these. Take the extreme case of a diagonal
matrix, 'band packed' so that the diagonal elements are contiguous in
memory. For s{tsg}bmv, there seems to be no way the basic atlas
code can hand this off to a kernel without moving the memory
around. But this would be an easily vectorizeable operation.
Should we have a 4rth l2 kernel to deal with band matrices?
Take care,
--
Camm Maguire camm@enhanced.com
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah