我的应用第三次获得df.values*df.index.get_level_values(1)[:,None]
Out[177]: Int64Index([[10, 0, 10], [0, 0, 0], [80, 80, 80]], dtype='int64')
pd.DataFrame(df.values*df.index.get_level_values(1)[:,None],index=df.index,columns=df.columns)
Out[181]:
X Y Z
A 10 10 0 10
B 50 0 0 0
C 80 80 80 80
。崩溃日志没有帮助(我已将其符号化,但是它们不包含任何打印日志...)。
在Binary Rejected
,iPhone 6s
和iPhone X
上运行良好
我正在iPad Pro 12.9
上以应用程序目标为iOS 12
进行测试
由于iOS版Metal无法在模拟器中运行,因此我尚未在iOS 11
上进行过测试
所以我得到了Crashlytics并获得了iOS 11
键的一些信息:
... Error Domain = AGXMetalA8X代码= 3“功能...使用的语言版本为2.1与此操作系统不兼容。” ...
它发生在运行crash_info_entry_0
的{{1}}
所以我想问题是iPad Air 2 (A8)
不支持金属iOS 11.4.1
如何将语言版本更改为iOS 11
?
更新1:
检查我的金属库后,确实确实有一个目标language version 2.1
。在目标为2.0
的情况下运行良好。我现在已经将Metal Lib目标更改为iOS 12
,希望也能更改Metal Language版本...
我希望编译器或App Store上载器能够抓住这一点。
更新2:
成功了!更改Metal Lib的iOS版本目标也会更改Metal Shader Language版本。
答案 0 :(得分:2)
在包含金属代码的目标中,有一个名为“金属语言修订版”的构建设置(实际键为MTL_LANGUAGE_REVISION
,有效值包括Metal12
和Metal20
,分别对应于语言版本分别为1.2和2.0),允许您指定首选的MSL版本。如果未设置,则此设置选择适合当前SDK和部署目标的默认值,在您的情况下似乎过于激进了。如果您不使用MSL 2.1功能,则可以在目标设置的“构建设置”部分中将其明确设置为“金属2.0”。