{"library":"onemkl-sycl-lapack","title":"oneMKL SYCL LAPACK","description":"Intel® oneAPI Math Kernel Library (oneMKL) SYCL LAPACK routines, providing dense and sparse linear algebra operations optimized for Intel CPUs and GPUs via SYCL. Current version 2026.0.0. Released as part of the Intel oneAPI toolkit with quarterly updates.","language":"python","status":"active","last_verified":"Fri May 01","install":{"commands":["pip install onemkl-sycl-lapack"],"cli":null},"imports":["import onemkl._onemkl_lapack","from onemkl._onemkl_lapack import getrf"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import dpctl\nimport numpy as np\nfrom onemkl._onemkl_lapack import getrf\n\n# Create a SYCL queue on a GPU (or default device)\nqueue = dpctl.SyclQueue()\n\n# Allocate matrices as device arrays (dpctl.tensor)\na = np.array([[1., 2.], [3., 4.]], dtype=np.float64)\n# Convert to device memory\na_dev = dpctl.tensor.from_numpy(a, queue=queue)\n\n# Perform LU factorization (getrf)\n# Note: output arrays are modified in-place\nm = a_dev.shape[0]\nn = a_dev.shape[1]\npivots = dpctl.tensor.empty(m, dtype=np.int64, queue=queue)\n\n# The function signature: getrf(queue, m, n, a, lda, pivots)\ngetrf(queue, m, n, a_dev, m, pivots)\n\nprint(\"LU factorization completed on device.\")","lang":"python","description":"Basic LU factorization using onemkl SYCL LAPACK with dpctl for device memory and queue management.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}