Numba的扩展,用于添加数据并行卸载功能
项目描述
数据并行扩展Numba*(numba-dpex)是Numba Python JIT编译器的一个开源独立扩展。Numba。Numba-dpex为Python内核编程提供类似SYCL*的API。SYCL*是由统一加速基金会开发的一个开放标准,作为一种与供应商无关的方式来编程不同类型的数据并行硬件,如多核CPU、GPU和FPGA。Numba-dpex的内核编程API将相同的编程模型和类似的API带到Python。该API允许在Python中表达可移植的数据并行内核,然后为不同的硬件目标进行JIT编译。支持使用SPIR-V中间表示格式进行JIT编译的硬件,包括OpenCL CPU(英特尔、AMD)设备、OpenCL GPU(英特尔集成和离散GPU)设备和oneAPI Level Zero GPU(英特尔集成和离散GPU)设备。
内核编程API尚未支持所有的SYCL*功能。请参阅SYCL*和numba-dpex功能比较页面以获取支持的特性概述。Numba-dpex仅实现SYCL*的内核编程API,所有SYCL运行时Python绑定都由dpctl包提供。
除了内核编程API之外,numba-dpex还将Numba的自动并行化扩展到prange
循环和类似NumPy的向量表达式中,以提供设备卸载功能。卸载功能通过NumPy的替换库:dpnp来支持。请注意,dpnp
和基于NumPy的表达式可以在同一函数中使用,其中dpnp
表达式由numba-dpex
卸载,而NumPy表达式由Numba并行化。
请参阅文档和示例以获取更多信息。
入门指南
Numba-dpex是Intel® Python(IDP)分发和Intel® oneAPI AIKit的一部分,可以与oneAPI一起安装。此外,我们还支持从Anaconda云安装它。有关详细信息,请参阅我们的文档页面。
安装完包后,一个好的起点是运行numba_dpex/examples
目录中的示例。也可以按以下方式调用测试套件
python -m pytest --pyargs numba_dpex.tests
Conda
要从Anaconda云上的Intel(R)频道安装numba_dpex
,请使用以下命令
conda install numba-dpex -c intel -c conda-forge
Pip
可以使用pip
安装numba_dpex
,通过PyPi或Anaconda上的Intel(R)频道获取wheel包。要从Anaconda上的Intel(R)频道安装numba_dpex
wheel包,请运行以下命令
python -m pip install --index-url https://pypi.anaconda.org/intel/simple numba-dpex
贡献
请为功能请求和错误报告创建问题。您还可以使用GitHub讨论功能提出一般性问题。
如果您想与开发者交谈,请加入Gitter.im上的#Data-Parallel-Python_community房间。
也请参阅我们的CONTRIBUTING页面。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
构建的分发包
哈希值 for numba_dpex-0.23.0-5-cp311-cp311-win_amd64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 75c33d768ee7b5a551370d256d404d27140437e13c3df9ead0dabfb591a54811 |
|
MD5 | 899aab66ec3f0bd30be27f6dab451c6a |
|
BLAKE2b-256 | a7a01db3816a85b435f5e5e259c4b72de0c90825f38065eaab7d0252385d49ab |
哈希值 for numba_dpex-0.23.0-5-cp311-cp311-manylinux_2_28_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3411962fc7d20cdf639aa698a6289033fd133b8122f5cfb4208e597e22aa578d |
|
MD5 | 37b6c4b3b965d640eb6571214657412e |
|
BLAKE2b-256 | bf2d06d48c45dbdc9f6f82dd659176c7b78afdd577f9e3004d03b8b84cc4c74a |
哈希值 for numba_dpex-0.23.0-5-cp310-cp310-win_amd64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 69ba20cd89c3a03aab1cf62a62a861bf4c079221426bf1fc006a655fe5abb324 |
|
MD5 | c1d8b998b4cce2ad53feabe830483059 |
|
BLAKE2b-256 | 327ed7492bdff66d1eca3be947b052853b2dec68cdb6c91edf7350cc7fc7eab3 |
哈希值 for numba_dpex-0.23.0-5-cp310-cp310-manylinux_2_28_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b0552d23339f60277d3b700b9b23a3b5166b5476ac34fade2e9011a5d6696938 |
|
MD5 | fedc9e50c82a10e1d929fb7242b05c88 |
|
BLAKE2b-256 | a5c69e99e3ccf31307eaf7be35a3342a4dbc7156b67317a3583b4a12db51fe24 |
哈希值 用于 numba_dpex-0.23.0-5-cp39-cp39-manylinux_2_28_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b338b114b9eab965fda6bb166caf9041049c3e47d33dcf470a3bd420f9022f2e |
|
MD5 | 5fc920aa3815714846a7e78a8e6be132 |
|
BLAKE2b-256 | 2f32041c4b8f4c523582ddfce4b85f6ca11b29187feb8838e876bcb9c2b9ec47 |