Skip to main content

pyasc

🔥Latest News

  • [2025/11] pyasc项目首次上线。

🚀概述

pyasc是一种用于编写高效自定义算子的编程语言,原生支持python标准规范。基于pyasc编写的算子程序,通过编译器编译和运行时调度,运行在昇腾AI处理器上。
pyasc编程接口与Ascend C类库接口一一对应,旨在提供与Ascend C接口相同的编程能力,目前正逐步开放中。有关pyasc编程接口的支持范围和约束,请参考Ascend C API。对于编程所需的抽象硬件架构和编程模型的相关知识,请参考《Ascend C算子开发》。本项目支持的AI处理器包括:Ascend 910C、Ascend 910B。

🔍目录结构

关键目录如下:

├── bin                 # 工具文件
├── docs                # 说明文档
│   ├── figures         # 文档图片
│   └── python-api      # API接口文档
├── include             # 后端头文件和td文件
│   └── ascir             ## ascir头文件和td文件
├── lib                 # 后端源文件
│   ├── Dialect           ## mlir方言定义源文件
│   ├── TableGen          ## tablegen扩展代码文件
│   └── Target            ## mlir目标代码转换源文件
├── python              # python前端代码
│   ├── asc               ## 用户可见的python包,对外发布的wheel包中以此目录为主,其他代码则按需打包
│   ├── src               ## pybind相关代码,cpp格式
│   ├── test              ## python格式的测试用例集
│   └── tutorials         ## 供用户参考的样例集
└── test                # 后端的测试用例集
    ├── Dialect           ## mlir方言定义模块测试用例
    ├── Target            ## mlir目标代码转换模块测试用例
    └── tools             ## 后端工具相关测试用例

⚡️快速入门

若您希望快速体验pyasc的使用过程,请访问如下文档获取简易教程。

  • 构建:介绍搭建环境、编译执行、本地验证。
  • 样例执行:介绍如何端到端执行样例代码。

📖学习教程

若您希望深入体验项目或参与项目贡献,请访问如下文档获取详细教程。

💻 软硬件配套说明

pyasc所需的软硬件环境依赖如下:

不同pyasc发行版可支持的硬件平台及所需的CANN版本如下表:

pyasc社区版本 支持CANN包版本 支持昇腾产品
v1.1.0、v1.1.1 社区版8.5.0.alpha001及以上 Atlas A2训练/推理产品
Atlas A3训练/推理产品
v1.0.0 社区版8.5.0.alpha001、8.5.0.alpha002 Atlas A2训练/推理产品
Atlas A3训练/推理产品

👥 合作贡献者

  • 哈尔滨工业大学苏统华老师团队、王甜甜老师团队

📝相关信息

Metadata

Release files for pyasc 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for pyasc 1.1.1
File
pyasc-1.1.1-cp312-cp312-manylinux_2_31_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.31+ x86-64 Details
pyasc-1.1.1-cp312-cp312-manylinux_2_31_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.31+ ARM64 Details
pyasc-1.1.1-cp311-cp311-manylinux_2_31_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.31+ x86-64 Details
pyasc-1.1.1-cp311-cp311-manylinux_2_31_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.31+ ARM64 Details
pyasc-1.1.1-cp310-cp310-manylinux_2_31_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.31+ x86-64 Details
pyasc-1.1.1-cp310-cp310-manylinux_2_31_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.31+ ARM64 Details
pyasc-1.1.1-cp39-cp39-manylinux_2_31_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.31+ x86-64 Details
pyasc-1.1.1-cp39-cp39-manylinux_2_31_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.31+ ARM64 Details

Total release size: 192.5 MB

Release files / pyasc-1.1.1-cp312-cp312-manylinux_2_31_x86_64.whl

Download URL pyasc-1.1.1-cp312-cp312-manylinux_2_31_x86_64.whl
Size 12.7 MB
Tags CPython 3.12 Linux glibc 2.31+ x86-64
SHA-256 checksum
How to use checksums
76c0a0abbc857e9d2381801d0d1bf473142a533977ac5d436c95aebd57505557
BLAKE2b-256 checksum
How to use checksums
32d09ff3933a48049a64fe7f60056948d346c95ddcfa218e60c1b49ca8dda9eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release files / pyasc-1.1.1-cp312-cp312-manylinux_2_31_aarch64.whl

