Merge branch 'master' of code.it4i.cz:sccs/easyconfigs-it4i into easyconfigs-it4i-salomon

This commit is contained in:
Easy Build 2017-04-21 10:57:43 +02:00
commit 63a9d52400
5 changed files with 142 additions and 1 deletions

View File

@ -0,0 +1,25 @@
#made by PERMON team
easyblock = 'ConfigureMake'
name = 'Clp'
version = '1.16.10'
homepage = 'https://projects.coin-or.org/Clp'
description = """Clp (COIN-OR linear programming) is an open-source linear programming solver written in C++. It is primarily meant to be used as a callable library, but a basic stand-alone executable version is also available. It is a part of the COIN-OR project (https://www.coin-or.org)."""
toolchain = {'name': 'intel', 'version': '2017a'}
source_urls = ['https://www.coin-or.org/download/source/Clp/']
sources = [SOURCE_TGZ]
dependencies = []
sanity_check_paths = {
'files' : ['bin/clp'],
'dirs' : ['include/coin/','lib/'],
}
sanity_check_commands = [('clp','-h')]
moduleclass = 'numlib'

View File

@ -0,0 +1,30 @@
#made by PERMON team
easyblock = 'MakeCp'
name = 'LIBLINEAR'
version = '2.11'
homepage = 'http://www.csie.ntu.edu.tw/~cjlin/liblinear/'
description = """LIBLINEAR is a simple package for solving large-scale regularized linear
classification and regression. It supports L2-regularized logistic regression, L2-loss support vector classification
L1-loss support vector classification, L1-regularized L2-loss support vector classification, L1-regularized logistic regression
L2-regularized L2-loss support vector regression, L1-loss support vector regression."""
toolchain = {'name': 'intel', 'version': '2017a'}
source_urls = [homepage]
sources = [SOURCELOWER_TAR_GZ]
files_to_copy = [(['train', 'predict'], 'bin')]
sanity_check_paths = {
'files': ['bin/%s' % x for x in ['train', 'predict']],
'dirs': [],
}
modextrapaths = {
'PATH': ['bin'],
}
moduleclass = 'numlib'

View File

@ -1,3 +1,5 @@
#adapted by PERMON team
easyblock = 'MakeCp'
name = 'LIBSVM'
@ -28,4 +30,4 @@ modextrapaths = {
'PATH': ['bin', 'bin/svm-toy/qt'],
}
moduleclass = 'lib'
moduleclass = 'numlib'

View File

@ -0,0 +1,28 @@
#adapted by PERMON team
name = 'numpy'
version = '1.12.1'
versionsuffix = '-Python-%(pyver)s'
homepage = 'http://www.numpy.org'
description = """NumPy is the fundamental package for scientific computing with Python. It contains among other things:
a powerful N-dimensional array object, sophisticated (broadcasting) functions, tools for integrating C/C++ and Fortran
code, useful linear algebra, Fourier transform, and random number capabilities. Besides its obvious scientific uses,
NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary data-types can be
defined. This allows NumPy to seamlessly and speedily integrate with a wide variety of databases."""
toolchain = {'name': 'intel', 'version': '2017a'}
source_urls = [PYPI_SOURCE]
sources = [SOURCE_ZIP]
patches = ['numpy-1.12.0-mkl.patch']
dependencies = [
('Python', '2.7.11'),
]
# check that numpy is present in python and in proper version
sanity_check_commands = [('python', '-c "import numpy; assert(numpy.__version__ == \'%(version)s\')"')]
moduleclass = 'math'

View File

@ -0,0 +1,56 @@
#made by PERMON team
# BUILD ON COMPUTE NODE
easyblock = 'ConfigureMake'
name = 'PETSc'
version = '3.7.5'
versionsuffix = '-it4i'
homepage = 'http://www.mcs.anl.gov/petsc'
description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the
scalable (parallel) solution of scientific applications modeled by partial differential equations."""
toolchain = {'name': 'intel', 'version': '2017a'}
#build is still parallel, PETSc make doesnt support -j opt
maxparallel = 0
source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots']
sources = [SOURCELOWER_TAR_GZ]
# (build) dependencies provided through EasyBuild
builddependencies = [('CMake', '3.7.2', '', True)]
# configure installs dependencies -> remove installdir before configure
keeppreviousinstall = True
preconfigopts = 'rm -rf %(installdir)s;'
petscArch = 'intel-opt'
petscDir = '%(builddir)s/%(namelower)s-%(version)s'
# config options
configopts = '--CFLAGS=-O3 -xHost --CXXFLAGS=-O3 -xHost --FFLAGS=-O3 -xHost --with-c++-support --with-pic=1 '
configopts += '--with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90 --with-debugging=0 --with-gnu-compilers=0 '
configopts += '--with-mpi=1 --with-x=0 '
configopts += '--download-metis --download-parmetis --download-mumps --download-superlu --download-superlu_dist '
configopts += '--with-blas-lapack-lib=[$EBROOTIMKL/mkl/lib/intel64_lin/libmkl_intel_lp64.a,libmkl_sequential.a,libmkl_core.a] '
configopts += '--with-scalapack-include=$EBROOTIMKL/mkl/include '
configopts += '--with-scalapack-lib=[$EBROOTIMKL/mkl/lib/intel64_lin/libmkl_scalapack_lp64.a,libmkl_blacs_intelmpi_lp64.a,libmkl_intel_lp64.a,libmkl_sequential.a,libmkl_core.a] '
configopts += '--with-scalapack=1 '
configopts += 'PETSC_ARCH=%s' % petscArch
installopts = 'PETSC_DIR=%s PETSC_ARCH=%s' % (petscDir,petscArch)
buildopts = installopts + ' all'
modextravars = {'PETSC_DIR':'%(installdir)s'}
moduleclass = 'numlib'
# sanity checks
runtest = 'test' # run make test after make
sanity_check_paths = {
'files': ['include/petscconf.h', 'lib/libpetsc.so'],
'dirs': []
}
sanity_check_commands = [('petscmpiexec','-h')]