Можно ли рекомендовать инструмент профилирования производительности с хорошей поддержкой F #?
Я использовал профилировщик Visual Studio 2010, но Ive обнаружил несколько проблем при использовании F #. Это больше похоже на Im профилирование байтового кода после отражения, чем исходный F #.
Например, при профилировании следующего немного надуманного примера:
let Add a b =
a + b
let Add1 = Add 1
let rec MultiAdd count =
match count with
| 1 -> 1
| _ -> (Add1 1) + (MultiAdd (count - 1))
MultiAdd 10000 |> ignore
Я получаю следующее дерево вызовов:
Когда я просматриваю Microsoft.FSharp.Core.FSharpFunc`2.Invoke(0) в функции Подробности, я вижу:
Я понимаю, что то, что я вижу, основано на базовой реализации скомпилированного кода, и хотя я могу следовать за ним, это сложно.
Есть ли у кого-нибудь опыт использования других инструментов профилирования с F #, и они лучше выполняют сопоставление с исходным кодом F #?