[Rd] Installation of R-4.3.1 with intel 2022

Martin Maechler m@ech|er @end|ng |rom @t@t@m@th@ethz@ch
Wed Jun 21 12:44:42 CEST 2023


>>>>> Giuseppe Calò 
>>>>>     on Wed, 21 Jun 2023 09:17:14 +0200 writes:

    > Thanks Tomas,
    > With my configure (I follower Admin manual for intel) and deleting  HAVE_MATHERR in config I’m able to perform, configure, make and make install, only make check has this issue:

    > running code in 'array-subset.R' ... OK
    > running code in 'reg-tests-1a.R' ... OK
    > running code in 'reg-tests-1b.R' ... OK
    > running code in 'reg-tests-1c.R' ... OK
    > running code in 'reg-tests-1d.R' ... OK
    > running code in 'reg-tests-1e.R' ... OK
    > running code in 'reg-tests-2.R' ... OK
    > comparing 'reg-tests-2.Rout' to './reg-tests-2.Rout.save' ... OK
    > running code in 'reg-examples1.R' ... OK
    > running code in 'reg-examples2.R' ... OK
    > running code in 'reg-packages.R' ... OK
    > running code in 'p-qbeta-strict-tst.R' ... OK
    > running code in 'd-p-q-r-tst-2.R' ...make[3]: *** [Makefile.common:117: d-p-q-r-tst-2.Rout] Error 1
    > make[3]: Leaving directory '/juno/opt/sources/R/R-4.3.1-intel21/tests'
    > make[2]: *** [Makefile.common:320: test-Reg] Error 2
    > make[2]: Leaving directory '/juno/opt/sources/R/R-4.3.1-intel21/tests'
    > make[1]: *** [Makefile.common:190: test-all-basics] Error 1
    > make[1]: Leaving directory '/juno/opt/sources/R/R-4.3.1-intel21/tests'
    > make: *** [Makefile:307: check] Error 2

    > Do you have some suggestion about this error?

Only if you tell us more about the resulting

  d-p-q-r-tst-2.Rout.fail
                    ^^^^^   file

e.g. giving us the last 20 lines or so, e.g. from
  tail -n 20 /juno/opt/sources/R/R-4.3.1-intel21/tests/d-p-q-r-tst-2.Rout.fail 

Also, in addition to the output of sessionInfo(),  the  output of

       str(.Machine)

maybe interesting.  Once I'd see these, I might have to ask further questions
(possibly off-mailinglist), so it'd be good if you keep the
R "installation" in  '/juno/opt/sources/R/R-4.3.1-intel21/  for
minor "experiments".

Best regards,
Martin

