Skip to content

Commit

Permalink
Rename oneMKL Interface to oneMath (#602)
Browse files Browse the repository at this point in the history
Co-authored-by: Maria Kraynyuk <[email protected]>
  • Loading branch information
Rbiessy and mkrainiuk authored Dec 3, 2024
1 parent c00154c commit f30ae98
Show file tree
Hide file tree
Showing 841 changed files with 51,541 additions and 82,286 deletions.
123 changes: 65 additions & 58 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,71 +1,78 @@
# Arch files
/.github/ @oneapi-src/onemkl-arch-write
/.gitignore/ @oneapi-src/onemkl-arch-write
/cmake/ @oneapi-src/onemkl-arch-write
/deps/ @oneapi-src/onemkl-arch-write
/docs/ @oneapi-src/onemkl-arch-write
/examples/include/ @oneapi-src/onemkl-arch-write
/examples/CMakeList.txt @oneapi-src/onemkl-arch-write
/examples/README.md @oneapi-src/onemkl-arch-write
/include/oneapi/mkl.hpp @oneapi-src/onemkl-arch-write
/include/oneapi/mkl/detail/ @oneapi-src/onemkl-arch-write
/include/oneapi/mkl/exceptions.hpp @oneapi-src/onemkl-arch-write
/scripts/ @oneapi-src/onemkl-arch-write
/src/include/ @oneapi-src/onemkl-arch-write
/src/CMakeLists.txt @oneapi-src/onemkl-arch-write
/src/config.hpp.in @oneapi-src/onemkl-arch-write
/tests/CMakeLists.txt @oneapi-src/onemkl-arch-write
/tests/README.md @oneapi-src/onemkl-arch-write
/tests/unit_tests/include/ @oneapi-src/onemkl-arch-write
/tests/unit_tests/CMakeLists.txt @oneapi-src/onemkl-arch-write
/tests/unit_tests/main_test.cpp @oneapi-src/onemkl-arch-write
/third-party-programs/ @oneapi-src/onemkl-arch-write
/CMakeLists.txt @oneapi-src/onemkl-arch-write
/CODE_OF_CONDUCT.md @oneapi-src/onemkl-arch-write
/CONTRIBUTING.md @oneapi-src/onemkl-arch-write
/LICENSE @oneapi-src/onemkl-arch-write
/MAINTAINERS.md @oneapi-src/onemkl-arch-write
/README.md @oneapi-src/onemkl-arch-write
/SECURITY.md @oneapi-src/onemkl-arch-write
/_clang-format @oneapi-src/onemkl-arch-write
/legal_information.md @oneapi-src/onemkl-arch-write
/.github/ @uxlfoundation/onemath-arch-write
/.gitignore/ @uxlfoundation/onemath-arch-write
/cmake/ @uxlfoundation/onemath-arch-write
/deps/ @uxlfoundation/onemath-arch-write
/docs/ @uxlfoundation/onemath-arch-write
/examples/include/ @uxlfoundation/onemath-arch-write
/examples/CMakeList.txt @uxlfoundation/onemath-arch-write
/examples/README.md @uxlfoundation/onemath-arch-write
/include/oneapi/math.hpp @uxlfoundation/onemath-arch-write
/include/oneapi/math/detail/ @uxlfoundation/onemath-arch-write
/include/oneapi/mkl.hpp @uxlfoundation/onemath-arch-write
/include/oneapi/mkl/namespace_alias.hpp @uxlfoundation/onemath-arch-write
/scripts/ @uxlfoundation/onemath-arch-write
/src/include/ @uxlfoundation/onemath-arch-write
/src/CMakeLists.txt @uxlfoundation/onemath-arch-write
/src/config.hpp.in @uxlfoundation/onemath-arch-write
/tests/CMakeLists.txt @uxlfoundation/onemath-arch-write
/tests/README.md @uxlfoundation/onemath-arch-write
/tests/unit_tests/include/ @uxlfoundation/onemath-arch-write
/tests/unit_tests/CMakeLists.txt @uxlfoundation/onemath-arch-write
/tests/unit_tests/main_test.cpp @uxlfoundation/onemath-arch-write
/third-party-programs/ @uxlfoundation/onemath-arch-write
/CMakeLists.txt @uxlfoundation/onemath-arch-write
/CODE_OF_CONDUCT.md @uxlfoundation/onemath-arch-write
/CONTRIBUTING.md @uxlfoundation/onemath-arch-write
/LICENSE @uxlfoundation/onemath-arch-write
/MAINTAINERS.md @uxlfoundation/onemath-arch-write
/README.md @uxlfoundation/onemath-arch-write
/SECURITY.md @uxlfoundation/onemath-arch-write
/_clang-format @uxlfoundation/onemath-arch-write
/legal_information.md @uxlfoundation/onemath-arch-write

# BLAS files
/examples/blas/ @oneapi-src/onemkl-blas-write
/include/oneapi/mkl/blas/ @oneapi-src/onemkl-blas-write
/include/oneapi/mkl/blas.hxx @oneapi-src/onemkl-blas-write
/include/oneapi/mkl/blas.hpp @oneapi-src/onemkl-blas-write
/include/oneapi/mkl/bfloat16.hpp @oneapi-src/onemkl-blas-write
/src/blas/ @oneapi-src/onemkl-blas-write
/tests/unit_tests/blas/ @oneapi-src/onemkl-blas-write
/examples/blas/ @uxlfoundation/onemath-blas-write
/include/oneapi/math/blas/ @uxlfoundation/onemath-blas-write
/include/oneapi/math/blas.hpp @uxlfoundation/onemath-blas-write
/include/oneapi/math/blas.hxx @uxlfoundation/onemath-blas-write
/include/oneapi/math/bfloat16.hpp @uxlfoundation/onemath-blas-write
/include/oneapi/mkl/blas.hpp @uxlfoundation/onemath-blas-write
/src/blas/ @uxlfoundation/onemath-blas-write
/tests/unit_tests/blas/ @uxlfoundation/onemath-blas-write

# DFT files
/examples/dft/ @oneapi-src/onemkl-dft-write
/include/oneapi/mkl/dft/ @oneapi-src/onemkl-dft-write
/include/oneapi/mkl/dft.hpp @oneapi-src/onemkl-dft-write
/src/dft/ @oneapi-src/onemkl-dft-write
/tests/unit_tests/dft/ @oneapi-src/onemkl-dft-write
/examples/dft/ @uxlfoundation/onemath-dft-write
/include/oneapi/math/dft/ @uxlfoundation/onemath-dft-write
/include/oneapi/math/dft.hpp @uxlfoundation/onemath-dft-write
/include/oneapi/mkl/dft.hpp @uxlfoundation/onemath-dft-write
/src/dft/ @uxlfoundation/onemath-dft-write
/tests/unit_tests/dft/ @uxlfoundation/onemath-dft-write

# LAPACK files
/examples/lapack/ @oneapi-src/onemkl-lapack-write
/include/oneapi/mkl/lapack/ @oneapi-src/onemkl-lapack-write
/include/oneapi/mkl/lapack.hpp @oneapi-src/onemkl-lapack-write
/src/lapack/ @oneapi-src/onemkl-lapack-write
/tests/unit_tests/lapack/ @oneapi-src/onemkl-lapack-write
/examples/lapack/ @uxlfoundation/onemath-lapack-write
/include/oneapi/math/lapack/ @uxlfoundation/onemath-lapack-write
/include/oneapi/math/lapack.hpp @uxlfoundation/onemath-lapack-write
/include/oneapi/mkl/lapack.hpp @uxlfoundation/onemath-lapack-write
/src/lapack/ @uxlfoundation/onemath-lapack-write
/tests/unit_tests/lapack/ @uxlfoundation/onemath-lapack-write

# RNG files
/examples/rng/ @oneapi-src/onemkl-rng-write
/include/oneapi/mkl/rng/ @oneapi-src/onemkl-rng-write
/include/oneapi/mkl/rng.hpp @oneapi-src/onemkl-rng-write
/src/rng/ @oneapi-src/onemkl-rng-write
/tests/unit_tests/rng/ @oneapi-src/onemkl-rng-write
/examples/rng/ @uxlfoundation/onemath-rng-write
/include/oneapi/math/rng/ @uxlfoundation/onemath-rng-write
/include/oneapi/math/rng.hpp @uxlfoundation/onemath-rng-write
/include/oneapi/mkl/rng.hpp @uxlfoundation/onemath-rng-write
/include/oneapi/mkl/rng/device.hpp @uxlfoundation/onemath-rng-write
/src/rng/ @uxlfoundation/onemath-rng-write
/tests/unit_tests/rng/ @uxlfoundation/onemath-rng-write

# Sparse BLAS files
/examples/sparse_blas/ @oneapi-src/onemkl-sparse-write
/include/oneapi/mkl/sparse_blas/ @oneapi-src/onemkl-sparse-write
/include/oneapi/mkl/sparse_blas.hpp @oneapi-src/onemkl-sparse-write
/src/sparse_blas/ @oneapi-src/onemkl-sparse-write
/tests/unit_tests/sparse_blas/ @oneapi-src/onemkl-sparse-write
/examples/sparse_blas/ @uxlfoundation/onemath-sparse-write
/include/oneapi/math/sparse_blas/ @uxlfoundation/onemath-sparse-write
/include/oneapi/math/sparse_blas.hpp @uxlfoundation/onemath-sparse-write
/include/oneapi/mkl/sparse_blas.hpp @uxlfoundation/onemath-sparse-write
/src/sparse_blas/ @uxlfoundation/onemath-sparse-write
/tests/unit_tests/sparse_blas/ @uxlfoundation/onemath-sparse-write

# Shared files
/include/oneapi/mkl/types.hpp @oneapi-src/onemkl-blas-write @oneapi-src/onemkl-lapack-write
/include/oneapi/math/types.hpp @uxlfoundation/onemath-blas-write @uxlfoundation/onemath-lapack-write
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/RFC.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ assignees: ''
# Summary
Include a short summary of the request. Sections below provide guidance on
what factors are considered important. Describe how new interface will meet
[library functionality guidelines](https://github.com/oneapi-src/oneMKL/blob/master/CONTRIBUTING.md#library-functionality-guidelines).
[library functionality guidelines](https://github.com/uxlfoundation/oneMath/blob/master/CONTRIBUTING.md#library-functionality-guidelines).

# Problem statement
Describe the problem you are trying to solve with reasonable level of details.
Expand All @@ -18,4 +18,4 @@ Describe the problem you are trying to solve with reasonable level of details.
* The definition of the function including interface and semantics. How this
interface will be extendable for different HW implementations.
* What existing libraries have implementation of this function and can be used
under oneMKL interface.
under oneMath.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ Provide a short summary of the issue. Sections below provide guidance on what
factors are considered important to reproduce an issue.

# Version
Report oneMKL version and githash.
Report oneMath version and githash.
If it is a regression, report githash for the last known good revision.

# Environment
oneMKL works with multiple HW and backend libraries and also depends on the
oneMath works with multiple HW and backend libraries and also depends on the
compiler and build environment. Include
the following information to help reproduce the issue:
* HW you use
Expand Down
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Please include a summary of the change. Please also include relevant
motivation and context. See
[contribution guidelines](https://github.com/oneapi-src/oneMKL/blob/master/CONTRIBUTING.md)
[contribution guidelines](https://github.com/uxlfoundation/oneMath/blob/master/CONTRIBUTING.md)
for more details. If the change fixes an issue not documented in the project's
Github issue tracker, please document all steps necessary to reproduce it.

Expand Down
6 changes: 3 additions & 3 deletions .github/scripts/domain-check.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ function matchesPattern(domain, filePaths) {
!filePath.startsWith("third-party-programs/"),
);
// These directories contain domain specific code
const dirs = "(tests/unit_tests|examples|src|include/oneapi/mkl)";
const dirs = "(tests/unit_tests|examples|src|include/oneapi/math)";
const domains = "(blas|lapack|rng|dft)";
// matches changes to the domain of interest or non domain-specific code
const re = new RegExp(`^(${dirs}/${domain}|(?!${dirs}/${domains}))`);
Expand Down Expand Up @@ -92,7 +92,7 @@ test_patterns = [
},
{
domain: "lapack",
files: ["include/oneapi/mkl/lapack/lapack.hpp"],
files: ["include/oneapi/math/lapack/lapack.hpp"],
expected: true,
},
{
Expand All @@ -117,7 +117,7 @@ test_patterns = [
},
{
domain: "lapack",
files: ["include/oneapi/mkl/rng/lapack.hpp"],
files: ["include/oneapi/math/rng/lapack.hpp"],
expected: false,
},
{
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,15 @@ jobs:
domain: dft
build_options: -DENABLE_PORTFFT_BACKEND=ON -DENABLE_MKLCPU_BACKEND=OFF
test_options: -R 'DFT/CT/.*ComputeTests_in_place_COMPLEX.COMPLEX_SINGLE_in_place_buffer.sizes_8_batches_1*'
- config: MKL BLAS
- config: oneMath BLAS
domain: blas
build_options: -DREF_BLAS_ROOT=${PWD}/lapack/install
- config: MKL DFT
- config: oneMath DFT
domain: dft
- config: MKL LAPACK
- config: oneMath LAPACK
domain: lapack
build_options: -DREF_LAPACK_ROOT=${PWD}/lapack/install
- config: MKL RNG
- config: oneMath RNG
domain: rng
name: unit tests ${{ matrix.config }} CPU
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/slack-pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ on:

env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
channel: "onemkl"
channel: "onemath"

permissions:
pull-requests: read
Expand Down
56 changes: 28 additions & 28 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ option(BUILD_SHARED_LIBS "Build dynamic libraries" ON)
option(ENABLE_MKLCPU_BACKEND "Enable the Intel oneMKL CPU backend for supported interfaces" ON)
option(ENABLE_MKLGPU_BACKEND "Enable the Intel oneMKL GPU backend for supported interfaces" ON)
if(ENABLE_MKLCPU_BACKEND)
option(ENABLE_MKLCPU_THREAD_TBB "Enable the use of Intel TBB with the oneMKL CPU backend" ON)
option(ENABLE_MKLCPU_THREAD_TBB "Enable the use of Intel TBB with the oneMath CPU backend" ON)
endif()

# blas
Expand All @@ -63,7 +63,7 @@ option(ENABLE_PORTFFT_BACKEND "Enable the portFFT DFT backend for the DFT interf
# sparse
option(ENABLE_CUSPARSE_BACKEND "Enable the cuSPARSE backend for the SPARSE_BLAS interface" OFF)

set(ONEMKL_SYCL_IMPLEMENTATION "dpc++" CACHE STRING "Name of the SYCL compiler")
set(ONEMATH_SYCL_IMPLEMENTATION "dpc++" CACHE STRING "Name of the SYCL compiler")
set(HIP_TARGETS "" CACHE STRING "Target HIP architectures")

## Testing
Expand Down Expand Up @@ -128,7 +128,7 @@ if (ENABLE_PORTFFT_BACKEND
endif()

# Define required CXX compilers before project
if(CMAKE_CXX_COMPILER OR NOT ONEMKL_SYCL_IMPLEMENTATION STREQUAL "dpc++")
if(CMAKE_CXX_COMPILER OR NOT ONEMATH_SYCL_IMPLEMENTATION STREQUAL "dpc++")
if(WIN32)
string(REPLACE "\\" "/" CMAKE_CXX_COMPILER ${CMAKE_CXX_COMPILER})
endif()
Expand Down Expand Up @@ -169,7 +169,7 @@ else()
endif()

# Define required C compilers before project
if(CMAKE_C_COMPILER OR NOT ONEMKL_SYCL_IMPLEMENTATION STREQUAL "dpc++")
if(CMAKE_C_COMPILER OR NOT ONEMATH_SYCL_IMPLEMENTATION STREQUAL "dpc++")
if(WIN32)
string(REPLACE "\\" "/" CMAKE_C_COMPILER ${CMAKE_C_COMPILER})
endif()
Expand All @@ -189,10 +189,10 @@ else()
endif()
endif()

project(oneMKL VERSION 0.5.0 LANGUAGES CXX)
project(oneMath VERSION 0.5.0 LANGUAGES CXX)

# Override default CXX compile/link lines for Windows after project
if(WIN32 AND ONEMKL_SYCL_IMPLEMENTATION STREQUAL "dpc++")
if(WIN32 AND ONEMATH_SYCL_IMPLEMENTATION STREQUAL "dpc++")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-function -w")
foreach (flag_var
CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
Expand All @@ -208,7 +208,7 @@ if(WIN32 AND ONEMKL_SYCL_IMPLEMENTATION STREQUAL "dpc++")
endif()

# Temporary disable sycl 2020 deprecations warnings for cuSOLVER and rocSOLVER
if(ONEMKL_SYCL_IMPLEMENTATION STREQUAL "dpc++" AND (ENABLE_ROCSOLVER_BACKEND))
if(ONEMATH_SYCL_IMPLEMENTATION STREQUAL "dpc++" AND (ENABLE_ROCSOLVER_BACKEND))
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DSYCL2020_DISABLE_DEPRECATION_WARNINGS")
endif()

Expand All @@ -233,7 +233,7 @@ else()
endif()
message(STATUS "TARGET_DOMAINS: ${TARGET_DOMAINS}")

# Include Intel oneMKL
# Include Intel(R) oneAPI Math Kernel Library (oneMKL)
if(ENABLE_MKLGPU_BACKEND OR ENABLE_MKLCPU_BACKEND)
set(MKL_ARCH intel64)
set(MKL_INTERFACE ilp64)
Expand Down Expand Up @@ -272,23 +272,23 @@ list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")

# Add DPC++ options for Linux
if(WIN32)
add_library(ONEMKL::SYCL::SYCL INTERFACE IMPORTED)
add_library(ONEMATH::SYCL::SYCL INTERFACE IMPORTED)
else()
# Find necessary packages
if(ONEMKL_SYCL_IMPLEMENTATION)
string( TOLOWER "${ONEMKL_SYCL_IMPLEMENTATION}" ONEMKL_SYCL_IMPLEMENTATION)
if (ONEMKL_SYCL_IMPLEMENTATION STREQUAL "hipsycl")
if(ONEMATH_SYCL_IMPLEMENTATION)
string( TOLOWER "${ONEMATH_SYCL_IMPLEMENTATION}" ONEMATH_SYCL_IMPLEMENTATION)
if (ONEMATH_SYCL_IMPLEMENTATION STREQUAL "hipsycl")
message(STATUS "Looking for hipSYCL")
find_package(hipSYCL CONFIG REQUIRED)
set(USE_ADD_SYCL_TO_TARGET_INTEGRATION true)
set (CMAKE_CXX_STANDARD 17)
add_library(ONEMKL::SYCL::SYCL INTERFACE IMPORTED)
elseif(ONEMKL_SYCL_IMPLEMENTATION STREQUAL "dpc++")
add_library(ONEMATH::SYCL::SYCL INTERFACE IMPORTED)
elseif(ONEMATH_SYCL_IMPLEMENTATION STREQUAL "dpc++")
message(STATUS "Looking for dpc++")
set(USE_ADD_SYCL_TO_TARGET_INTEGRATION false)
find_package(Compiler REQUIRED)
else()
message(FATAL_ERROR "SYCL implementation ${ONEMKL_SYCL_IMPLEMENTATION} is not known")
message(FATAL_ERROR "SYCL implementation ${ONEMATH_SYCL_IMPLEMENTATION} is not known")
endif()
else()
message(STATUS "Looking for dpc++")
Expand All @@ -298,8 +298,8 @@ else()
endif()

if(DEFINED REF_BLAS_ROOT)
find_file(ONEMKL_REF_BLAS_LIBNAME NAMES blas.dll libblas.so HINTS ${REF_BLAS_ROOT} PATH_SUFFIXES lib lib64)
find_file(ONEMKL_REF_CBLAS_LIBNAME NAMES cblas.dll libcblas.so HINTS ${REF_BLAS_ROOT} PATH_SUFFIXES lib lib64)
find_file(ONEMATH_REF_BLAS_LIBNAME NAMES blas.dll libblas.so HINTS ${REF_BLAS_ROOT} PATH_SUFFIXES lib lib64)
find_file(ONEMATH_REF_CBLAS_LIBNAME NAMES cblas.dll libcblas.so HINTS ${REF_BLAS_ROOT} PATH_SUFFIXES lib lib64)
endif()

# Add source directory and output to bin/
Expand Down Expand Up @@ -330,30 +330,30 @@ install(DIRECTORY include/

include(CMakePackageConfigHelpers)
write_basic_package_version_file(
"${CMAKE_CURRENT_BINARY_DIR}/oneMKLConfigVersion.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/oneMathConfigVersion.cmake"
VERSION ${PROJECT_VERSION}
COMPATIBILITY AnyNewerVersion
)

export(EXPORT oneMKLTargets
FILE "${CMAKE_CURRENT_BINARY_DIR}/oneMKLTargets.cmake"
NAMESPACE ONEMKL::
export(EXPORT oneMathTargets
FILE "${CMAKE_CURRENT_BINARY_DIR}/oneMathTargets.cmake"
NAMESPACE ONEMATH::
)
configure_file("${PROJECT_SOURCE_DIR}/cmake/oneMKLConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/oneMKLConfig.cmake"
configure_file("${PROJECT_SOURCE_DIR}/cmake/oneMathConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/oneMathConfig.cmake"
COPYONLY
)

set(config_package_location "lib/cmake/${PROJECT_NAME}")
install(EXPORT oneMKLTargets
FILE oneMKLTargets.cmake
NAMESPACE MKL::
install(EXPORT oneMathTargets
FILE oneMathTargets.cmake
NAMESPACE ONEMATH::
DESTINATION ${config_package_location}
)
install(
FILES
"${PROJECT_SOURCE_DIR}/cmake/oneMKLConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/oneMKLConfigVersion.cmake"
"${PROJECT_SOURCE_DIR}/cmake/oneMathConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/oneMathConfigVersion.cmake"
DESTINATION ${config_package_location}
COMPONENT Devel
)
Loading

0 comments on commit f30ae98

Please sign in to comment.