On Wed, Sep 26, 2012 at 5:03 PM, Florian Philipp <li...@binarywings.net> wrote:
> Am 26.09.2012 21:46, schrieb Michael Mol:
>> On Wed, Sep 26, 2012 at 2:25 PM, Florian Philipp <li...@binarywings.net> 
>> wrote:
>>> Am 25.09.2012 17:01, schrieb Michael Mol:
>>>> On Tue, Sep 25, 2012 at 10:42 AM, James <wirel...@tampabay.rr.com> wrote:

[snip]

>>>
>>> If you want to use vector instructions for your own code, you should
>>> look into compiler intrinsics (i.e. vector instructions as built-in C
>>> functions).
>>> http://ds9a.nl/gcc-simd/
>>
>> Personally, I don't like compiler intrinsics; they're specific to
>> given compilers. I've tended to write code which is supposed to
>> compile on multiple compilers. (There's a world outside GCC...)
>>
>
> Yes. I haven't used it, either. I guess you could autoconf it and
> replace it with vanilla C macros in most cases. Or as an easier
> solution: #ifdef a vanilla C implementation together with the vector
> code. Bonus points for added readability.

And the added maintenance, doubling the number of builds to test. :)

>
> Kind of makes you wonder how well GCC can vectorize programs on its own
> when you lay out your code in a way suitable for its own intrinsics
> without actually using them.

[snip]

>>> By the way: Did anyone get good results out of dev-util/intel-ocl-sdk
>>> for OpenCL? Some time ago I tested it with a package that supported both
>>> OpenMP and OpenCL (not sure which) and OpenCL didn't really make an
>>> impact on my Core i5.
>>
>> Haven't tried it, no. I've got a Radeon 6870, and I can only have one
>> OpenCL driver loaded at a time. (IBM has a middleman driver which
>> supports dispatching to multiple backends, but I believe its a for-pay
>> package.)
>>
>
> Isn't that what app-admin/eselect-opencl is for? I mean simple
> switching, not dual application (which would be awesome, too).

Dual-application is the circumstance IBM handles. Including
dispatching over the network. :)

-- 
:wq

Reply via email to