英特尔开源 SYCLomatic 迁移工具,让跨架构开发变得更容易

2022 年 5 月 25 日 AI前线
作者 | 冬梅

近日,英特尔发布了一项开源工具,该工具可通过名为 SYCLomatic 的项目,将代码迁移至 SYCL,这有助于开发者更轻松地将 CUDA 代码迁移到 SYCL 和 C++,从而加速面向异构架构的跨架构编程。这个开源项目能让开发社区共同协作,以推动 SYCL 标准的采用,这是将开发者从单个厂商的封闭生态系统中解放出来的关键一步。

SYCLomatic 项目地址:https://github.com/oneapi-src/SYCLomatic

SYCL 是一种基于 C++ 的 Khronos Group 标准,它扩展了 C++ 功能以支持多种架构和非共享内存的配置。为启动该项目,英特尔开源了其 DPC++ 兼容性工具背后的技术,以进一步提升迁移能力,生成更多基于 SYCL 的应用。跨架构重复利用代码简化了开发工作,减少了持续维护代码所需的时间和成本。

英特尔 oneAPI 专家 James Reinders 表示:“使用 SYCL 将代码迁移至 C++,为代码提供了更强的 ISO C++ 一致性,支持多家供应商以缓解供应商锁定问题,并且支持多种架构,为充分运用新的硬件创新提供灵活性。SYCLomatic 是一个可实现大部分工作自动化的宝藏工具,让开发者能更多地关注定制化调优,而不是迁移代码。”

在硬件创新为计算带来多样化异构架构的同时,软件开发也已经变得越来越复杂,很难充分释放 CPU 和加速器的价值。如今的开发者及其团队普遍缺乏时间、金钱和资源,以适应代码的重写和测试,为这些不同的架构提升应用的性能。开发者正在寻求开放替代方案,以提升时间价值。英特尔正在提供一种更简单、更快捷的方式,让开发者进行硬件选择。

值得一提的是,利用带有 LLVM 差异化的 Apache 2.0 许可证,托管在 GitHub 上的 SYCLomatic 项目为开发者提供了一个社区,让他们能做出贡献并提供反馈,以进一步开放跨 CPU、GPU 和 FPGA 的异构开发。

SYCLomatic 能够协助开发者将 CUDA 代码迁移到 SYCL,通常可以将 90-95% 的 CUDA 代码自动迁移到 SYCL 代码。开发人员仅需手动编程剩余的工作,然后对特定架构进行定制化调优,达到所需的性能级别,便可完成这一过程。

在将 SYCLomatic 项目开源后,众多开发者和机构表示已经从这项技术中受益。HACC(硬件 / 混合加速宇宙学代码)、宇宙物理学和先进计算(anl.gov)的 Steve(Esteban)Rangel 表示:“CRK-HACC 是一个正在开发的 N 体宇宙学模拟代码。为了给极光(Aurora)超级计算机做好准备,英特尔 DPC++ 兼容性工具能让我们将 20 多个核心快速迁移到 SYCL。由于当前版本的代码迁移工具不支持迁移到仿函数,我们编写了一个简单的 clang 工具来重构生成的 SYCL 源代码,以满足我们的需求。通过开源 SYCLomatic 项目,我们计划整合此前的工作,以获得更强大的解决方案,并助力让仿函数成为可用迁移选项的一部分。”

SYCLomatic 项目地址:https://github.com/oneapi-src/SYCLomatic


你也「在看」吗?👇

登录查看更多
0

相关内容

超详细的AI 专家路线图!GitHub获星19.3k
专知会员服务
61+阅读 · 2022年5月11日
专知会员服务
33+阅读 · 2020年11月25日
【2020新书】使用Kubernetes开发高级平台,519页pdf
专知会员服务
66+阅读 · 2020年9月19日
FPGA加速系统开发工具设计:综述与实践
专知会员服务
65+阅读 · 2020年6月24日
单体服务到云端的迁移实践
InfoQ
0+阅读 · 2022年6月8日
一起看 I/O | Flutter 休闲游戏工具包发布
谷歌开发者
0+阅读 · 2022年5月19日
面向云原生应用的低代码开发平台构建之路
AI前线
0+阅读 · 2022年1月26日
Log4j 漏洞还没忙完,新的漏洞又出现了!
推荐系统领域13个开源工具总结
机器学习与推荐算法
1+阅读 · 2021年12月7日
AI 帮忙找 Bug ,英特尔开源代码编程工具 ControlFlag
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
2+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Arxiv
1+阅读 · 2022年7月31日
Arxiv
0+阅读 · 2022年7月29日
Arxiv
0+阅读 · 2022年7月28日
VIP会员
相关资讯
单体服务到云端的迁移实践
InfoQ
0+阅读 · 2022年6月8日
一起看 I/O | Flutter 休闲游戏工具包发布
谷歌开发者
0+阅读 · 2022年5月19日
面向云原生应用的低代码开发平台构建之路
AI前线
0+阅读 · 2022年1月26日
Log4j 漏洞还没忙完,新的漏洞又出现了!
推荐系统领域13个开源工具总结
机器学习与推荐算法
1+阅读 · 2021年12月7日
AI 帮忙找 Bug ,英特尔开源代码编程工具 ControlFlag
相关基金
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
2+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员