首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我可以使用Metal在GPU上运行算法吗?

我可以使用Metal在GPU上运行算法吗?
EN

Stack Overflow用户
提问于 2017-01-19 01:25:07
回答 2查看 1.4K关注 0票数 7

我使用最小编辑距离算法来确定两个字符串的关联程度。我已经实现了它在CPU上运行,当你有数百个字符串时,它工作得很好,但当你多次比较数千个字符串时,它是一个减慢的来源。因此,我认为将负载卸载到GPU上可能会很有用,因为它可以同时执行多个比较。

这个是可能的吗?我遇到的Metal资源主要是用于图形,这对我没有什么帮助。或许他们就是呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-19 01:48:10

您想要做的事情是可能的,至少对于特定的问题大小是可能的,但这并不是特别简单。你需要做的是以一种可以在图形处理器上运行的方式来表达算法,在iOS上,这可能意味着使用金属。具体地说,您需要使用Metal shading语言编写一个或多个实现最小编辑距离算法的计算内核,然后使用Metal计算命令编码器分派它们。Web上有几个关于使用Metal进行计算编程的资源。

我不知道现有的金属实现的MED,但至少有one CUDA implementation,你可以在图形处理器here上阅读更多关于MED的解释。

票数 10
EN

Stack Overflow用户

发布于 2017-01-19 04:21:07

除了@warrenm answer之外,你还需要编写一个或几个内核函数。有一个很酷的金属教程网站:http://metalbyexample.com,苹果文档也有相关内容:https://developer.apple.com/library/content/documentation/Miscellaneous/Conceptual/MetalProgrammingGuide/Compute-Ctx/Compute-Ctx.html

https://www.raywenderlich.com上也有一些教程,但它们大多是面向图形的。你也可以查看iOS的GPUImage库,这是一个围绕OpenGL的很酷的包装器,界面很好。也许还可以选择编写将使用OpenGL执行的自定义函数?

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

https://stackoverflow.com/questions/41725737

复制
相关文章

相似问题

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