0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么计算软件库是AI成功的关键

颖脉Imgtec 2024-10-18 08:06 次阅读

老话常说,“你付出什么,就得到什么”,这可能是总结接下来几段内容的最简单方式,我们将介绍Imagination的新OpenCL计算库。如果你没有时间继续阅读,只需记住这一点:我们能够从GPU中挤压出更多的计算和AI性能,因为我们在这些新软件库的精心设计上投入了大量工作,这样我们的客户就不必再投入这些工作了。对于一些客户来说,这种开箱即用的体验正是他们完成工作所需的。而对于其他客户,特别是那些正在开发自己的自定义库/内核的客户,Imagination的计算库以及相关的支持材料和工具,是他们在开发和性能目标上取得成功的一个完美起点。

Imagination多年来一直在构建支持OpenCL的GPU,用于计算应用。我们与许多企业合作,这些企业拥有自己的NPU(神经处理单元),但需要一个GPU(通用GPU)来提供NPU通常不具备的编程灵活性。我们还看到市场上普遍认识到灵活性是必不可少的,尤其是在从“功能到性能再到优化”的开发者旅程中针对自己的计算算法时。我们在之前的文章《拥抱边缘AI中的灵活性》中讨论了通用加速相对于特定领域加速的优势,并强调开发者的赋能在于提供适合工作的软件。


什么是正确的软件呢?

数学库和神经网络库被广泛认为是在可编程平台上高效执行AI应用和其他计算密集型工作负载的基本构建块。车内驾驶员监控应用、激光雷达、雷达、视觉预/后处理算法,甚至是像LLM这样的基础模型中的transformer块的关键处理元素,都依赖于底层优化的库。对这些基本构建块的需求催生了大量的开源项目(如clBLAS、vkFFT、xnnpack等),任何开发者现在都可以快速访问并在他们的应用中使用这些库,以实现其功能。

然而,最初的完成工作的热情往往很快会被失望所取代,因为开发者发现,使用开源库的性能远远低于他们基于可用硬件TFLOPS/TOPS的预期。随后,这种失望很快会变成持续的挫败感,因为用户面对的现实是,要解决这些问题,需要深入了解硬件微架构和开发者工具。


这是一个新问题吗?

在我职业生涯的早期,我花了几年时间深入优化用于音频视频算法的DSP代码,任何在边缘计算领域工作过的人都会讲述类似的故事:通宵达旦地吃着披萨,与算法、编译器和硬件调试器斗争,以获得所需性能。尽管自那时以来,技术取得了许多进步,比如新的并行编程语言和智能编译技术,但归根结底,情况并没有太大改变。对最高性能的需求依然存在,而这只能通过手工优化的算法和底层库及内核来满足。如果没有这些性能库,最近流行的“加速计算”这一术语就无法实现其承诺,即充分利用底层硬件的潜力来加速计算任务。换句话说,如果不投资于软件,客户就永远无法真正解锁硬件的潜力。这是一个新问题吗?显然不是!从任何系统中获得最优性能的挑战一直都很困难,并且仍然如此。解决这个问题需要广泛的专业知识:1. 对算法及其算法实现选择的深刻理解(通常问题具有多维度,有许多分解方式可供选择)。
2. 深入了解硬件微架构以及可用于利用上述架构选择的各种选项。3. 了解编程语言的灵活性和功能,以及相关编译器的“智能”。4. 在一段时间内持续应用上述知识,为用户可能需要的多种可能性开发良好的覆盖范围。优秀的程序员能够将所有这些要素结合在一起,并且再加上只有最有经验的编码人员才能掌握的一点点魔法,从而从硬件中获得非常好的甚至最优性能的。但这样的程序员是稀缺的。

因此,为了让加速计算的承诺对每个人来说都可实现,Imagination将其专业知识应用于这个问题。毕竟,我们的工程师是最适合为我们自己的硬件创建优化库的人。


Imagination的解决方案是什么?Imagination的GPU产品的灵活微架构为智能映射和并行化工作负载提供了许多机会,以最大化计算引擎和内存层次带宽(GPU内部和外部)的利用率。为了实现最优性能,Imagination的一个跨职能专家团队解决了上述所有问题,并应用了我们对运行时系统中动态元素的深入理解,例如运行时OpenCL编译器和硬件的动态调度。从这项活动中获得的经验反馈到硬件和编译器设计的改进中,通过我们的AI产品路线图,这个良性循环将持续进行。在发布时,Imagination的OpenCL计算库通常能够实现比客户使用开源解决方案所报告的性能提升3倍到4倍的更好结果。

在新发布的DXS GPU中,这些库与专注于计算的硬件改进相结合,例如额外的SPU(可扩展处理单元)和额外的FP16流水线,对于许多计算工作负载,相比我们上一代的汽车GPU,性能提升了10倍或更多。


还有什么?

我们这些基础库的目标是专注于我们作为IP公司的核心价值:最大限度地发挥我们芯片的性能,并使用户能够做到同样的事情。但除此之外,我们还在做什么?我们现在专注于两个关键领域:1. 提供参考计算和AI工具包,使客户能够在实际用例中利用这些计算库。

2. 构建我们的领域专家合作伙伴生态系统,帮助客户通过解决方案和服务加速其上市目标。

我们最近与MulticoreWare和澎峰科技的合作就是创新合作伙伴基于我们的计算库构建AI解决方案,并利用我们的参考工具包的两个范例。


