《11-伍华林.pdf》由会员分享,可在线阅读,更多相关《11-伍华林.pdf(25页珍藏版)》请在三个皮匠报告上搜索。
1、兆松科技(武汉)有限公司Terapines Technology(Wuhan)Co.,Ltd.详解开源乘影GPGPU OpenCL编译器技术栈伍华林10/8/2024Copyright Terapines 2020-20241What is OpenCL10/8/2024Copyright Terapines 2020-20242OPEN STANDARD FOR PARALLEL PROGRAMMING OF HETEROGENEOUS SYSTEMSOpenCL Adoption10/8/2024Copyright Terapines 2020-20243OpenCL Overview 1
2、0/8/2024Copyright Terapines 2020-20244OpenCL Overview10/8/2024Copyright Terapines 2020-20245OpenCL Envolving10/8/2024Copyright Terapines 2020-20246 OpenCL 1.x OpenCL 2.0 Shared Virtual Memory Device Side Enqueue General Address Space Enhanced Image Type and Pipe Enhanced Atomic Operations OpenCL 3.0
3、 Emphasizes a return to the core principles of OpenCL 1.2 by making all features from versions 2.x optional.Interoperability with other APIs like VulkanThe process to claim OpenCL conformant10/8/2024Copyright Terapines 2020-20247 Implement the OpenCL Specification Use the Conformance Test Suite Subm
4、it Results to Khronos Khronos Review and Approval Conformance Statement and Use of Logo Maintain Compliance乘影GPGPU OpenCL Software Stack OpenCL Driver POCL Implementation of OpenCL API OpenCL Compiler LLVM Implementation of OpenCL C language compiler Managed by OpenCL driver,invisible to end user Op
5、enCL library libclc Implementation of workitem and kernel builtin functions Kernel Mode Driver The glue layer between POCL and Ventus GPGPU10/8/2024Copyright Terapines 2020-20248OpenCL Platform Model10/8/2024Copyright Terapines 2020-20249OpenCL Execution Model 10/8/2024Copyright Terapines 2020-20241
6、0OpenCL Memory Model 10/8/2024Copyright Terapines 2020-20241110/8/2024Copyright Terapines 2020-202412OpenCL Programming ModelC codeOpenCL codevoid vectorAdd(int*A,int*B,int size)for(int i=0;i 1get_global_size-1024get_local_size-16get_num_groups-1024/16get_global_offset-0Different for each threads:ge