Gentoo Archives: gentoo-user

From: Fernando Rodriguez <frodriguez.developer@×××××××.com>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Re: OT: GCC 5 Offloading
Date: Sat, 12 Sep 2015 07:50:08
Message-Id: BLU437-SMTP23A667AAE7C7E1645CDC2D8D5F0@phx.gbl
In Reply to: [gentoo-user] Re: new computer : any advice ? by james
1 On Thursday, September 10, 2015 12:20:39 PM james wrote:
2 > You are taking a very conservative view of things. Codes being worked
3 > out now for clusters, will find their way to expand the use of the
4 > video card resources, for general purpose things. Most of this will
5 > occur as compiler enhancements, not rewriting by hand or modifying
6 > algorithmic designs of existing codes. Granted they are going to
7 > mostly apply to multi-threaded application codes.
8
9 Your being over-optimistic. It seems to me all they're hoping for is to define
10 a standardized and portable high-level interface for programming accelerators.
11 The ones that will benefit the most is the same applications that can benefit
12 from lower level technologies like CUDA. Scientific/number crunching
13 applications, some kinds of clustering, etc.
14
15 With no synchronization most existing multithreaded designs cannot benefit from
16 it. And obviously code running on the accelerator cannot branch into the CPU,
17 so no system or library calls. That leaves only purely number crunching loops.
18 There's little of that on desktop and few of them can be fully optimized for
19 parallelization. And to be worth the overhead of offloading the CPU needs to be
20 maxed out. That leaves only the few applications I mentioned before.
21
22 I'm looking at Intel MICs[1] and those look a lot more promising though still
23 of limited use for desktops. It uses OpenMP so it has a lot less restrictions
24 than OpenACC (a few ebuilds in the tree can already benefit from it with minor
25 patches) and you can even offload whole proccesses. You can even ssh to the MIC
26 since it runs Linux. It's not for the average desktop but they're not too
27 expensive either. It may be worth it for high-end gentoo workstation (you can
28 offload compile jobs with distcc) and I got a project on the backburner that can
29 benefit from it.
30
31 Do you know of any plans to enable offloading on the gentoo toolchain? I was
32 able to build the offloading compiler using crossdev with a few hacks and wrote
33 an ebuild for Intel's simulator[2]. I will work on enabling the host compiler
34 tomorrow and may open a feature request and post patches once I get it
35 working. The changes needed to enable it on the host are pretty trivial.
36
37 [1] https://software.intel.com/en-us/articles/intel-xeon-phi-coprocessor-codename-knights-corner
38
39 --
40 Fernando Rodriguez