Vim の設定ファイルを、パフォーマンスの向上と記述の曖昧さをなくすなどの目的で作られた vim9script に書き換えてみた
計測方法
vim -g --startuptime time.log
を実行して速度を比較してみた
対象ファイルいる
vim9script に書き換え比較したのは次のファイル
- ~/.vim/vimrc
- 殆どは set コマンドと若干の map
- ~/.vim/plugin/set.vim
-
- プラグインの設定ファイル
- 多くは map と遅延読み込みのための autocommand
- ~/.vim/gvimrc
-
- タブライン
- マウスのマッピング
- フォントやウィンドウサイズ
結果
次表が 5 回の実行結果とその平均時間 (ms) で、それぞれファイル毎に左が処理時間、右がそれから他のファイルを読み込んで処理した分を除いた時間
種類 | ~/.vim/vimrc | ~/.vim/plugin/set.vim | ~/.vim/gvimrc | |||
---|---|---|---|---|---|---|
scriptversion 4 | 11.267 | 10.286 | 14.630 | 8.992 | 0.620 | 0.620 |
12.048 | 10.990 | 14.739 | 9.000 | 0.625 | 0.625 | |
12.210 | 11.140 | 14.822 | 9.129 | 0.643 | 0.643 | |
13.181 | 12.115 | 17.061 | 11.265 | 0.652 | 0.652 | |
13.630 | 12.615 | 18.975 | 9.145 | 0.890 | 0.890 | |
12.4672 | 11.4292 | 16.0454 | 9.5062 | 0.686 | ||
vim9script | 10.766 | 9.810 | 14.818 | 9.082 | 0.611 | 0.611 |
11.114 | 10.162 | 14.976 | 9.245 | 0.615 | 0.615 | |
11.143 | 10.158 | 15.020 | 9.102 | 0.621 | 0.621 | |
11.271 | 10.256 | 15.503 | 9.588 | 0.629 | 0.629 | |
11.325 | 10.306 | 15.861 | 9.202 | 0.648 | 0.648 | |
11.1238 | 10.1384 | 15.2356 | 9.2438 | 0.6248 |
見ての通り、確かに 5~10 % 程度の速くなっているが、この様な単純な設定ではヘルプに
vim9script の主な目的は劇的な性能の向上です。これは、コマンドをより効率よく実行できる命令にコンパイルすることで実現しています。これにより、10倍から100倍の実行速度の向上が期待できます。
と有るコンパイルによる効用が発揮できず激的な効果は期待できないようだ
ただ他にも何度か実行してみると vim9script のほうが極端に遅くなることが少ない印象が有る