1 |
On 08/19/2016 11:15 AM, C Bergström wrote: |
2 |
> On Fri, Aug 19, 2016 at 11:01 PM, Luca Barbato <lu_zero@g.o> wrote: |
3 |
>> BTW is pathscale ready to be used as system compiler as well? |
4 |
> |
5 |
> I wish, but no. We have known issues when building grub2, glibc and |
6 |
> the Linux kernel at the very least. Someone* did report a long time |
7 |
> ago that with their unofficial port, were able to build/boot the |
8 |
> NetBSD kernel. |
9 |
> (*A community dev we trusted with our sources and was helping us with |
10 |
> portability across platforms) |
11 |
> |
12 |
> The stuff with grub2 may potentially be fixed in the "near" future... |
13 |
> the others are more tricky. In general if clang can do it, we have a |
14 |
> strong chance as well. |
15 |
> |
16 |
> As a philosophy - "we" aren't really trying to be the best generic |
17 |
> compiler in the world. We aim more on optimizing as much for known |
18 |
> targets. So if by system you mean, a compiler that would produce an |
19 |
> "OS" which only runs on a single class of hardware, then yeah it could |
20 |
> work at some point in the future. Specifically, on x86 we default on |
21 |
> host CPU optimizations. So on newer Intel hardware it's easy to get a |
22 |
> binary that won't run on AMD or older 64bit Intel. |
23 |
> |
24 |
> More recently on ARMv8 - we turn on processor specific tuning. So |
25 |
> while it may "run", the difference between APM's mustang and Cavium |
26 |
> ThunderX is pretty big and running binaries intended for A and ran on |
27 |
> B would certainly take a hit.. (this is just the tip of the iceberg) |
28 |
> |
29 |
> For general scalar OS code it isn't likely to matter... the real |
30 |
> impact being like 1-10% difference (being very general.. it could be |
31 |
> less or more in the real world..) |
32 |
> |
33 |
> For HPC codes or anything where you get loops or computationally |
34 |
> complex - the gloves are off and I could see big differences... (again |
35 |
> being general and maybe a bit dramatic for fun) |
36 |
|
37 |
|
38 |
OK (actually fantastic!). Looking at the pathscale site pages and |
39 |
github, perhaps a cheap arm embedded board where llvm is the centerpiece |
40 |
of compiling a minimal system to entice gentoo-llvm testers, would be |
41 |
possible in the near future?. I have a 96boards, HiKey arm64v8 that I |
42 |
could dedicate to gentoo+armv8-llvm testing, if that'd help. [1] |
43 |
|
44 |
Perhaps a baseline bootstrap iso (or such) version targeted at |
45 |
llvm-centric testers on x86-64 or armv8 ? Skip grub2 and use grub-legacy |
46 |
or lilo or (?), since there seems to be issues with llvm-grub2. |
47 |
|
48 |
|
49 |
[1] http://dev.gentoo.org/~tgall/ |
50 |
|
51 |
|
52 |
No matter how you slice it, from someone who is focused on building |
53 |
minimized and embedded (bare metal) systems that are customized and |
54 |
coalesced into a heterogeneous gentoo cluster for HPC, this is wonderful |
55 |
news. Finally a vendor in the cluster space, with some vision and |
56 |
common-sense, imho. Heterogeneous and open HPC is where is at, imho. If |
57 |
there is a forum where the community and pathscale folks discuss issues, |
58 |
point that out as I could not find one for deeper reading.... |
59 |
|
60 |
|
61 |
hth, |
62 |
James |