[NLPL Task Force (A)] [rt.uio.no #3243738] XY support in Python3

Sabry Razick via RT hpc-drift at usit.uio.no
Tue Jan 15 08:55:32 UTC 2019


Hello,
  Will the module "module load Python/3.5.2-foss-2016b" work for you all you want to recompile a new one ?

Regards,
Sabry.

On 2019-01-08 14:34:40, sabryr wrote:
> Hi,
> 
> On 2019-01-08 13:35:25, oe wrote:
> > many thanks for the quick follow-up, sabry!
> 
> You are welcome
> 
> > would there be a relatively easy way of retroactively fixing the
> > 3.5.0
> >  module?
> 
> No, due to the policy that installed modules will not change. As I
> would have to recompile,can not guarantee the change will be only the
> lzima,thus potentially effect others. But I can install another 3.5.
> module for you, if miner version is not a problem.
> 
> For example is following module usable (a secret module we have)
> 
> module load Python/3.5.2-foss-2016b
> 
> If not, we can install similar semi-secret module.
> 
> i am asking because in the NLPL context we have produced at
> > least half a dozen python modules that are derived from the base
> > ‘python3/3.5.0’ module.  here, derivative means creating a virtual
> > environment, installing one or more add-on packages, and tweaking
> > PYTHONPATH such that several such derivative modules can be combined.
> > we have adopted this path for NLPL, for better modularity,
> > interoperability, and uniformity between Abel and Taito.  some
> > additional background on this approach is on the NLPL wiki:
> >
> > http://wiki.nlpl.eu/index.php/Infrastructure/software/python
> 
> As the workload will be less on our end, I will try to help on this.
> 
> 
> > switching to a different base module (e.g. from 3.5.0 to 3.7.0) would
> > require rebuilding all of these derivative modules (hence is not
> > something i would not do light-heartedly :-).  but see below ...
> >
> > —more generally, we have been meaning to start a fresh batch of
> > derivative modules based on 3.6 or even 3.7.  to start down this
> > route, it would be important to agree on which characteristics the
> > base python module should have.  (unlike the older 3.5.0
> > installation)
> > i see that your new 3.7.0 is minimal, i.e. does not (yet) include any
> >  add-on components.
> 
> That is correct. The future plan is to provide basic python and
> another module called "python-modules". There is no PYTHONPATH set in
> this module either and highly customizable.
> 
> in principle, i think this is right, and all
> > add-ons should arguably be provisioned as separate modules.  what
> > about NumPy with MKL support, however?  that was compiled into the
> > 3.5.0 installation and is something i suspect many users might want.
> > or maybe the default OpenBLAS back-end for NumPy is just as good (on
> > average), and we can make do with standard, pre-compiled NumPy
> > wheels?
> >  if so, is there a particular reason you opted to build the new 3.7.0
> > with the Intel tool chain?
> 
> Latest MKL, older OpenBLAS, (latest blas and Atlas soon) available
> when you load the " module load python3/3.7.0", but you must compile
> numpy (not from wheel) to use it.
> 
> $ module load python3/3.7.0
> $ echo $CPATH | grep mkl --color=always
> 
> /cluster/software/VERSIONS/intel-
> 2019.0/compilers_and_libraries_2019.0.117/linux/mkl/include/
> /cluster/software/VERSIONS/intel-
> 2019.0/compilers_and_libraries_2019.0.117/linux/mkl/include/fftw:
> 
> 
> > in the NLPL context, we have been tossing around some of these
> > high-level design questions for a little while now, and i am hoping
> > to
> > tap into your broader experience with maintaining modules on Abel
> > here.  would it make sense to discuss some of the more general
> > questions over a cup of coffee sometime this week?  anyone else in
> > your group with strong opinions about python modules?
> 
> Yes we could discuss this, I do not think there are strong opinions,
> but I could ask permission from Jon if needed .  Only thing is once
> installed modules are (almost) newer changed.
> 
> 
> Regards,
> Sabry
> >
> > with thanks in advance, oe
> >
> > On Tue, Jan 8, 2019 at 11:31 AM Sabry Razick via RT
> > <hpc-drift at usit.uio.no> wrote:
> > >
> > > On 2019-01-07 23:20:24, oe wrote:
> > > > colleagues,
> > > >
> > > > using the default ‘python3’ module on Abel, i am running into the
> > > > following import error (required by a third-party component):
> > > >
> > > > [oe at login-0-0 ~]$ module purge; module load python3/3.5.0
> > > > [oe at login-0-0 ~]$ type -all python3
> > > > python3 is /cluster/software/VERSIONS/python3-3.5.0/bin/python3
> > > > [oe at login-0-0 ~]$ python3 -c "import lzma;"
> > > > Traceback (most recent call last):
> > > >   File "<string>", line 1, in <module>
> > > >   File "/cluster/software/VERSIONS/python3-
> > > > 3.5.0/lib/python3.5/lzma.py",
> > > > line 26, in <module>
> > > >     from _lzma import *
> > > > ImportError: No module named '_lzma'
> > > >
> > > > for all i can tell, there are no RHEL lzma packaged installed,
> > > > but
> > > > there is a separate module ‘xz/5.2.2’.  i wonder whether my
> > > > import
> > > > error could just mean that no lzma (aka xz) headers and libraries
> > > > were
> > > > visible when the python3 installation was compiled?
> > > >
> > > > with thanks in advance, oe
> > > >
> > >
> > > Hi,
> > >   Your observation is correct. I have fixed this in the latest
> > > version (did not fix the old).
> > >
> > > -bash-4.1$ module purge
> > > -bash-4.1$ module load python3/3.7.0
> > > -bash-4.1$ python3 -c "import lzma;"
> > > -bash-4.1$ python3 -c "import lzma;print(lzma.__file__)"
> > > /cluster/software/VERSIONS/python3-3.7.0/lib/python3.7/lzma.py
> > >
> > >
> > > Regards,
> > > Sabry
> > >




More information about the infrastructure mailing list