首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图像处理以外的GPGPU应用程序?

图像处理以外的GPGPU应用程序?
EN

Stack Overflow用户
提问于 2012-07-21 13:53:00
回答 3查看 1.2K关注 0票数 0

我正在寻找一些cpu应用程序,可以移植到gpgpu,以获得更好的效率。除了图像处理领域,gpgpu还能用在什么地方?这实际上是为了我的研究生项目。

EN

回答 3

Stack Overflow用户

发布于 2012-07-21 14:37:06

GPU计算引擎的专用处理体系结构对于任何数据处理问题都很有用,在以下情况下:

  1. a non-trivial of data
  2. a non-trivial to can on the data的每个元素,
  3. 计算每个输出元素所需的输入数据适合GPU内存,或者可以设计为在需要时到达GPU内存。

如果计算可以同时在所有数据元素上独立执行,这将有所帮助,但这并不是严格要求。

图像处理恰好是这种情况的一个例子-处理有限(但大量)的像素,并且可以在每个像素上并行执行许多图像算法。

其他例子包括:广义信号分析,如处理音频信号。图像处理只是信号分析的一种特殊形式。模式识别,其中的大部分挑战是从噪声中分离出信号。语音识别,有人吗?三维表面匹配,比如根据有机化合物的化学键的弯曲角度计算出它们的形状,或者计算出两种有机化合物是否可能以有趣的方式相互作用(例如,生物受体)。各种物理模型(碰撞模拟、地震分析等)。当然还有密码学,你总是可以花更多的计算时间一遍又一遍地检查相同的数据。

GPU计算引擎不能很好地处理数据量显著降低要执行的计算的问题。GPU可以很好地处理内存中的内容。将数据移入或移出GPU内存通常是整个计算中最昂贵的步骤,因此您需要确保有足够的计算来“弥补”将数据加载到内存的成本。如果数据太大,内存无法容纳,则必须采用分布式计算策略。

例如,计算be级数据库的主键索引可能不太适合GPU,因为大部分工作可能只是将数据从硬盘转移到内存中。索引计算本身是相当琐碎的,这并不能带来非常有趣的GPU胜利,虽然我确信数据可以被分割成块,并且由大量GPU内核独立索引的块,但数据的可变性可能会阻止GPU充分发挥其能力。(当所有的“桨人”(处理器核心/线程)都朝着同一方向工作时,GPU代码工作得最好--在不同的数据上均匀执行)虽然数据库索引可能会通过使用GPU方法看到一些好处,但它肯定不会像更适合GPU执行模型约束的东西--比如信号处理--比CPU基线有更大的性能提升。

票数 2
EN

Stack Overflow用户

发布于 2012-07-21 14:08:23

暴力破解密码攻击?Whitepixel已经完成了MD5,所有比特币矿工都完成了SHA-256。另一方面,我不知道有任何bcrypt()scrypt()的图形处理器实现,但在该领域工作的学者可能是更好的人问。

票数 0
EN

Stack Overflow用户

发布于 2012-07-21 20:50:53

要找出哪些类型的应用程序非常适合GPGPU,最简单的方法是查看其他组实现的加速比。以下是这些信息的几个链接:

  • NVIDIA's case studies
  • AccelerEyes' case studies

看起来,军事/航空航天、生命科学、能源、金融、制造、媒体和其他一些较小的行业都有强劲加速的例子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11589856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档