美文网首页
随笔 | FPGA上利用OpenCL加速科学计算stencil

随笔 | FPGA上利用OpenCL加速科学计算stencil

作者: 洛夏cx | 来源:发表于2020-10-23 23:55 被阅读0次

    嗯,没错,这是一篇水文……

    其实说忙倒也不是真的挤不出时间来看看杂书,多是自己犯懒,没提起兴致来。《四世同堂》还未读完,自然做不了摘记,也没静下心来翻翻《史记》,但又不想放弃日更的小目标,却也一时间不知道该写点什么,索性就想到啥说啥,随便扯扯凑凑字数……

    近日看了些专业方面的paper,都是有关加速科学计算stencil的研究工作。stencil为科学计算应用提供各类计算模板,在高性能计算中占有重要地位,因其具有良好的数据局部性与计算并行性,而受到研究者们的广泛关注。早在2010年左右,就涌现出大量的研究者者在传统的CPU架构以及GPU等加速器上针对stencil的性能特征进行优化,而近几年来热度有所下降,但伴随着FPGA架构的更新换代,stencil加速又重新走进了人们的视野。

    这一切都要归功于FPGA存储能力与带宽的提升,正因如此,才给stencil在FPGA上提供了优化的可行性。stencil存在两类潜在的并行行为:cells in parallel(单次迭代内数据元素间的并行)与iterations in parallel(多次迭代计算间的并行),针对这两类并行行为,研究者们提出了spatial blocking与temporal blocking两种优化方法:一是利用FPGA特有的shift registers来减少访存次数,充分利用每个数据元素后再进行淘汰;二是采用overlapped tiling的方法对整体数据进行分块,大大提高了计算并行性,同时也解决了输入数据规模受限的问题。最后,研究者们将工作移植到了多个FPGA的计算平台上,可以更加高效、并行地解决更大规模的stencil计算问题,同时对整体性能与功耗进行了建模,为在不同平台上加速stencil打下了工作基础。

相关文章

  • 随笔 | FPGA上利用OpenCL加速科学计算stencil

    嗯,没错,这是一篇水文…… 其实说忙倒也不是真的挤不出时间来看看杂书,多是自己犯懒,没提起兴致来。《四世同...

  • opencl basics

    1,适应平台OpenCL是一个实现并行计算的编程框架,适应于CPU, GPU, DSP, FPGA 2,OpenC...

  • CUDA与OpenCL之间的差异

    CUDA和OpenCL都是实现计算机异构并行计算架构,然而CUDA是针对NVIDIA公司的GPU,而OpenCL是...

  • oneAPI的测试:Vector-add

    oneAPI简介 Intel 的oneAPI,目的是简化跨CPU、GPU、FPGA、人工智能和其它加速器的各种计算...

  • OpenCL简介

    OpenCL是一个异构计算平台,Khronos Group将OpenCL的异构并行计算架构划分为平台模型(plat...

  • 猿学-FPGA加速:面向数据中心和云服务的探索和实践

    作者介绍:章恒——腾讯云FPGA专家,目前在腾讯架构平台部负责FPGA云的研发工作,探索FPGA加速数据中心的应用...

  • 自定义 Opcode

    在 FPGA 中通过扩展指令集来加速计算过程,即将某些函数以CPU指令的方式来执行。然后通过将他们用 C 语言进行...

  • GPU加速——OpenCL学习与实践

    原文首发于公众号「3D视觉工坊」:GPU——OpenCL学习与实践; 参考刘文志等所著《OpenCL异构并行计算》...

  • OpenCL架构

    1 异构计算、GPGPU与OpenCL OpenCL是一个通用的标准,由很多公司和组织共同发起的制定的。它是跨平...

  • JN-MINI5728 opencv 使用opencl加速

    匠牛社区JN-MINI5728使用OpenCL加速OpenCV 加入头文件#include "opencv2/co...

网友评论

      本文标题:随笔 | FPGA上利用OpenCL加速科学计算stencil

      本文链接:https://www.haomeiwen.com/subject/jhzbmktx.html