当前位置:  开发笔记 > 前端 > 正文

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

如何解决《我可以使用Metal在GPU上运行算法吗?》经验,为你挑选了2个好方法。

我正在使用最小编辑距离算法来确定两个字符串的相关程度.我已经实现了它在CPU上运行,当你有数百个字符串时它很有用,但是当你多次比较数千个字符串时,它会减慢速度.所以我认为卸载GPU可能很有用,因为它可以同时执行多次比较.

这可能吗?我遇到的金属资源主要是图形,没有帮助.或许他们是?



1> warrenm..:

您想要做的事情是可能的,至少对于某些问题规模而言,但并不是特别简单.您需要做的是以可在GPU上运行的方式表达算法,在iOS上运行,这可能意味着使用Metal.具体来说,您需要使用Metal着色语言编写一个或多个计算内核,以实现最小编辑距离算法,然后使用Metal计算命令编码器对其进行调度.Web上有Metal的计算编程有几种资源.

我不知道MED的现有Metal实现,但至少有一个CUDA实现,你可以在这里阅读GPU上更长的MED解释.



2> repoguy..:

除了@warrenm的回答,你需要编写内核函数或其中的几个.有很酷的金属教程网站:http://metalbyexample.com,Apple文档也有一些内容:https://developer.apple.com/library/content/documentation/Miscellaneous/Conceptual/MetalProgrammingGuide/Compute-Ctx/Compute -Ctx.html

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

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有