はじめに きっかけは形態素解析器 kagome にいただいた Issue です. github.com 端的に言うと, 入力文字列に対して,前から1文字ずつずらしながら辞書引きを繰り返して,可能性のある形態素をすべて洗い出すんですが,その際に辞書を CommonPrefixSearch するメソッドでメモリをアロケートしすぎじゃないか? というお問い合わせです. たしかに 800MB くらいアロケートしてるように見えます.ひえー というわけで調査. 道具は揃っている golang では pprof が使えます.これで速度パフォーマンスとメモリ使用状況が確認できます. 使い方は,KLabGames Tech さんがまとめてくださっているすばらしい記事がありますので,こちらを参照ください. Go pprof 入門編 (CPU Profile とコマンドラインツール) : KLabGames T