我们有一个更大的C-程序编译与emscripten (和ASYNCIFY启用)。该程序运行良好的Chrome在Mac上,在Windows上的页面出现,但不断吃的内存高达6GB,然后页死亡“啊,快照!”。但是,如果我事先打开了开发人员工具,然后在地址栏中键入应用程序url,那么应用程序将无问题地运行(在400 in的范围内)。Windows上的MS也是一样的.这让人想起了什么吗?在dev控制台中,到目前为止还没有什么是可见的,可能导致问题的原因。任何提示如何找到原因将不胜感激。
发布于 2022-09-05 09:37:20
使用-O1
编译时确实出现了上述问题(我们不得不选择-O1
,因为在没有优化的情况下,我们确实遇到了另一个怪癖:
failed to asynchronously prepare wasm: CompileError: WebAssembly.Module doesn't parse at byte 4: Function's number of locals is too big 108469 maximum 50000, in function at index 4350 [Warning] Aborted(CompileError: WebAssembly.Module doesn't parse at byte 4: Function's number of locals is too big 108469 maximum 50000, in function at index 4350)
,参见我的另一个问题,too many locals to run liveness analysis
)
最后我们用-Os
进行编译,到目前为止,这确实解决了两个问题。然而,使用诸如矿场这样的优化选项来操作并不是很令人满意.
https://stackoverflow.com/questions/71510857
复制相似问题