gpt4 book ai didi

haskell - 分析多态性的成本?

转载 作者:行者123 更新时间:2023-12-02 07:51:06 25 4
gpt4 key购买 nike

我有一个“不必要”多态的代码库,因为几乎每个函数都以某种方式多态(为什么不呢,当你可以的时候?),但最终程序使用的函数只有少数具体类型。我已经开始花费一些时间投入 SPECIALIZEINLINABLE 编译指示来尝试降低所有这些多态性的性能成本,但考虑到我的代码大小,它非常受欢迎和想念。有没有办法通过分析来判断每个函数在运行时“做多态性需要的事情”花费了多少时间?

(注意:我问这个问题时并不知道这样的事情在技术上是否可行,或者“多态性需要的东西”是否有足够明确的定义)。

最佳答案

确定成本的过程是:

  • 构建基准 - 使用标准或其他测量工具
  • 配置文件 - 具有 ghc 的分析支持
  • 读取核心 - 如果性能原因不明显,则使用 ghc-core

通常您会发现某些操作太慢;通过分析进行编译并准确确定哪些组件成本高昂,然后检查代码以对其进行优化(例如,通过专门化数据结构或函数、更改算法或进行其他更改)。

对于性能关键的工作,您将去检查核心,看看微调编译器是否有帮助。

关于haskell - 分析多态性的成本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11538977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com