Gentoo Archives: gentoo-user

From: Michael Mol <mikemol@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] openmp flag
Date: Wed, 26 Sep 2012 22:05:26
Message-Id: CA+czFiBF97hbdKyn5v5t_G9qSmvh8ituveCK2ORMFNtDaR0Htg@mail.gmail.com
In Reply to: Re: [gentoo-user] openmp flag by Florian Philipp
1 On Wed, Sep 26, 2012 at 5:03 PM, Florian Philipp <lists@×××××××××××.net> wrote:
2 > Am 26.09.2012 21:46, schrieb Michael Mol:
3 >> On Wed, Sep 26, 2012 at 2:25 PM, Florian Philipp <lists@×××××××××××.net> wrote:
4 >>> Am 25.09.2012 17:01, schrieb Michael Mol:
5 >>>> On Tue, Sep 25, 2012 at 10:42 AM, James <wireless@×××××××××××.com> wrote:
6
7 [snip]
8
9 >>>
10 >>> If you want to use vector instructions for your own code, you should
11 >>> look into compiler intrinsics (i.e. vector instructions as built-in C
12 >>> functions).
13 >>> http://ds9a.nl/gcc-simd/
14 >>
15 >> Personally, I don't like compiler intrinsics; they're specific to
16 >> given compilers. I've tended to write code which is supposed to
17 >> compile on multiple compilers. (There's a world outside GCC...)
18 >>
19 >
20 > Yes. I haven't used it, either. I guess you could autoconf it and
21 > replace it with vanilla C macros in most cases. Or as an easier
22 > solution: #ifdef a vanilla C implementation together with the vector
23 > code. Bonus points for added readability.
24
25 And the added maintenance, doubling the number of builds to test. :)
26
27 >
28 > Kind of makes you wonder how well GCC can vectorize programs on its own
29 > when you lay out your code in a way suitable for its own intrinsics
30 > without actually using them.
31
32 [snip]
33
34 >>> By the way: Did anyone get good results out of dev-util/intel-ocl-sdk
35 >>> for OpenCL? Some time ago I tested it with a package that supported both
36 >>> OpenMP and OpenCL (not sure which) and OpenCL didn't really make an
37 >>> impact on my Core i5.
38 >>
39 >> Haven't tried it, no. I've got a Radeon 6870, and I can only have one
40 >> OpenCL driver loaded at a time. (IBM has a middleman driver which
41 >> supports dispatching to multiple backends, but I believe its a for-pay
42 >> package.)
43 >>
44 >
45 > Isn't that what app-admin/eselect-opencl is for? I mean simple
46 > switching, not dual application (which would be awesome, too).
47
48 Dual-application is the circumstance IBM handles. Including
49 dispatching over the network. :)
50
51 --
52 :wq