To gain a wider application, we need to provide users with open programming interfaces and supporting infrastructures for domestic heterogeneous platforms. In this work, we present an efficient OpenCL implementation for the Feiteng heterogeneous platform. At the front-end, our framework takes simplified OpenCL code as input to improve programmability, and it also recognizes codes with OpenCL extensions for performance tuning and debugging. At the back-end, we investigate platform mapping, code specialization, kernel tuning, resource management, and task partitioning to exploit the performance potentials of the Feiteng platform.The results of this work will provide users with an open programming standard, enable the legacy OpenCL code to run seaminglessly on our target platform, and ultimately improve its utilization.
国产异构平台的广泛应用需要在软件层面为用户提供开放通用的编程接口与支撑环境。面向国产飞腾异构平台,本项目研究异构编程模型OpenCL的实现与优化技术。在前端,该实现一方面将接受精简的OpenCL代码,提高程序员的编程效率;另一方面将兼容扩展的OpenCL代码,以便于程序员进行性能调优与调试。在后端,本项目将研究平台映射、代码定制、代码调优、资源划分和任务划分等一系列的优化技术,从而使得该OpenCL实现能够充分发挥飞腾异构平台的潜在性能。本项目的研究成果将给程序员提供一种通用开放高效的异构编程接口,能够使得大量的遗留代码无缝地运行在飞腾异构平台上,提高国产异构平台的利用率并将其推向更加广泛的应用领域。
国产异构平台的广泛应用需要在软件层面为用户提供开放通用的编程接口与支撑环境。本项目面向国产飞腾异构平台研究了异构编程模型OpenCL的实现与优化技术,实现了OpenCL编程与编译系统(MOCL)。MOCL已经部署到广州超算TH-2A系统,成为系统软件栈的一部分,并开放给超算用户使用。本项目研究了多任务流程序自动性能优化技术,首次基于机器学习方法构建多任务流程序性能的预测模型,能够达到最优性能的95%左右。本项目还研究了平台映射、代码定制、代码调优、资源划分和任务划分等一系列的性能优化技术,从而使得该OpenCL实现能够充分发挥飞腾异构平台的潜在性能。本项目的研究成果将提供给程序员一种通用开放高效的异构编程接口,能够使得大量的遗留代码无缝地运行在飞腾异构平台上,提高国产异构平台的利用率并将其推向更加广泛的应用领域。
{{i.achievement_title}}
数据更新时间:2023-05-31
基于分形L系统的水稻根系建模方法研究
黄河流域水资源利用时空演变特征及驱动要素
拥堵路网交通流均衡分配模型
卫生系统韧性研究概况及其展望
面向云工作流安全的任务调度方法
异构并行计算环境下基于OpenCL的刀具路径规划模式研究
面向动态规划计算的并行编程模型和运行时系统研究
面向异构并行系统的生物序列比对并行策略及算法研究
易编程的异构并行处理器结构