diff --git a/Vagrantfile b/Vagrantfile index 8378ce3..772c9f6 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -48,15 +48,18 @@ Vagrant.configure("2") do |config| # Provider-specific configuration so you can fine-tune various # backing providers for Vagrant. These expose provider-specific options. # Example for VirtualBox: - # - # config.vm.provider "virtualbox" do |vb| - # # Display the VirtualBox GUI when booting the machine - # vb.gui = true - # - # # Customize the amount of memory on the VM: - # vb.memory = "1024" - # end - # + + config.vm.provider "virtualbox" do |vb| + # Display the VirtualBox GUI when booting the machine + # vb.gui = true + + # Customize the amount of memory on the VM: + vb.cpus = "4" + + # Customize the amount of memory on the VM: + vb.memory = "8192" + end + # View the documentation for the provider you are using for more # information on available options. @@ -67,4 +70,7 @@ Vagrant.configure("2") do |config| # apt-get update # apt-get install -y apache2 # SHELL + + config.vm.provision "shell", path: "provision.sh" + end diff --git a/provision.sh b/provision.sh new file mode 100644 index 0000000..3ed7720 --- /dev/null +++ b/provision.sh @@ -0,0 +1,25 @@ +yum -y install http://build.openhpc.community/OpenHPC:/1.3/CentOS_7/x86_64/ohpc-release-1.3-1.el7.x86_64.rpm +yum -y install ohpc-base +yum -y install kernel-devel +yum -y install lmod-ohpc + +yum -y install ohpc-autotools +yum -y install EasyBuild-ohpc +yum -y install hwloc-ohpc +yum -y install spack-ohpc +yum -y install valgrind-ohpc + +yum -y install gnu-compilers-ohpc +yum -y install gnu-compilers-ohpc +yum -y install openmpi-gnu-ohpc + +yum -y install gnu7-compilers-ohpc +yum -y install gnu7-compilers-ohpc +yum -y install openmpi-gnu7-ohpc +yum -y install openmpi3-gnu7-ohpc + +yum -y install gnu8-compilers-ohpc +yum -y install gnu8-compilers-ohpc +yum -y install openmpi3-gnu8-ohpc + +yum -y install git vim diff --git a/spack/compilers.yaml b/spack/compilers.yaml new file mode 100644 index 0000000..c184620 --- /dev/null +++ b/spack/compilers.yaml @@ -0,0 +1,40 @@ +compilers: +- compiler: + environment: {} + extra_rpaths: [] + flags: {} + modules: [gnu] + operating_system: centos7 + paths: + cc: /opt/ohpc/pub/compiler/gcc/5.4.0/bin/gcc + cxx: /opt/ohpc/pub/compiler/gcc/5.4.0/bin/g++ + f77: /opt/ohpc/pub/compiler/gcc/5.4.0/bin/gfortran + fc: /opt/ohpc/pub/compiler/gcc/5.4.0/bin/gfortran + spec: gcc@5.4.0 + target: x86_64 +- compiler: + environment: {} + extra_rpaths: [] + flags: {} + modules: [gnu7] + operating_system: centos7 + paths: + cc: /opt/ohpc/pub/compiler/gcc/7.3.0/bin/gcc + cxx: /opt/ohpc/pub/compiler/gcc/7.3.0/bin/g++ + f77: /opt/ohpc/pub/compiler/gcc/7.3.0/bin/gfortran + fc: /opt/ohpc/pub/compiler/gcc/7.3.0/bin/gfortran + spec: gcc@7.3.0 + target: x86_64 +- compiler: + environment: {} + extra_rpaths: [] + flags: {} + modules: [gnu8] + operating_system: centos7 + paths: + cc: /opt/ohpc/pub/compiler/gcc/8.3.0/bin/gcc + cxx: /opt/ohpc/pub/compiler/gcc/8.3.0/bin/g++ + f77: /opt/ohpc/pub/compiler/gcc/8.3.0/bin/gfortran + fc: /opt/ohpc/pub/compiler/gcc/8.3.0/bin/gfortran + spec: gcc@8.3.0 + target: x86_64 diff --git a/spack/config.yaml b/spack/config.yaml new file mode 100644 index 0000000..b5e53db --- /dev/null +++ b/spack/config.yaml @@ -0,0 +1,11 @@ +config: + # This is the path to the root of the Spack install tree. + # You can use $spack here to refer to the root of the spack instance. + install_tree: /opt/ohpc/pub/spack/opt + + # Locations where different types of modules should be installed. + module_roots: + tcl: /opt/ohpc/pub/spack/modules + lmod: /opt/ohpc/pub/spack/lmod + dotkit: /opt/ohpc/pub/spack/dotkit + diff --git a/spack/packages.yaml b/spack/packages.yaml new file mode 100644 index 0000000..3bce3a7 --- /dev/null +++ b/spack/packages.yaml @@ -0,0 +1,40 @@ +packages: + gcc: + modules: + gcc@5.4.0: gnu + gcc@7.3.0: gnu7 + gcc@8.3.0: gnu8 + buildable: False + openmpi: + paths: + openmpi@1.10.7%gcc@5.4.0: /opt/ohpc/pub/mpi/openmpi-gnu/1.10.7 + openmpi@1.10.7%gcc@7.3.0: /opt/ohpc/pub/mpi/openmpi-gnu7/1.10.7 + openmpi@3.1.0%gcc@7.3.0: /opt/ohpc/pub/mpi/openmpi3-gnu7/3.1.0 + openmpi@3.1.4%gcc@8.3.0: /opt/ohpc/pub/mpi/openmpi3-gnu8/3.1.4 + buildable: False + automake: + modules: + automake@1.16: autotools + buildable: False + autoconf: + modules: + autoconf@2.69: autotools + buildable: False + cmake: + modules: + cmake@3.14.3: cmake + buildable: False + openssl: + paths: + openssl@1.0.2k-fips: /bin + buildable: False + netlib-scalapack: + paths: + netlib-scalapack@2.0.2%gcc@5.4.0^openmpi@1.10.7^openblas@0.2.20: /opt/ohpc/pub/libs/gnu/openmpi/scalapack/2.0.2 + # netlib-scalapack@2.0.2%gcc@8.3.0^openmpi@3.1.4^openblas@0.3.5: /opt/ohpc/pub/libs/gnu8/openmpi3/scalapack/2.0.2 + # buildable: False + openblas: + paths: + openblas@0.2.20%gcc@5.4.0: /opt/ohpc/pub/libs/gnu/openblas/0.2.20 + # openblas@0.3.5%gcc@8.3.0: /opt/ohpc/pub/libs/gnu8/openblas/0.3.5 + # buildable: False