Boost logo

Boost :

Subject: Re: [boost] [XInt] Some after thoughts
From: Jeremy Maitin-Shepard (jeremy_at_[hidden])
Date: 2011-03-10 18:36:12


On 03/10/2011 01:06 AM, falcou wrote:

> [snip]

> 4/ Have a way to say large integer use SIMD register of 128 bits and
> implement a SIMD aware large integer
>

This last item seems particularly useful, but I don't see how it has
anything to do with a potential restructuring. Since non-bitwise
operations aren't explicitly single instruction multiple data
operations, really what we are talking about is optimizing the library
so as to make the most use of the processor capabilities, which may
include SSE instructions, etc. (Presumably the performance of GMP
already reflects such optimizations.)

Maybe what you have in mind is letting the digit type be a template
parameter, and then substituting in a user-defined type (or in the case
of some compilers, a compiler-defined non-standard type) that serves as
a 128-bit unsigned integer. I'm not convinced that this level of
abstraction is compatible with generation of optimal code, though.
Furthermore, this abstraction doesn't seem particularly useful, as the
only purpose I can imagine of specifying a non-default digit type would
be for this particular optimization.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk