使用MATLAB轻松享受GPU的强大功能.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
近年来,使用 GPU( 通用图形处理器 )进行科学计算已变得十分普遍。 GPU 最初设计用于图像密集型视频游戏产业中的图形 渲染绘制,但近年来 GPU 不断发展,现可用于更广泛的用途。研究人员可对其进行程序设计以执行计算,用于数据分析、数据 可视化,以及金融和生物建模等应用。 MATLAB 的 GPU 支持为活跃于许多学科的大量研究人员 (不一定是 CUDA 编程专家 )提供了一种加速科学计算的新方法。 考虑到 MATLAB 主要是用于科学计算和工程计算, 因此 MATLAB 必威体育精装版提供的 GPU 支持是一种逻辑开发, 以便让非编程专家同 样能够使用此技术。 有了 MATLAB 的这些新功能之后,用户便可以利用 GPU 来实现其应用程序的显著提速,而无需进行低级的 C 语言程序设 计。这一必威体育精装版技术发展提供了现有方法以外的其他方法来加速特定硬件上的 MATLAB 算法执行。 使用 MATLAB 进行 GPU 程序设计 MATLAB 中的 CUDA 支持为 GPU 加速后的 MATLAB 操作提供了基础, 并实现了现有 CUDA 内核与 MATLAB 应用程序的 集成。用户现在可以使用不同的程序设计技术来实现易用性与执行优化两者的适当平衡 ( 参考文献 1) 。 MATLAB 支持启用了 CUDA 的 NVIDIAGPU( 具有 1.3 或更高版本计算功能 ),例如 Tesla10 系列和基于 Fermi 架构的尖端 Tesla20 系列。 GPU1.3 版提供的双浮点精度全面支持是保证大多数科学计算不因速度权衡而损失精度 (lossSvb) 的先决条件, 并 且可以将代码更改的需要减到最低。 在 MATLAB 中实现 GPU 计算的三种方法加速了整个应用程序的进度,并实现了所需的建模复杂度与执行控制间的权衡方 案。 在 GPU 上执行重载的 MATLAB 函数 最简单的编程模式包括对 GPU(GPU 数组 )上已加载数据的 MATLAB 函数直接调用。 用户可以决定何时在 MATLAB 工作区 和 GPU 之间移动数据或创建存储在 GPU 内存中的数据,以尽可能减少主机与设备间数据传输的开销。在第一个版本中,已重 载了超过 100 个 MATLAB 函数( 包括 FFT 和矩阵除法 ) ,以在 GPU 数组中无缝执行。用户可在同一函数调用中将在 GPU 上加 载的数据和 MATLAB 工作区中的数据混合,以实现最优的灵活性与易用性。 这种方法提供了一个简单的接口,让用户可以在 GPU 上直接执行标准函数,从而获得性能提升,而无需花费任何时间开发 专门的代码。 MATLAB 代码示例 1,在 GPU 上执行矩阵除法 当处理存储在 GPU 内存中的数据时,会重载操作符以便在 GPU 上运行。在这种情况下,用户不得对函数进行任何更改, 只能指定何时从 GPU 内存移动和检索数据,这两种操作分别通过 gpuArray 和 gather 命令来完成。 在 MATLAB 中定义 GPU 内核 作为第二种编程模式,用户可以定义 MATLAB 函数,执行要对 GPU 上的向量化数据执行的标量算术运算。使用这种方法, 用户可以扩展和自定义在 GPU 上执行的函数集, 以构建复杂应用程序并实现性能加速, 因为需要进行的内核调用和数据传输比 以前少。 这种编程模式允许用算术方法定义要在 GPU 上执行的复杂内核,只需使用 MATLAB 语言即可。使用这种方法,可在 GPU 上执行复杂的算术运算,充分利用数据并行化并最小化与内核调用和数据传输有关的开销。 MATLAB 代码示例 2,将 MATLAB 函数定义为 GPU 内核 同样,在这种情况下, 用户不得对函数进行任何更改, 只能指定何时从 GPU 内存移动和检索数据以及使用 arrayfun 命令调 用函数。 TaylorFun 函数会在 A_gpu 矢量的各个元素上执行,充分利用数据并行化。 直接从 MATLAB 调用 CUDA

文档评论(0)

拉拉链 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档