Data-parallel Extension for Numba* (numba-dpex) is a standalone extension for
the [Numba](http://numba.pydata.org) Python JIT compiler. Numba-dpex provides
a generic kernel programming API and an offload feature that extends Numba's
auto-parallelizer to generate data-parallel kernels for `parfor` nodes.
Numba-dpex's kernel API has a design and API similar to Numba's `cuda.jit`
module, but is based on the [SYCL](https://sycl.tech/) language. The
code-generation for the kernel API currently supports
[SPIR-V](https://www.khronos.org/spir/)-based
[OpenCL](https://www.khronos.org/opencl/) and
[oneAPI Level Zero](https://spec.oneapi.io/level-zero/latest/index.html)
devices that are supported by Intel® DPC++ SYCL compiler runtime. Supported
devices include Intel® CPUs, integrated GPUs and discrete GPUs.
The offload functionality in numba-dpex is based on Numba's `parfor`
loop-parallelizer. Our compiler extends Numba's `parfor` feature to generate
kernels and offload them to devices supported by DPC++ SYCL compiler runtime.
The offload functionality is supported via a new NumPy drop-in replacement
library: [dpnp](https://github.com/IntelPython/dpnp). Note that `dpnp` and NumPy-based
expressions can be used together in the same function, with `dpnp` expressions getting
offloaded by `numba-dpex` and NumPy expressions getting parallelized by Numba.
Raw data
{
"_id": null,
"home_page": "https://github.com/IntelPython/numba-dpex",
"name": "numba-dpex",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "sycl python3 numba numpy intel mkl oneapi gpu dpcpp",
"author": "Intel Corporation",
"author_email": null,
"download_url": null,
"platform": "Linux",
"description": "\n\nData-parallel Extension for Numba* (numba-dpex) is a standalone extension for\nthe [Numba](http://numba.pydata.org) Python JIT compiler. Numba-dpex provides\na generic kernel programming API and an offload feature that extends Numba's\nauto-parallelizer to generate data-parallel kernels for `parfor` nodes.\n\nNumba-dpex's kernel API has a design and API similar to Numba's `cuda.jit`\nmodule, but is based on the [SYCL](https://sycl.tech/) language. The\ncode-generation for the kernel API currently supports\n[SPIR-V](https://www.khronos.org/spir/)-based\n[OpenCL](https://www.khronos.org/opencl/) and\n[oneAPI Level Zero](https://spec.oneapi.io/level-zero/latest/index.html)\ndevices that are supported by Intel® DPC++ SYCL compiler runtime. Supported\ndevices include Intel® CPUs, integrated GPUs and discrete GPUs.\n\nThe offload functionality in numba-dpex is based on Numba's `parfor`\nloop-parallelizer. Our compiler extends Numba's `parfor` feature to generate\nkernels and offload them to devices supported by DPC++ SYCL compiler runtime.\nThe offload functionality is supported via a new NumPy drop-in replacement\nlibrary: [dpnp](https://github.com/IntelPython/dpnp). Note that `dpnp` and NumPy-based\nexpressions can be used together in the same function, with `dpnp` expressions getting\noffloaded by `numba-dpex` and NumPy expressions getting parallelized by Numba.\n",
"bugtrack_url": null,
"license": "Apache 2.0",
"summary": "An extension for Numba to add data-parallel offload capability",
"version": "0.22.1",
"project_urls": {
"Homepage": "https://github.com/IntelPython/numba-dpex"
},
"split_keywords": [
"sycl",
"python3",
"numba",
"numpy",
"intel",
"mkl",
"oneapi",
"gpu",
"dpcpp"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1591e9f8c02fbe6b3effe2b1a34dbbf1f2d65e79d7ba1abb72f51e4bfde198ed",
"md5": "336ba4aef98f34cb2856b8a7d1ab059e",
"sha256": "bf117db8f6af780072502dc0f2d2f52bb8d87d37554ba1df95b325e20f74c470"
},
"downloads": -1,
"filename": "numba_dpex-0.22.1-1-cp310-cp310-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "336ba4aef98f34cb2856b8a7d1ab059e",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 402572,
"upload_time": "2024-03-26T22:34:15",
"upload_time_iso_8601": "2024-03-26T22:34:15.520255Z",
"url": "https://files.pythonhosted.org/packages/15/91/e9f8c02fbe6b3effe2b1a34dbbf1f2d65e79d7ba1abb72f51e4bfde198ed/numba_dpex-0.22.1-1-cp310-cp310-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cbced107d56dc9ccdf352e6f757a4e57d366511022803025498190ae1a96e7d7",
"md5": "6381d45e2f99dc1991ea1c5a2537fbad",
"sha256": "c3cad11e8b415f4cb83fd52aa45ab59ac20d07a5d1f4394c9e5a9ab7ecf83e02"
},
"downloads": -1,
"filename": "numba_dpex-0.22.1-1-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "6381d45e2f99dc1991ea1c5a2537fbad",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 410832,
"upload_time": "2024-03-26T22:34:17",
"upload_time_iso_8601": "2024-03-26T22:34:17.928287Z",
"url": "https://files.pythonhosted.org/packages/cb/ce/d107d56dc9ccdf352e6f757a4e57d366511022803025498190ae1a96e7d7/numba_dpex-0.22.1-1-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3e26f6dfcc5583b89c79e0fcf60493ce156f55e00419bfdd6c0a8dc2204b9e9e",
"md5": "d24315748ab2316a25fecdaf06fe245c",
"sha256": "c2cdd42b1633d44d4259b48c67c708186bf3740e3cc997876c2836a27bd34f5b"
},
"downloads": -1,
"filename": "numba_dpex-0.22.1-1-cp39-cp39-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "d24315748ab2316a25fecdaf06fe245c",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 402571,
"upload_time": "2024-03-26T22:34:20",
"upload_time_iso_8601": "2024-03-26T22:34:20.457461Z",
"url": "https://files.pythonhosted.org/packages/3e/26/f6dfcc5583b89c79e0fcf60493ce156f55e00419bfdd6c0a8dc2204b9e9e/numba_dpex-0.22.1-1-cp39-cp39-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0110662b5e5bf6f5e716e98736a0633a9fa102ed0c6e5ee3c70224ea2d1b486e",
"md5": "3c8af923868002668819d7db5ca0cfdf",
"sha256": "18c8817ad6729aa83bf1c1978b68d9d71bd432520a3502da39e6528c3de9db5d"
},
"downloads": -1,
"filename": "numba_dpex-0.22.1-1-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "3c8af923868002668819d7db5ca0cfdf",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 410827,
"upload_time": "2024-03-26T22:34:22",
"upload_time_iso_8601": "2024-03-26T22:34:22.854700Z",
"url": "https://files.pythonhosted.org/packages/01/10/662b5e5bf6f5e716e98736a0633a9fa102ed0c6e5ee3c70224ea2d1b486e/numba_dpex-0.22.1-1-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-26 22:34:15",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "IntelPython",
"github_project": "numba-dpex",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "numba-dpex"
}