Download URL pyasc-1.1.1-cp312-cp312-manylinux_2_31_aarch64.whl
Size 34.9 MB
Tags CPython 3.12 Linux glibc 2.31+ ARM64
SHA-256 checksum
How to use checksums
014099c64fedc551c9f879290657fa9348f991064372a5893c7703a131a017c2
BLAKE2b-256 checksum
How to use checksums
ad6cca5b8f3e9f2306855c95fef84e52993de52c127f02c4e62fb8433eadae31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release files / pyasc-1.1.1-cp311-cp311-manylinux_2_31_x86_64.whl

Download URL pyasc-1.1.1-cp311-cp311-manylinux_2_31_x86_64.whl
Size 12.7 MB
Tags CPython 3.11 Linux glibc 2.31+ x86-64
SHA-256 checksum
How to use checksums
f720448ca932d32502ad282ee083f2284efd3ea919006c5c8a2aa3e1e3b8932a
BLAKE2b-256 checksum
How to use checksums
f92b3c61358085fe33b5da8ce5d4c47221127c1ee0de518c2b3888ad18cb7e6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release files / pyasc-1.1.1-cp311-cp311-manylinux_2_31_aarch64.whl

Download URL pyasc-1.1.1-cp311-cp311-manylinux_2_31_aarch64.whl
Size 35.5 MB
Tags CPython 3.11 Linux glibc 2.31+ ARM64
SHA-256 checksum
How to use checksums
3d28c56a94bd4820af3b54489f78bcf33a84e3d69417deb3a3d1461b34afe62d
BLAKE2b-256 checksum
How to use checksums
68530da6c4e3f879807f5257ebbbcdca8616f14c0de6cdcea282754584fee455
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release files / pyasc-1.1.1-cp310-cp310-manylinux_2_31_x86_64.whl

Download URL pyasc-1.1.1-cp310-cp310-manylinux_2_31_x86_64.whl
Size 12.7 MB
Tags CPython 3.10 Linux glibc 2.31+ x86-64
SHA-256 checksum
How to use checksums
17358fb7ddd5c7ba692b436e1a618d7248b3f54dbeb786ff731204a51a4b6b2d
BLAKE2b-256 checksum
How to use checksums
6fd674cbfc8adc99b00aeb1cbafde9da501e91a3b93ea9963f87ebc712a39192
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release files / pyasc-1.1.1-cp310-cp310-manylinux_2_31_aarch64.whl

Download URL pyasc-1.1.1-cp310-cp310-manylinux_2_31_aarch64.whl
Size 35.5 MB
Tags CPython 3.10 Linux glibc 2.31+ ARM64
SHA-256 checksum
How to use checksums
7078b6fb1aff8e7e32f6d16f5847e74dd897b0a779901c4b6e21e73ba0181408
BLAKE2b-256 checksum
How to use checksums
d6aa33843adecf0eb256a7aae0ed2a96acc7067a1381b6499062aa9c99c2bb75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release files / pyasc-1.1.1-cp39-cp39-manylinux_2_31_x86_64.whl

Download URL pyasc-1.1.1-cp39-cp39-manylinux_2_31_x86_64.whl
Size 12.7 MB
Tags CPython 3.9 Linux glibc 2.31+ x86-64
SHA-256 checksum
How to use checksums
452c3af93892d11cae4542a6226f384f36521e65147da74ad966532d3ac3323c
BLAKE2b-256 checksum
How to use checksums
a158a3d3f2b28413628a532e7f45547039850c4afec73e8f03e397d1e3aff8e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release files / pyasc-1.1.1-cp39-cp39-manylinux_2_31_aarch64.whl

Download URL pyasc-1.1.1-cp39-cp39-manylinux_2_31_aarch64.whl
Size 35.5 MB
Tags CPython 3.9 Linux glibc 2.31+ ARM64
SHA-256 checksum
How to use checksums
f0a8418f4bd7e90e3c9fac8a8a09a2809ec20206a2365b4a3f38639939993211
BLAKE2b-256 checksum
How to use checksums
e6c48606a1f9e10d5d06a133017fe23227840776d0575c89387bedaec65a150c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.12

Release history Release notifications | RSS feed

This release

1.1.1 This release

8 release files

1.1.0

8 release files

1.0.0

10 release files

0.4.0

8 release files

0.3.0

1 release file

0.2.0

8 release files

0.1.0

1 release file

0.0.4

8 release files

0.0.3

2 release files

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page