# cann-lib **Repository Path**: javpower/cann-lib ## Basic Information - **Project Name**: cann-lib - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-17 - **Last Updated**: 2025-06-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CANN Matrix Multiplication Library 基于华为昇腾(CANN)平台的矩阵乘法加速库,通过JNI实现Java与C++的互操作,利用昇腾NPU进行矩阵运算加速。 ## 功能特性 - 基于昇腾CANN平台的矩阵乘法加速 ## 快速开始 ### 1. 环境准备 安装必要的环境: ### 2. 编译和测试 使用提供的测试脚本进行编译和测试: ```bash # 添加执行权限 chmod +x test.sh # 运行测试脚本 ./test.sh ``` 测试脚本会执行以下操作: - 检查并安装必要的依赖 - 使用 Maven 构建项目 - 编译 C++ 代码 - 运行单元测试 - 生成测试报告 测试报告将生成在 `test-reports` 目录下。 ## 项目结构 ``` . ├── README.md # 项目说明文档 ├── pom.xml # Maven配置文件 ├── test.sh # 测试脚本 └── src/ ├── main/ │ ├── java/ │ │ └── org/ │ │ └── dromara/ │ │ └── easyai/ │ │ └── matrixTools/ │ │ ├── jni/ │ │ │ └── CANNJNI.java # JNI接口类 │ │ └── Matrix.java # 矩阵类 │ └── cpp/ │ ├── CMakeLists.txt # CMake配置文件 │ └── matmul.cpp # C++实现 └── test/ └── java/ └── org/ └── dromara/ └── easyai/ └── matrixTools/ └── jni/ └── MatmulJNITest.java # JNI测试类 ``` ## 测试框架 项目包含完整的测试框架,支持以下测试类型: 1. **单元测试** - 基本功能测试 - 边界条件测试 - 异常情况测试 ## 环境变量配置 项目依赖以下环境变量: - `ASCEND_SDK_PATH`: 昇腾SDK安装路径 - `JAVA_HOME`: Java安装路径 - `LD_LIBRARY_PATH`: 包含昇腾库文件的路径 可以通过 `env.sh` 脚本设置这些环境变量: ```bash source env.sh ``` ## 注意事项 1. 确保昇腾硬件已正确安装并配置 2. 运行前检查环境变量是否正确设置 3. 首次运行需要root权限安装依赖 4. 如遇到权限问题,请确保用户有访问昇腾设备的权限 ## 许可证 本项目采用 MIT 许可证。详见 [LICENSE](LICENSE) 文件。