{"id":5967,"library":"intel-cmplr-lib-ur","title":"Intel® oneAPI Unified Runtime Libraries","description":"The Intel® oneAPI Unified Runtime Libraries (`intel-cmplr-lib-ur`) package contains shared common libraries essential for providing a unified interface to device-agnostic runtimes like DPC++ across various software platforms. It is a foundational component within the Intel oneAPI ecosystem, often installed alongside common licensing and compiler-specific runtimes. The current version is 2025.3.3, with a rapid release cadence, indicating frequent updates.","status":"active","version":"2025.3.3","language":"en","source_language":"en","source_url":"https://github.com/oneapi-src/unified-runtime","tags":["Intel","oneAPI","runtime","compiler","library","HPC","GPU","CPU","SYCL","DPC++"],"install":[{"cmd":"pip install intel-cmplr-lib-ur","lang":"bash","label":"Install via pip"}],"dependencies":[{"reason":"This package provides underlying runtime libraries primarily consumed by other oneAPI components, including higher-level Python libraries like `dpctl`, `intel-sycl-rt`, and C/C++ applications. It often requires other oneAPI components like a common licensing package and compiler-specific runtimes for full functionality.","package":"oneAPI toolkits (e.g., Base Toolkit)","optional":false}],"imports":[{"note":"This package is a runtime library, not typically imported directly by end-user Python code. Its functionality is exposed through other higher-level oneAPI Python libraries.","symbol":"None (backend library)","correct":"This library primarily provides underlying shared C/C++ libraries. Direct end-user Python imports (e.g., `import intel_cmplr_lib_ur`) are not common as it serves as a backend dependency for other oneAPI Python bindings and compilers (e.g., `dpctl`)."}],"quickstart":{"code":"# This package provides underlying runtime libraries.\n# It's primarily a dependency for other oneAPI Python libraries or C/C++ applications.\n# For example, to use oneAPI accelerated NumPy-like arrays via dpnp (which depends on underlying oneAPI runtimes):\n\n# Ensure intel-cmplr-lib-ur is installed (usually via 'pip install intel-cmplr-lib-ur')\n# Then, install higher-level Python bindings like dpnp or dpctl:\n# pip install dpnp dpctl\n\nimport dpnp as np\nimport dpctl\n\n# Select a SYCL-enabled device (e.g., GPU if available, otherwise CPU)\ntry:\n    queue = dpctl.SyclQueue('gpu')\n    print(\"Running on GPU.\")\nexcept dpctl.SyclQueueError:\n    queue = dpctl.SyclQueue('cpu')\n    print(\"Running on CPU.\")\n\na = np.asarray([1.0, 2.0, 3.0], sycl_queue=queue)\nb = np.asarray([4.0, 5.0, 6.0], sycl_queue=queue)\nc = a + b\n\nprint(f\"Result of a + b on {queue.device.name}: {c}\")\n","lang":"python","description":"The `intel-cmplr-lib-ur` package is a core runtime library, not typically directly interacted with in Python. Its primary function is to enable other oneAPI-optimized Python libraries, such as `dpnp` (Data Parallel NumPy) and `dpctl` (Data Parallel Control Library), to access and utilize Intel hardware (CPUs, GPUs). The quickstart demonstrates how to use `dpnp` and `dpctl`, which rely on the underlying runtime components provided by `intel-cmplr-lib-ur`, to perform array operations on a selected SYCL-enabled device."},"warnings":[{"fix":"Review the software component behaviors for anomalies, consider exploratory testing in a sandbox, and replace with a more widely used alternative if possible, or vet thoroughly before use.","message":"The package (and related oneAPI components) has been flagged for security concerns, specifically the 'Presence of code relocations indicates that the code segment might temporarily, at one point, become both writable and executable. That violates security policies adopted by most modern Linux distributions.' This could allow an attacker to overwrite code with a malicious program during this brief period.","severity":"breaking","affected_versions":"All versions (identified in 2025.0.5 analysis, likely applies broadly)"},{"fix":"For a smoother upgrade, it is advised to install the complete Base/HPC toolkit packages instead of individual component patches. If installing patches, ensure required compiler patch packages (dpcpp and/or fortran) are installed in advance. On Windows, install the TBB package patch before other library patches.","message":"Installing patch updates for stand-alone performance libraries (e.g., IPP or MKL) over an Intel oneAPI Base Toolkit installation can unintentionally remove compilers (like dpcpp and Fortran) and other performance libraries, especially on Linux and Windows.","severity":"gotcha","affected_versions":"oneAPI Base Toolkit 2025.3.0 and newer"},{"fix":"Carefully manage version compatibility across all oneAPI components. When encountering conflicts, consult Intel's official documentation or release notes for compatible component versions within a specific toolkit release. Consider using a consistent oneAPI toolkit installation rather than mixing individual component versions.","message":"Dependency conflicts can arise between oneAPI runtime components. For instance, `intel-sycl-rt` might require a specific older version of `intel-cmplr-lib-ur`, which can lead to installation failures in complex environments like PyTorch builds.","severity":"gotcha","affected_versions":"All versions within the oneAPI ecosystem (e.g., 2025.0.2 vs 2025.1.0 seen in conflict)"}],"env_vars":null,"last_verified":"2026-04-14T00:00:00.000Z","next_check":"2026-07-13T00:00:00.000Z"}