{"id":8370,"library":"onemkl-license","title":"Intel oneAPI Math Kernel Library License","description":"Intel oneAPI Math Kernel Library (oneMKL) is a collection of optimized math routines for scientific, engineering, and financial applications, including BLAS, LAPACK, sparse solvers, FFTs, and vector math. The `onemkl-license` PyPI package provides the licensing information for Intel oneMKL. It is not a direct Python-callable library for mathematical computations but rather a component that signifies the presence and licensing of the underlying oneMKL binaries, which are typically utilized by other Python packages (e.g., NumPy, SciPy) or through specific Python bindings like `mkl-service`, `mkl-fft`, and `mkl-random`. The current version is 2025.3.1, with releases tied to the oneAPI toolkit cadence.","status":"active","version":"2025.3.1","language":"python","source_language":"en","source_url":"https://pypi.org/project/onemkl-license/","tags":["intel","oneapi","mkl","math","numerical-computing","performance"],"install":[{"cmd":"pip install onemkl-license","lang":"bash","label":"Install the license package"},{"cmd":"conda install -c intel intel-oneapi-mkl","lang":"bash","label":"Install Intel oneMKL with Conda (recommended for full functionality and integration)"}],"dependencies":[{"reason":"Provides the actual mathematical routines. The `onemkl-license` package indicates its presence. Often implicitly used by NumPy/SciPy.","package":"intel-oneapi-mkl","optional":false},{"reason":"Python interface for runtime control settings of oneMKL.","package":"mkl-service","optional":true},{"reason":"Python interface to oneMKL Fourier Transform Functions.","package":"mkl-fft","optional":true},{"reason":"NumPy-based Python interface to oneMKL Random Number Generation functionality.","package":"mkl-random","optional":true}],"imports":[{"wrong":"import onemkl_license","symbol":"onemkl","correct":"import onemkl"}],"quickstart":{"code":"import os\nimport platform\n\ntry:\n    # mkl-service is a common way to interact with MKL runtime settings\n    import mkl\n    print(f\"MKL version: {mkl.get_version()}\")\n    print(f\"MKL threading layer: {mkl.get_threading_layer()}\")\n\n    # Example: Setting the number of MKL threads\n    # mkl.set_num_threads(4)\n    # print(f\"MKL threads set to: {mkl.get_max_threads()}\")\n\nexcept ImportError:\n    print(\"mkl-service not installed or MKL not detected.\")\n    print(\"To use MKL functionalities in Python, consider installing 'mkl-service' \")\n    print(\"or a Python distribution that ships with MKL-optimized libraries (e.g., Anaconda).\")\n    print(\"The 'onemkl-license' package itself does not expose Python functions for computation.\")\n\n# Check for MKLROOT environment variable, often used in direct MKL installations\nmkl_root = os.environ.get('MKLROOT', 'Not set')\nprint(f\"MKLROOT environment variable: {mkl_root}\")\n\n# On Linux, check for MKL libraries in LD_LIBRARY_PATH\nif platform.system() == 'Linux':\n    ld_path = os.environ.get('LD_LIBRARY_PATH', 'Not set')\n    print(f\"LD_LIBRARY_PATH: {ld_path}\")\n    if mkl_root != 'Not set' and mkl_root not in ld_path:\n        print(\"Warning: MKLROOT is set but not in LD_LIBRARY_PATH. This might cause linking issues.\")\n","lang":"python","description":"This quickstart demonstrates how to check for the presence and configure the underlying Intel oneMKL through the `mkl-service` Python package, which is a common way to interact with oneMKL runtime settings. It also checks for relevant environment variables. The `onemkl-license` package itself does not provide functions for direct mathematical computation."},"warnings":[{"fix":"Do not expect to import mathematical functions directly from `onemkl_license`. Instead, install and use specific MKL Python bindings (e.g., `mkl-service`) or ensure your scientific Python libraries are linked against oneMKL.","message":"The `onemkl-license` package is primarily a placeholder for licensing and dependency resolution, not a library to be directly imported for mathematical operations. Actual oneMKL functionality in Python is typically exposed through other packages like `mkl-service`, `mkl-fft`, `mkl-random`, or implicitly through MKL-optimized builds of NumPy and SciPy.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Update linking configurations to use oneMKL dynamic SYCL domain-specific libraries. Refer to the oneMKL Link Line Advisor for guidance.","message":"The oneMKL static SYCL library is deprecated and will be removed in the oneMKL 2026.0 release. Users should transition to dynamic SYCL domain-specific libraries.","severity":"breaking","affected_versions":"2025.3.1 and earlier, will break in 2026.0"},{"fix":"For GPU offloading, consider migrating to Level Zero SYCL backend. For sparse matrix operations, update `sparse::set_csr_data` calls to explicitly include the `nnz` parameter.","message":"Support for the OpenCL* backend on Intel GPUs is deprecated and will be removed in the oneMKL 2026.0 release. The existing overload of `sparse::set_csr_data` without the `nnz` parameter has also been deprecated in 2025.3 and will be removed in the 2027.0 release.","severity":"deprecated","affected_versions":"2025.3.1"},{"fix":"Manually set the `MKLROOT` environment variable to point to the oneMKL installation directory. Refer to the Intel oneMKL developer documentation for correct setup. For Python distributions, using `conda install intel-oneapi-mkl` often handles this configuration automatically.","message":"When installing via `pip`, the `MKLROOT` environment variable is not automatically set up. This variable is crucial for linking and locating oneMKL libraries, especially when building applications that directly link against oneMKL.","severity":"gotcha","affected_versions":"All PyPI installations"}],"env_vars":null,"search_vec":"'2025.3.1':106 'applic':25 'binari':74 'bind':90 'blas':27 'cadenc':114 'callabl':55 'collect':15 'compon':63 'comput':59,121 'current':103 'direct':52 'e.g':83 'engin':22 'fft':97 'ffts':31 'financi':24 'includ':26 'inform':44 'intel':1,7,46,115 'kernel':4,10 'lapack':28 'librari':5,11,56 'licens':6,38,43,69 'like':91 'math':3,9,18,34,118 'mathemat':58 'mkl':93,96,100,117 'mkl-fft':95 'mkl-random':99 'mkl-servic':92 'numer':120 'numerical-comput':119 'numpi':84 'oneapi':2,8,112,116 'onemkl':12,37,47,73 'onemkl-licens':36 'optim':17 'packag':40,82 'perform':122 'presenc':67 'provid':41 'pypi':39 'python':54,81,89 'python-cal':53 'random':101 'rather':61 'releas':108 'routin':19 'scientif':21 'scipi':85 'servic':94 'signifi':65 'solver':30 'spars':29 'specif':88 'tie':109 'toolkit':113 'typic':77 'under':72 'util':78 'vector':33 'version':104","created_at":"2026-04-16T17:01:50.812673+00:00","updated_at":"2026-04-16T17:01:50.812673+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\nModuleNotFoundError: No module named 'onemkl'"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"2026.0.0","cli_name":"","cli_version":null,"type":"library","homepage":"https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.html","github":null,"docs":null,"changelog":null,"pypi":"https://pypi.org/project/onemkl-license/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}