繁体   English   中英

编译F#报价:表现?

[英]Compiling an F# quotation: performance?

我有一个我操纵的F#引用(我在任何地方添加对象池来回收经常创建和删除的短期对象)。 我想运行结果报价; 现在我使用了F#PowerPack,它提供了将报价转换为表达式树的方法,以及我所运行的委托。 无法访问生成的代码,我想知道:

- 编译代码的性能如何? 是否有一些未被删除的反射层或者它是真正的编译?

  • 我可以看到生成的代码并使用.Net Reflector吗?

谢谢 :)

最后我看,表现非常糟糕,比F#慢50倍,甚至比天真的翻译慢。

坦率地说,我不明白他们为什么不将F#编译器本身暴露为运行时服务(和FSI)。 如果他们做了F#,他们现在会有更好的工具......

编辑:我昨晚对运行斐波那契函数的报价进行了基准测试,实际上是700倍!

这有点没有答案,但是在性能方面,您只能知道您的真正性能要求是什么。 你有特定的目标运行时间吗? 你试过运行编译的报价吗? 它够快吗? 你把它与原生编写的F#函数进行比较了吗?

关于你的上一个问题,我不知道在Reflector中查看内存中程序集的任何简单方法。 但是,F#PowerPack的源代码是可用的,因此您可以阅读它以查看引用的编译方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM