[Numpy-discussion] Objected-oriented SIMD API for Numpy

Dag Sverre Seljebotn dagss at student.matnat.uio.no
Thu Oct 22 07:20:17 EDT 2009


Robert Kern wrote:
> On Wed, Oct 21, 2009 at 22:32, Mathieu Blondel <mathieu at mblondel.org> wrote:
>   
>> On Thu, Oct 22, 2009 at 11:31 AM, Sturla Molden <sturla at molden.no> wrote:
>>     
>>> Mathieu Blondel skrev:
>>>       
>>>> Hello,
>>>>
>>>> About one year ago, a high-level, objected-oriented SIMD API was added
>>>> to Mono. For example, there is a class Vector4f for vectors of 4
>>>> floats and this class implements methods such as basic operators,
>>>> bitwise operators, comparison operators, min, max, sqrt, shuffle
>>>> directly using SIMD operations.
>>>>         
>>> I think you are confusing SIMD with Intel's MMX/SSE instruction set.
>>>       
>> OK, I should have said "Object-oriented SIMD API that is implemented
>> using hardware SIMD instructions".
>>     
>
> No, I think you're right. Using "SIMD" to refer to numpy-like
> operations is an abuse of the term not supported by any outside
> community that I am aware of. Everyone else uses "SIMD" to describe
> hardware instructions, not the application of a single syntactical
> element of a high level language to a non-trivial data structure
> containing lots of atomic data elements.
>   
BTW, is there any term for this latter concept that's not SIMD or 
"vector operation"? It would be good to have a word to distinguish this 
concept from both CPU instructions and linear algebra.

(Personally I think describing NumPy as SIMD and use "SSE/MMX" for CPU 
instructions makes best sense, but I'm happy to yield to conventions...)

Dag Sverre




More information about the NumPy-Discussion mailing list