Project Documentation

Directory Description

Key directory structure is as follows:

├── zh                             # Chinese documentation directory
│   ├── api                        # API documentation directory
│   ├── contributing               # Code contribution standards directory (code style, API design, directory structure, testing, etc.)
│   ├── figures                    # Image directory
│   ├── guide                      # Ascend C operator develop guide
│   ├── vitepress                      # docs build directory
│   ├── asc_adv_api_contributing.md    # Ascend C high-level API contribution guide
│   ├── asc_basic_api_contributing.md  # Ascend C basic API contribution guide
│   ├── asc_c_api_contributing.md      # Ascend C C API contribution guide
│   ├── asc_doc_contributing.md        # Ascend C documentation contribution guide
│   ├── asc_doc_design_rules.md        # Ascend C documentation design rules
│   ├── asc_950_feature_guide.md       # Ascend 950PR/Ascend 950DT new feature guide
│   ├── asc_how_to_choose_api.md       # Ascend C Multi-Level Programming Interface Selection Guide
│   └── quick_start.md                 # Quick start documentation
├── en                                 # English documentation directory
│   ├── contributing                   # Code contribution standards directory (code style, API design, directory structure, testing, etc.)
│   ├── asc_adv_api_contributing.md    # Ascend C high-level API contribution guide
│   ├── asc_basic_api_contributing.md  # Ascend C basic API contribution guide
│   ├── asc_c_api_contributing.md      # Ascend C C API contribution guide
│   ├── asc_doc_contributing.md        # Ascend C documentation contribution guide
│   ├── asc_doc_design_rules.md        # Ascend C documentation design rules
│   ├── asc_950_feature_guide.md       # Ascend 950PR/Ascend 950DT new feature guide
│   ├── asc_how_to_choose_api.md       # Ascend C Multi-Level Programming Interface Selection Guide
│   └── quick_start.md                 # Quick start documentation
├── README_en.md
└── README.md

Documentation Description

To help developers quickly familiarize with this project, corresponding documentation can be obtained as needed. Documentation content includes:

Document Target Audience Content Introduction
API List Users developing customized APIs or operators based on Ascend C open source repository. Introduces all APIs included in the project.
High-level API Contribution Guide Users developing customized APIs based on Ascend C open source repository. Introduces how to extend or develop Ascend C high-level API. High-level API abstracts and encapsulates common algorithms based on single-core, implementing commonly used computational algorithms to improve operator development efficiency.
Basic API Contribution Guide Users developing customized APIs based on Ascend C open source repository. Introduces how to extend or develop Ascend C basic API. Basic API implements abstraction of hardware capabilities, opening chip capabilities, ensuring completeness and compatibility.
C API Contribution Guide Users developing customized APIs based on Ascend C open source repository. Introduces how to extend or develop Ascend C C API. C API provides pure C style interfaces, conforming to C language operator development habits, opening complete chip programming capabilities.
Documentation Contribution Guide Developers improving existing Ascend C documentation. Introduces the writing and contribution specifications for each chapter of Ascend C documentation.
Documentation Design Rules Developers improving existing Ascend C documentation. Introduces the Ascend C documentation architecture and overall design principles.
Code Contribution Standards Developers contributing code to Ascend C. Index of contribution standards: code style, API design, directory structure, testing.
Ascend C Getting Started Guide Beginners of Ascend C Introduces basic concepts of operator programming and the Ascend C learning path, helping developers quickly get started with operator development.
Ascend C Programming Guide Developers writing operator programs with Ascend C on Ascend AI hardware and developing custom operators. Ascend C is a programming language launched by CANN for operator development scenarios. It natively supports C and C++ standards, offering both development efficiency and runtime performance. Write operator programs with Ascend C to run on Ascend AI processors and implement custom innovative algorithms.
Ascend C Operator Practice Reference Developers who have completed Ascend C operator development and need to further optimize operator performance. Characteristics of heterogeneous computing, debugging methods for operator functionality, and performance optimization strategies. By introducing debugging and optimization approaches in Ascend C programming, combined with various performance optimization techniques and specific cases, this guide aims to help developers achieve high-performance operator development.
Ascend C Cross-Generation Migration Guide Developers who need to migrate existing operators across different generations of Ascend AI processors. Guides how to achieve functional equivalence and optimal performance adaptation across chip generations.

Appendix

Besides the systematic development documentation introduced above, you can also selectively learn about corresponding specialized content based on actual scenarios and development stages.