From eead22ad210439553c047a935955cc495bfab0eb Mon Sep 17 00:00:00 2001 From: Sudara Date: Tue, 14 Feb 2023 19:38:45 +0100 Subject: [PATCH] Add intel MKL support --- .github/workflows/cmake_ctest.yml | 14 +++++++------- CMakeLists.txt | 9 +++++++++ JUCE | 2 +- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/.github/workflows/cmake_ctest.yml b/.github/workflows/cmake_ctest.yml index d6d1b73..ab599bc 100644 --- a/.github/workflows/cmake_ctest.yml +++ b/.github/workflows/cmake_ctest.yml @@ -42,7 +42,7 @@ jobs: ccache: sccache steps: - + # This is just easier than debugging different compilers on different platforms - name: Set up Clang if: ${{ matrix.name != 'macOS' }} @@ -61,8 +61,8 @@ jobs: id: cache-ipp uses: actions/cache@v3 with: - key: ipp-v1 - path: C:\Program Files (x86)\Intel\oneAPI\ipp + key: intel-v2 + path: C:\Program Files (x86)\Intel\oneAPI - name: Install IPP (Windows) if: (runner.os == 'Windows') && (steps.cache-ipp.outputs.cache-hit != 'true') @@ -70,15 +70,15 @@ jobs: run: | curl --output oneapi.exe https://registrationcenter-download.intel.com/akdlm/irc_nas/19078/w_BaseKit_p_2023.0.0.25940_offline.exe ./oneapi.exe -s -x -f oneapi - ./oneapi/bootstrapper.exe -s -c --action install --components=intel.oneapi.win.ipp.devel --eula=accept -p=NEED_VS2022_INTEGRATION=1 --log-dir=. - + ./oneapi/bootstrapper.exe -s -c --action install --components=intel.oneapi.win.ipp.devel:intel.oneapi.win.mkl.devel --eula=accept -p=NEED_VS2022_INTEGRATION=1 --log-dir=. + ./oneapi/bootstrapper.exe --list-components - name: Save IPP cache even on job fail if: runner.os == 'Windows' && (steps.cache-ipp.outputs.cache-hit != 'true') uses: actions/cache/save@v3 with: path: C:\Program Files (x86)\Intel\oneAPI\ipp - key: ipp-v1 - + key: intel-v2 + # This lets us use sscache on Windows # We need to install ccache here for Windows to grab the right version - name: Install Ninja (Windows) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1819f27..2922e02 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -137,6 +137,15 @@ if(MSVC) else() message("IPP LIBRARIES *NOT* FOUND") endif() + + find_package(MKL) + if(MKL_FOUND) + target_link_libraries("${PROJECT_NAME}" PUBLIC MKL::mkl_core) + message("MKL LIBRARIES FOUND") + target_compile_definitions("${PROJECT_NAME}" PUBLIC PAMPLEJUCE_MKL=1) + else() + message("MKL LIBRARIES *NOT* FOUND") + endif() endif() # Required for ctest (which is just easier for cross-platform CI) diff --git a/JUCE b/JUCE index c920eb9..273a702 160000 --- a/JUCE +++ b/JUCE @@ -1 +1 @@ -Subproject commit c920eb95fd94839a1b34bd0797e2ba5f85aed331 +Subproject commit 273a702052bfcb8f226bae09cc44327fbca93a59