我正在尝试将 PyStan 集成到我的工作流程中,但仅编译一个看似简单的模型可能需要 10 多分钟。
一旦模型完成,这种缓慢的编译时间就不应该成为问题。但是对于开发来说,更快地迭代小更改会很好。也许删除编译器优化以加快编译时间是有意义的。
在网上搜索,我发现了两个相关的讨论线程:
- https://github.com/stan-dev/pystan/issues/214
- https://discourse.mc-stan.org/t/why-is-it-so-slow-for-stan-to-compile-model/6004
两者都在讨论引入自定义编译器标志的选项。具有此功能的 PR 已合并,StanModel
现在公开extra_compile_args
但它的行为并不像预期的那样。我在这里查看了源代码,它实际上只是添加了额外的编译器选项。它不会覆盖或删除现有的。所以代码总是会被编译-O2
如何影响 PyStan 中 stan 模型的编译,以降低性能换取更快的编译速度?