1 |
> On 4/04/2019, at 19:49, Fabian Groffen <grobian@g.o> wrote: |
2 |
> |
3 |
> Just chiming in on this interesting topic :) |
4 |
> |
5 |
> On 04-04-2019 01:51:58 +0000, Francois Bissey wrote: |
6 |
>> Hi, |
7 |
>> |
8 |
>> As someone who was involved until very recently in installing software |
9 |
>> on the New Zealand national facility I feel I should take exception to some |
10 |
>> of these comments. |
11 |
>> To put things in perspective |
12 |
>> 1) I am using Gentoo since 2003 |
13 |
>> 2) I am a regular contributor to the science team and maintain sage-on-gentoo |
14 |
>> 3) I pushed for a while to have prefix working on ppc64 (the hardware was |
15 |
>> at some time part of the national facility above) |
16 |
>> 4) I have contributed code to spack and help fix some issues with libtool |
17 |
>> in spack and occasionally suggests fix to some packages. |
18 |
>> |
19 |
>> Gentoo prefix is awesome but some areas are not as flexible as spack. |
20 |
>> Mainly because it is designed like a gentoo distro as a single tree |
21 |
>> install. Everything goes into one prefix. |
22 |
>> What spack allows you to do (and that is a usual requirement): |
23 |
>> allow and maintain an unhealthy forest of softwares: |
24 |
>> 1) across several versions |
25 |
>> 2) across various compilers |
26 |
>> The whole dynamically loadable via “modules”. Each bits in its own bubble. |
27 |
>> This also has limitation of course. |
28 |
>> Gentoo has slots that does multiple versions of some software but it is |
29 |
>> not a universal feature (nor should it be on the point of view of a distro). |
30 |
>> Basically if you want to reproduce some the scenarios managed by spack you |
31 |
>> need multiple prefix. |
32 |
> |
33 |
> So what scenarios exactly are these? |
34 |
> |
35 |
|
36 |
It can be several versions of the same software as stated earlier. Either executable
|
37 |
or libraries.
|
38 |
For example while gromacs 5.x was stable a user wanted me to resurrect a copy of gromacs
|
39 |
3 something because it was the last version with a particular potential in the feature
|
40 |
set and that’s what they wanted to use.
|
41 |
You can have the same software compiled with different compilers. Which can be various
|
42 |
version of gcc/intel compilers or other proprietary compiler (PGI comes to mind as well
|
43 |
as cray which has its own toolchain). Because of potential incompatibilities in the
|
44 |
Fortran binary interface you will have a tree by fortran compiler vendor and sometimes
|
45 |
different version of the same compiler (gcc 4 to 6, gcc 7 and gcc 8 all have a different
|
46 |
runtime want to troll bugzilla to see how many problems that created to users?).
|
47 |
People will want a particular compiler because the software they use compiled with
|
48 |
another compiler won’t pass the test suite or crash in their particular extreme
|
49 |
scenario. And another group using the same software will want a different compiler for the
|
50 |
same reason.
|
51 |
|
52 |
Most HPC cluster will want MPI support. Which is fun to enable in prefix. Do you
|
53 |
go with the OFED stack from prefix or your vendor. Do you even have a choice
|
54 |
(fortunately the scenario I was in with an old crummy 2.6 kernel is surely gone)?
|
55 |
If you go with your vendor you will have fun tweaking your prefix install.
|
56 |
|
57 |
> Things like multilib support? We (at least I) stayed away from that |
58 |
> feature in Prefix due to its added complexity. I guess nowadays it |
59 |
> could be reconsidered (profile change/addition?), even though some of |
60 |
> the concepts are flawed, hence the preference for completely separate |
61 |
> prefixes. |
62 |
|
63 |
I don’t really care about multilib. The cases where I heard of someone
|
64 |
specifically wanting 32bits on a system defaulting to 64 can be counted
|
65 |
on one finger. Fun ticket that was, especially since they were also looking
|
66 |
at static linking in C++.
|
67 |
I would want multi-abi at the compiler level and more slotting with slot
|
68 |
change in the user environment. That would be a start.
|
69 |
|
70 |
I am sure one individual group or may be several group of people may find
|
71 |
a prefix interesting and even it bringing everything they need. But once
|
72 |
you start to interact with many groups at the national level who want
|
73 |
completely different things it becomes impossible to fulfil all the
|
74 |
requirements with a single prefix.
|
75 |
|
76 |
There is a political aspect. Because HPC is hard to use, support does a lot
|
77 |
of software install for some standard or hard pieces - or some bits that
|
78 |
are deemed a priority. The other solution is to just give people the compilers
|
79 |
and tell them if you can’t hack it up yourself in your corner you don’t
|
80 |
belong here.
|
81 |
|
82 |
François |