【ESWIN实习】kernel组培训概要
培训 Kernel 实习 概要
2023-09-11 14:20:36 时间
0、ESWIN 环境配置
1、熟悉kernel编译流程
以矩阵乘法kernel为例子。
- Kernel位置:
pint_sdk/core/kernels/blas/level3/gemm-f32.h
- 脚本:
pint_sdk/core/kernels/blas/build.sh
- confluence简单文档参考:
Dashboard / Software Documents / Compute Kernel Development / KernelDev_SharedDoc / Convolution 2D kernel user manual
- Bitbucket代码位置:http://192.168.0.16:7990/projects/PAN/repos/pint_sdk/browse
2、熟悉opencl/pyopencl异构编程接口
- Opencl文档:OpenCL编程指南.pdf
- pyopencl文档:https://documen.tician.de/pyopencl/
- 简单示例代码:
pint_sdk/test/kernels/dnn/*.py
(例如cl_floormod_i32.py
) - 简单Kernel代码:
pint_sdk/core/kernels/dnn/tensor_ops/
3、熟悉芯片编程架构/cache结构/systolic array
相关资料:
confluence/Technology Documents/CSR_CORE hardware description
confluence/Technology Documents/Systolic array hardware description and API user guide
4、熟悉testing和tuning流程
- 示例代码(简单):
pint_sdk/test/kernels/dnn/tensor_ops/tune_average_pool_2D_f32.py
- 示例代码:
pint_sdk/test/kernels/blas/level3/tune_gemm_f32.py
- tuner python库:
pint_sdk/test/kernel_tuner/
5、Miniconda环境安装
- 安装文件位置:
/home/swshare/yzeng/Miniconda3***.sh
- conda安装完成之后,启动conda,继续使用pip安装
pyopencl/scipy/pandas