入职培训概要
1、熟悉kernel编译流程。
以矩阵乘法kernel为例子。
- Kernel位置:
pint_sdk/core/kernels/blas/level3/gemm-f32.h
- 脚本:
pint_sdk/core/kernels/blas/build.sh
- 简单文档参考:confluence
- 代码:http://192.168.0.16:7990/projects/PAN/repos/pint_sdk/browse
2、熟悉opencl/pyopencl异构编程接口。
- Opencl文档:见附件
- pyopencl文档:https://documen.tician.de/pyopencl/
- 简单示例代码:pint_sdk/test/kernels/dnn/*.py (例如cl_floormod_i32.py)
简单Kernel代码:
熟悉芯片编程架构/cache结构/systolic array
相关资料:
confluence/Technology Documents/CSR_CORE hardware description
confluence/Technology Documents/Systolic array hardware description and API use guide.
熟悉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/
- Miniconda环境安装
安装文件位置:/home/swshare/yzeng/Miniconda3***.sh。
conda安装完成之后,启动conda,继续使用pip安装pyopencl/scipy/pandas