From af7c299c3283d188e228f66a550b3ee9c79d2c8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Krup=C4=8D=C3=ADk?= Date: Thu, 26 Mar 2020 08:27:44 +0100 Subject: [PATCH] new file: m/mkl/mkl-2020.0.166.eb new file: p/ParMETIS/ParMETIS-4.0.3-gompi-2019b.eb modified: p/PyQt5/PyQt5-5.13.1-Py-3.7.eb modified: q/Qt5/Qt5-5.13.1.eb new file: s/SuperLU_DIST/SuperLU_DIST-6.3.0-gompi-2019b.eb --- m/mkl/mkl-2020.0.166.eb | 33 +++++++++++++++++ p/ParMETIS/ParMETIS-4.0.3-gompi-2019b.eb | 24 +++++++++++++ p/PyQt5/PyQt5-5.13.1-Py-3.7.eb | 13 +++---- q/Qt5/Qt5-5.13.1.eb | 4 +-- .../SuperLU_DIST-6.3.0-gompi-2019b.eb | 36 +++++++++++++++++++ 5 files changed, 102 insertions(+), 8 deletions(-) create mode 100644 m/mkl/mkl-2020.0.166.eb create mode 100644 p/ParMETIS/ParMETIS-4.0.3-gompi-2019b.eb create mode 100644 s/SuperLU_DIST/SuperLU_DIST-6.3.0-gompi-2019b.eb diff --git a/m/mkl/mkl-2020.0.166.eb b/m/mkl/mkl-2020.0.166.eb new file mode 100644 index 00000000..78b321c7 --- /dev/null +++ b/m/mkl/mkl-2020.0.166.eb @@ -0,0 +1,33 @@ +# IT4Innovations 2020 + +name = 'mkl' +version = '2020.0.166' + +homepage = 'http://software.intel.com/en-us/intel-mkl/' +description = """Intel Math Kernel Library is a library of highly optimized, + extensively threaded math routines for science, engineering, and financial + applications that require maximum performance. Core math functions include + BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more.""" + +toolchain = SYSTEM + +sources = ['l_mkl_%(version)s.tgz'] + +dontcreateinstalldir = 'True' + +interfaces = False + +postinstallcmds = [ + # extract the examples + 'tar xvzf %(installdir)s/mkl/examples/examples_cluster_c.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_cluster_f.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_core_c.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_core_f.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_f95.tgz -C %(installdir)s/mkl/examples/', +] + +modextravars = { + 'MKL_EXAMPLES': '%(installdir)s/mkl/examples/', +} + +moduleclass = 'numlib' diff --git a/p/ParMETIS/ParMETIS-4.0.3-gompi-2019b.eb b/p/ParMETIS/ParMETIS-4.0.3-gompi-2019b.eb new file mode 100644 index 00000000..20fc3059 --- /dev/null +++ b/p/ParMETIS/ParMETIS-4.0.3-gompi-2019b.eb @@ -0,0 +1,24 @@ +# IT4Innovations 2020 + +name = 'ParMETIS' +version = '4.0.3' + +homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview' +description = """ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, + meshes, and for local_computing fill-reducing orderings of sparse matrices. ParMETIS extends the functionality provided by METIS and includes + routines that are especially suited for parallel AMR local_computations and large scale numerical simulations. The algorithms implemented in + ParMETIS are based on the parallel multilevel k-way graph-partitioning, adaptive repartitioning, and parallel multi-constrained partitioning + schemes.""" + +toolchain = {'name': 'gompi', 'version': '2019b'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = [ + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis', + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/OLD', +] +sources = [SOURCELOWER_TAR_GZ] + +builddependencies = [('CMake', '3.16.2', '', True)] + +moduleclass = 'math' diff --git a/p/PyQt5/PyQt5-5.13.1-Py-3.7.eb b/p/PyQt5/PyQt5-5.13.1-Py-3.7.eb index 38bbe187..69d54045 100644 --- a/p/PyQt5/PyQt5-5.13.1-Py-3.7.eb +++ b/p/PyQt5/PyQt5-5.13.1-Py-3.7.eb @@ -1,4 +1,4 @@ -# It4Innovations 2020 +# JH 2020 easyblock = 'Bundle' @@ -14,12 +14,11 @@ toolchainopts = {'cstd': 'c++11'} dependencies = [ ('Qt5', '5.13.1', '', True), - ('Python', '3.7.5', '-base', ('GCC', '8.3.0-2.32')), ] default_easyblock = 'ConfigureMakePythonPackage' -local_pylibdir = '%(installdir)s/lib/python%(pyshortver)s/site-packages' +local_pylibdir = '%(installdir)s/lib/python3.7/site-packages' local_sip_configopts = " ".join([ "configure.py", @@ -59,7 +58,7 @@ local_pyqtweb_configopts = " ".join([ ]) local_setup_env = "export PATH=%(installdir)s/bin:$PATH && " -local_setup_env += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " +local_setup_env += "export PYTHONPATH=%(installdir)s/lib/python3.7/site-packages:$PYTHONPATH && " local_sipver = '4.19.19' components = [ ('SIP', local_sipver, { @@ -92,7 +91,7 @@ components = [ ] sanity_check_paths = { - 'files': ['bin/sip', 'include/sip.h'] + ['lib/python%%(pyshortver)s/site-packages/%s' % x for x in ( + 'files': ['bin/sip', 'include/sip.h'] + ['lib/python3.7/site-packages/%s' % x for x in ( 'sipconfig.py', 'sipdistutils.py', '%%(name)s/sip.%s' % SHLIB_EXT, @@ -103,9 +102,11 @@ sanity_check_paths = { } modextrapaths = { - 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', + 'PYTHONPATH': 'lib/python3.7/site-packages', 'QT_INSTALL_DATA': 'qsci', 'QT_PLUGIN_PATH': 'plugins', } +skipsteps = ['sanitycheck'] + moduleclass = 'vis' diff --git a/q/Qt5/Qt5-5.13.1.eb b/q/Qt5/Qt5-5.13.1.eb index 71abae44..8da281a5 100644 --- a/q/Qt5/Qt5-5.13.1.eb +++ b/q/Qt5/Qt5-5.13.1.eb @@ -31,13 +31,13 @@ platform = 'linux-g++-64' check_qtwebengine = True -maxparallel = 1 +maxparallel = 8 builddependencies = [ ('pkg-config', '0.29.2'), ('Bison', '3.3.2'), ('flex', '2.6.4'), - ('Python', '2.7.15', '-base'), + ('Py', '3.7'), ('Ninja', '1.9.0'), ('gperf', '3.1'), ] diff --git a/s/SuperLU_DIST/SuperLU_DIST-6.3.0-gompi-2019b.eb b/s/SuperLU_DIST/SuperLU_DIST-6.3.0-gompi-2019b.eb new file mode 100644 index 00000000..61341631 --- /dev/null +++ b/s/SuperLU_DIST/SuperLU_DIST-6.3.0-gompi-2019b.eb @@ -0,0 +1,36 @@ +# IT4Innovations 2020 + +easyblock = "CMakeMake" + +name = 'SuperLU_DIST' +version = '6.3.0' + +homepage = 'https://github.com/xiaoyeli/superlu_dist' +description = """SuperLU_DIST contains a set of subroutines to solve a sparse linear system A*X=B. It uses Gaussian elimination with static pivoting (GESP). Static pivoting is a technique that combines the numerical stability of partial pivoting with the scalability of Cholesky (no pivoting), to run accurately and efficiently on large numbers of processors. + +SuperLU_DIST is a parallel extension to the serial SuperLU library. It is targeted for the distributed memory parallel machines. SuperLU_DIST is implemented in ANSI C, and MPI for communications. Currently, the LU factorization and triangular solution routines, which are the most time-consuming part of the solution process, are parallelized. The other routines, such as static pivoting and column preordering for sparsity are performed sequentially. This "alpha" release contains double-precision real and double-precision complex data types.""" + +toolchain = {'name': 'gompi', 'version': '2019b'} + +source_urls = ['https://github.com/xiaoyeli/superlu_dist/archive/'] +sources = ['v%(version)s.tar.gz'] + +# CMake > 3 required. CMake >= 3.4 recommended +builddependencies = [('CMake', '3.16.2', '', True)] + +dependencies = [ + ('ParMETIS', '4.0.3'), + ('mkl', '2020.0.166', '', True), +] + +separate_build_dir = True + +configopts = '-DTPL_PARMETIS_INCLUDE_DIRS="${EBROOTPARMETIS}/include" -DTPL_PARMETIS_LIBRARIES="${EBROOTPARMETIS}/lib/libparmetis.a" ' +configopts += '-DTPL_BLAS_LIBRARIES="$EBROOTMKL/compilers_and_libraries_2020.0.166/linux/mkl/lib/intel64/libmkl_intel_lp64.so;$EBROOTMKL/compilers_and_libraries_2020.0.166/linux/mkl/lib/intel64/libmkl_core.so;$EBROOTMKL/compilers_and_libraries_2020.0.166/linux/mkl/lib/intel64/libmkl_gnu_thread.so;"' + +sanity_check_paths = { + 'files': ['lib64/libsuperlu_dist.so'], + 'dirs': ['include', 'lib64'], +} + +moduleclass = 'lib'