調査メモ: profiler で pkg/el と pkg/tinymarkdown のどこが重いか見る #
pkg/el と pkg/tinymarkdown の速度を profiler で見て直す取り組みの記録。言語ごとに分けて書いている。対象はこの 2 つのパッケージだけで、ブログ全体や Workers の側(Static Assets、JSPI、アダプター)には広げていない。
- Go 版: ベンチを足し、pprof で確保と走査を見て直した。API の変更込みの実験(
Inlineの構造体化、elのライターの変更)もここに追記している。 - MoonBit 版:
moon benchで前後を取り、perfとaddr2lineで内訳を見た。Go 版で効いたところ(セル、インラインの走査、タグと属性の連結)をなぞり、行とセルをStringViewのまま引き回した。 - MoonBit の profiler の使い方:
moon run --profile/moon test --profileの仕組み、生成されるファイル、結果の読み方を、その 1 枚で完結するように書いたガイド。この環境のperfでは集計が空になる理由と、そのときの代替手順(perfとnmで self time を取る)も入れてある。