Skip to content

dopamine

Mark Gates edited this page Jul 13, 2023 · 1 revision

(this page is still a WIP, as BLAS++ needs to be built for HIP as well)

Recommended modules (as of 2021-01-05)

module purge
module load cmake
module load netlib-scalapack
module load gcc
module load openblas

# Loading these causes an error to be thrown...
# So don't load them unless you are testing why they don't work
# module load openmpi

Building

CMake

To build using CMake, first clone the SLATE repository, and make a directory to build in, for example build and change your shell to that directory.

Now, run:

cmake .. # or whatever the path to the repository you downloaded is

This should print out your configuration. Grok through it and assure that there is HIP support, and CUDA support is disabled (as this machine uses AMD hardware).

Now, build using:

nice make -j8

After this is finished, you can run make check to perform a series of checks (or notify you if one of the tests fails)

You can test zgemm on the GPU via this function:

./test/tester --type z --target d gemm

Known Problems

Due to a package mismatch, the following problem occurs sometimes:

/usr/bin/ld: warning: libgfortran.so.4, needed by /nfs/apps/spack/opt/spack/linux-centos7-x86_64/gcc-7.2.0/netlib-scalapack-2.1.0-laaoram2f7sbmpgy3ogv3sfz5sekruqj/lib/libscalapack.so, may conflict with libgfortran.so.5

We should probably search for the version of gcc package that squelches this

Personal Build Status

This fails for me:

I have to run:

# Load packages to install
module purge
module load cmake
module load netlib-scalapack
module load gcc
module load openblas
module load openmpi

# Build
mkdir build && cd build
cmake ..
nice make -j16

# This fails! Odd indeed...
./test/tester --type z --target h gemm

# Only these should be enabled for running
module purge
module load netlib-scalapack
module load gcc
module load openblas

# Run tester
./test/tester --type z --target h gemm
Clone this wiki locally