澎峰科技为希望加速AI的企业开发异构计算软件堆栈和基础设施解决方案。我们使用Imagination的计算软件解决方案在Imagination GPU上运行各种AI应用,包括我们的LLM推理引擎PerfXLM,迄今为止与CPU相比性能提升高达100%,而移植所需的时间极少。

——澎峰科技首席执行官张先轶

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • AI
    AI
    +关注

    关注

    87

    文章

    30350

    浏览量

    268610
  • 计算软件
    +关注

    关注

    0

    文章

    54

    浏览量

    11023
  • 软件库
    +关注

    关注

    0

    文章

    15

    浏览量

    7761
收藏 人收藏

    评论

    相关推荐

    Arm成功将Arm KleidiAI软件集成到腾讯自研的Angel 机器学习框架

    Arm 与腾讯携手合作,成功将 Arm KleidiAI 软件集成到腾讯自研的 Angel 机器学习框架。   借助 KleidiAI 解锁卓越性能、能效和可移植性,腾讯混元大模型能够实现更快
    的头像 发表于 11-24 15:33 568次阅读

    AI云端计算资源有哪些类型

    AI云端计算资源涵盖了从基础设施到软件服务的多个层面,为AI模型的训练、推理和部署提供了强大的支持。下面,AI部落小编为您详细介绍
    的头像 发表于 11-15 09:39 142次阅读

    AI高性能计算平台是什么

    AI高性能计算平台不仅是AI技术发展的基石,更是推动AI应用落地、加速产业升级的重要工具。以下,是对AI高性能
    的头像 发表于 11-11 09:56 141次阅读

    InfiniBand网络内计算关键技术和应用

    InfiniBand在高性能计算(HPC)和人工智能(AI)应用中发挥着关键作用,体现在它提供了高速、低延迟的网络通信能力,以支持大规模数据传输和复杂计算任务。而InfiniBand的
    的头像 发表于 10-23 11:33 283次阅读

    AI for Science:人工智能驱动科学创新》第二章AI for Science的技术支撑学习心得

    计算的结合 我深刻体会到高性能计算(HPC)在AI for Science中的重要性。传统的科学计算往往面临计算量大、
    发表于 10-14 09:16

    “智造·芯生无限”Intel AI Summit成功举行

    日前,由英特尔主办的“智造·芯生无限” Intel AI Summit在上海虹桥康得思酒店成功举行。此次活动吸引了来自百度、利珀、CODESYS 、诺达佳、智谱AI、浙江人形机器人创新中心、研扬
    的头像 发表于 10-12 09:46 404次阅读

    RISC-V如何支持不同的AI和机器学习框架和

    RISC-V如何支持不同的AI和机器学习框架和?还请坛友们多多指教一下。
    发表于 10-10 22:24

    线程创建成功了,为啥ai_thread_entry()函数不运行呢?

    我这个线程创建成功了,为啥ai_thread_entry()函数不运行呢? void airun_thread() { /* 创建 serial 线程 */ rt_thread_t
    发表于 09-27 09:35

    中国首个量子计算专项智成立

    9月11日,记者从安徽省量子计算工程研究中心获悉,中国首个量子计算专项智“量子计算观察”正式成立,中国量子信息奠基人、中国科学院院士郭光灿受邀担任智
    的头像 发表于 09-12 08:07 224次阅读
    中国首个量子<b class='flag-5'>计算</b>专项智<b class='flag-5'>库</b>成立

    NVIDIA IGX平台加速实时边缘AI应用

    实时边缘 AI 对于医疗、工业和科学计算至关重要,因为这些任务关键型应用需要即时数据处理、低延迟和高可靠性,以确保作出及时准确的决策。这些挑战不仅涉及硬件平台上的高带宽传感器处理和 AI
    的头像 发表于 09-09 10:14 495次阅读
    NVIDIA IGX平台加速实时边缘<b class='flag-5'>AI</b>应用

    Arm KleidiAI软件的功能解析

    在持续快速发展的人工智能 (AI) 时代,Arm 坚定地支持全球数百万开发者,确保他们能够获得 AI 创新开发所需的性能、工具和软件,从而顺利打造下一波令人惊叹的
    的头像 发表于 09-05 15:41 401次阅读
    Arm KleidiAI<b class='flag-5'>软件</b><b class='flag-5'>库</b>的功能解析

    使用Arm KleidiCV开源加速图像处理性能

    针对 Arm CPU 优化的性能关键型例程的开源。该软件专为集成到各种计算机视觉框架而设计,能够为 Arm 平台上的
    的头像 发表于 09-03 11:32 1700次阅读
    使用Arm KleidiCV开源<b class='flag-5'>库</b>加速图像处理性能

    怎么在NanoEdge AI Studio设定交叉编译器呢?

    20231009\", 那么问题来了,怎么在NanoEdge AI Studio设定交叉编译器呢,比如设置为armcc、armclang、iccram,因为我需要将加到keil或者iar工程里面。 看样子这个软件生成的
    发表于 03-07 06:28

    什么是AI边缘计算AI边缘计算的特点和优势介绍

    随着人工智能的迅猛发展,AI边缘计算成为了热门话题。那么什么是AI边缘计算呢?简单来说,它是将人工智能技术引入边缘计算的新兴领域,旨在将
    的头像 发表于 02-01 11:42 844次阅读

    通用Tensilica软件堆栈提供最佳边缘AI性能

    开发敏捷的软件堆栈对 AI 在边缘侧的成功部署非常重要。
    的头像 发表于 01-18 13:39 760次阅读
    通用Tensilica<b class='flag-5'>软件</b>堆栈提供最佳边缘<b class='flag-5'>AI</b>性能