Martin Maechler
ETH Zurich  and  R Core team

		    
    > Checking MKL on installing R it is:

    > Matrix products: default
    > BLAS/LAPACK: /juno/opt/intel/oneapi_2022.2.0/mkl/2022.1.0/lib/intel64/libmkl_intel_lp64.so.2;  LAPACK version 3.9.0

    > And 

    > ldd /juno/opt/intel-2021.6.0/R/4.3.1/lib64/R/lib/libRblas.so| grep mkl
    > libmkl_intel_lp64.so.2 => /juno/opt/intel/oneapi_2022.2.0/mkl/2022.1.0/lib/intel64/libmkl_intel_lp64.so.2 (0x00007f01ba508000)
    > libmkl_intel_thread.so.2 => /juno/opt/intel/oneapi_2022.2.0/mkl/2022.1.0/lib/intel64/libmkl_intel_thread.so.2 (0x00007f01b6d94000)
    > libmkl_core.so.2 => /juno/opt/intel/oneapi_2022.2.0/mkl/2022.1.0/lib/intel64/libmkl_core.so.2 (0x00007f01b29be000)

    > About you, is R using right mkl? (Oneapi mkl)

    > Thanks,
    > Giuseppe.

    > ———————————————————————————————————————
    > Giuseppe Calò

    > Fondazione CMCC
    > Centro Euro-Mediterraneo sui Cambiamenti Climatici presso Complesso Ecotekne 
    > Università del Salento - Strada Prov.le Lecce - Monteroni 73100 Lecce  IT
    > http://www.cmcc.it
    > https://goo.gl/maps/wtahPDbNVen

    > mobile: (+39) 3208190020
    > email: giuseppe.calo using cmcc.it

    > Le informazioni contenute in questo messaggio di posta elettronica e negli allegati se presenti sono riservate e confidenziali: ne è vietata la diffusione in qualsiasi modo o forma (GDPR 2016/679).
    > Qualora lei non fosse il destinatario del messaggio, la invito a non diffonderlo e ad eliminarlo dandone gentilmente comunicazione al mittente.

    > The information included in this e-mail and any attachments are confidential and may also be privileged (GDPR 2016/679).
    > If you are not the correct recipient, you are kindly requested to notify the sender immediately, to cancel it and not disclose the contents to any other person.




    >> On 21 Jun 2023, at 09:10, Tomas Kalibera <tomas.kalibera using gmail.com> wrote:
    >> 
    >> 
    >> On 6/20/23 18:47, Giuseppe Calò wrote:
    >>> Hi all,
    >>> I have the issue:
    >>> 
    >>> icc -std=c99 -std=gnu11 -I../../src/extra -I../../src/extra/xdr -I. -I../../src/include -I../../src/include  -I/usr/local/include -I../../src/nmath -DHAVE_CONFIG_H   -fopenmp -fpic  -g -O3 -wd188 -ip -mp  -c eval.c -o eval.o
    >>> arithmetic.c(66): warning #274: declaration is not visible outside of function
    >>> int matherr(struct exception *exc)
    >>> ^
    >>> 
    >>> arithmetic.c(68): error: pointer to incomplete class type is not allowed
    >>> switch (exc->type) {
    >>> ^
    >>> 
    >>> arithmetic.c(69): error: identifier "DOMAIN" is undefined
    >>> case DOMAIN:
    >>> ^
    >>> 
    >>> arithmetic.c(70): error: identifier "SING" is undefined
    >>> case SING:
    >>> ^
    >>> 
    >>> arithmetic.c(73): error: identifier "OVERFLOW" is undefined
    >>> case OVERFLOW:
    >>> ^
    >>> 
    >>> arithmetic.c(76): error: identifier "UNDERFLOW" is undefined
    >>> case UNDERFLOW:
    >>> ^
    >>> 
    >>> arithmetic.c(77): error: pointer to incomplete class type is not allowed
    exc-> retval = 0.0;
    >>> 
    >>> icc -std=c99 -std=gnu11 -I../../src/extra -I../../src/extra/xdr -I. -I../../src/include -I../../src/include  -I/usr/local/include -I../../src/nmath -DHAVE_CONFIG_H   -fopenmp -fpic  -g -O3 -wd188 -ip -mp  -c flexiblas.c -o flexiblas.o
    >>> icc: command line remark #10148: option '-mp' not supported
    >>> compilation aborted for arithmetic.c (code 2)
    >>> make[3]: *** [../../Makeconf:129: arithmetic.o] Error 2
    >>> make[3]: *** Waiting for unfinished jobs....
    >>> icc: command line remark #10148: option '-mp' not supported
    >>> make[3]: Leaving directory '/opt/sources/R/R-4.3.1-intel21/src/main'
    >>> make[2]: *** [Makefile:140: R] Error 2
    >>> make[2]: Leaving directory '/opt/sources/R/R-4.3.1-intel21/src/main'
    >>> make[1]: *** [Makefile:28: R] Error 1
    >>> make[1]: Leaving directory '/opt/sources/R/R-4.3.1-intel21/src'
    >>> make: *** [Makefile:62: R] Error 1
    >>> 
    >>> with oneapi-2022.1.0/compiler-rt/2022.1.0; oneapi-2022.1.0/mkl/2022.1.0 while building R-4.3.1 on redhat 8.4 glibc2.28-189
    >>> 
    >>> I followed a workaround proposed:
    >>> https://community.intel.com/t5/Intel-C-Compiler/Error-when-compiling-R-from-source-code-ubuntu-18-04/m-p/1176401/thread-id/36575 <https://community.intel.com/t5/Intel-C-Compiler/Error-when-compiling-R-from-source-code-ubuntu-18-04/m-p/1176401/thread-id/36575>
    >>> 
    >>> Deactivate  HAVE_MATHERR macro in src/include/config.h
    >> 
    >> Hi Giuseppe,
    >> 
    >> thanks for the report. Undefining HAVE_MATHERR seems a valid work-around to me, based on reading the thread above and the sources.
    >> 
    >> We could improve this in R, if keeping this code, at least improve the configure check so that it also tests for the presence of the macros.
    >> 
    >>> Using this workaroud I get R with:
    >>> 
    >>> BLAS/LAPACK: /opt/intel/oneapi_2022.2.0/mkl/2022.1.0/lib/intel64/libmkl_intel_lp64.so.2;  LAPACK version 3.9.0
    >>> 
    >>> is correct?
    >>> 
    >>> Is these a way to avoid arithmetic issue?
    >>> 
    >>> My configure is:
    >>> 
    >>> module load intel-2021.6.0/2021.6.0 oneapi-2022.1.0/mkl
    >>> MKL="-L${MKLROOT}/lib/intel64 -lmkl_gf_lp64 -lmkl_core -lmkl_gnu_thread -dl -fopenmp"
    >>> export CC="icc -std=c99"
    >>> export CFLAGS="-g -O3 -wd188 -ip -mp"
    >>> export FC=ifort
    >>> export FLAGS="-g -O3 -mp"
    >>> export CXX=icpc
    >>> export CXXFLAGS="-g -O3 -mp"
    >>> SHLIB_CXXLD=icpc
    >>> export MKL_INTERFACE_LAYER=GNU,LP64
    >>> export MKL_THREADING_LAYER=GNU
    >>> ./configure --prefix=/opt/intel-2021.6.0/R/4.3.1 --with-blas="$MKL" --with-lapack  --enable-memory-profiling --enable-BLAS-shlib --enable-R-shlib --enable-R-static-lib --with-pcre2
    >> 
    >> AFAIK, neither icc nor MKL is regularly tested with R/CRAN packages, so the risk of running into some issues is somewhat higher than for say GCC and the reference BLAS/LAPACK.
    >> 
    >> Some hints on using icc and MKL can be found in the R Admin manual, https://cran.r-project.org/doc/manuals/r-release/R-admin.html. Unless you have done that already, you might want to check your configuration against those, I didn't spot any obvious issue. If you find any other problem, please report, so that it could be fixed or the hints updated.
    >> 
    >> Thanks,
    >> Tomas
    >> 
    >>> 
    >>> Thanks a lot,
    >>> Giuseppe.
    >>> 
    >>> ———————————————————————————————————————
    >>> Giuseppe Calò
    >>> 
    >>> Fondazione CMCC
    >>> Centro Euro-Mediterraneo sui Cambiamenti Climatici presso Complesso Ecotekne
    >>> Università del Salento - Strada Prov.le Lecce - Monteroni 73100 Lecce  IT
    >>> http://www.cmcc.it <http://www.cmcc.it/>
    >>> https://goo.gl/maps/wtahPDbNVen
    >>> 
    >>> mobile: (+39) 3208190020
    >>> email: giuseppe.calo using cmcc.it
    >>> 
    >>> Le informazioni contenute in questo messaggio di posta elettronica e negli allegati se presenti sono riservate e confidenziali: ne è vietata la diffusione in qualsiasi modo o forma (GDPR 2016/679).
    >>> Qualora lei non fosse il destinatario del messaggio, la invito a non diffonderlo e ad eliminarlo dandone gentilmente comunicazione al mittente.
    >>> 
    >>> The information included in this e-mail and any attachments are confidential and may also be privileged (GDPR 2016/679).
    >>> If you are not the correct recipient, you are kindly requested to notify the sender immediately, to cancel it and not disclose the contents to any other person.
    >>> 
    >>> 
    >>> 
    >>> 
    >>> 
    >>> [[alternative HTML version deleted]]
    >>> 
    >>> ______________________________________________
    >>> R-devel using r-project.org mailing list
    >>> https://stat.ethz.ch/mailman/listinfo/r-devel


    > [[alternative HTML version deleted]]

    > ______________________________________________
    > R-devel using r-project.org mailing list
    > https://stat.ethz.ch/mailman/listinfo/r-devel



More information about the R-devel mailing list