我试图开发一个简单的应用程序,用于使用iOS Metal Framework在GPU上解决数独问题。
我正在按照此博客文章中的说明进行操作:
http://memkite.com/blog/2014/12/15/data-parallel-programming-with-metal-and-swift-for-iphoneipad-gpu/
我在这里将代码版本化:
https://github.com/mateuszbuda/Sudoku
(在编写此问题时,HEAD是commit c3e06e0)
而且我在打电话时遇到错误
newComputePipelineStateWithFunction
那是在ViewController中设置MTLDevice时(第95行):
https://github.com/mateuszbuda/Sudoku/blob/c3e06e0e1edc724eea20962f32e49f0df8143b7d/Sudoku/ViewController.swift
我得到的错误是:
Error Domain=AGXMetal Code=1 "Compiler encountered an internal error"
我在装有iOS 8.1.3的iPhone 6 Plus上运行它
有人知道什么会导致我得到错误吗?
最佳答案
您正在经历《 Metal 》中未完成的事情之一。错误说“内部”的原因是因为这是由编译器引起的编译器错误。不是你。试试这个:
现在构建并运行,您应该一切顺利。
任何发现此错误的人都要确保将某种错误报告发送给Apple,以便他们可以正确调试它并在下一版Xcode中对其进行修复。
关于iOS Metal : Unable to create compute pipeline state with function,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29229270/