[Haskell-cafe] optimising for vector units
Duncan Coutts
duncan.coutts at worcester.oxford.ac.uk
Mon Jul 26 07:35:06 EDT 2004
On Mon, 2004-07-26 at 10:58, MR K P SCHUPKE wrote:
> In the absence of such a standard, the best that can be done is to
> abstract vectorisation by word size and number of words, and supply
> a software implementation of all vector ops to use if the hardware
> does not support certain primitives.
Recent version of gcc provides a semi-portable vector extension. You
define some vector data types and gcc will make use of whatever vector
capability exists on the machine you are compiling for. Otherwise it
uses narrower vector units if possible or just scaler units if that is
all that is available.
http://gcc.gnu.org/onlinedocs/gcc-3.4.1/gcc/Vector-Extensions.html
Correct me if I'm wrong but I thought that there was some overhead to
making FFI (even safe/unsafe) which would probably kill any advantage
from using small vector units. In which case it'd need to be implemented
as ghc primitive ops which is rather more work.
Duncan
More information about the Haskell-Cafe
mailing list