Skip to content

Conversation

@exolightor
Copy link

Adds installation of OpenBLAS v0.3.26 and Intel MKL 2018.0.0 to testing docker image at docker/testsysds.Dockerfile.

Added two config files, one for OpenBLAS and one for MKL:

  • src/test/config/SystemDS-config-MKL.xml
  • src/test/config/SystemDS-config-OpenBLAS.xml.

Adjusted src/test/java/org/apache/sysds/test/component/matrix/MatrixMultiplyTest.java so that matrix multiplication can be executed with or without native instructions via LibMatrixNative.matrixMult.

Added two test classes which inherit the tests from MatrixMultiplyTests but use OpenBLAS or MKL for matrix multiplication:

  • src/test/java/org/apache/sysds/test/component/matrix/nativeBLAS/MatrixMultiplyMKLTest.java
  • src/test/java/org/apache/sysds/test/component/matrix/nativeBLAS/MatrixMultiplyOpenBLASTest.java.

Added two test classes which inherit the tests from src/test/java/org/apache/sysds/test/functions/dnn/Conv2DTest.java but use OpenBLAS or MKL for convolution:

  • src/test/java/org/apache/sysds/test/functions/dnn/nativeBLAS/Conv2DMKLTest.java
  • src/test/java/org/apache/sysds/test/component/matrix/nativeBLAS/MatrixMultiplyOpenBLASTest.java.

To get the convolution to work, old Intel MKL, instead of OneAPI MKL, had to be installed. The MKL-DNN C API used in SystemDS is not included in newer versions of MKL or MKL-DNN/oneDNN.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant