title: CbCによるMoarVMの改良 author: Takahiro Shimizu profile: lang: Japanese # 研究目的 - Perl5の後継言語として開発されているPerl6はMoarVMと呼ばれるVMを搭載している. - Perl6はMoarVM,JVM,JavaScript上で動くRakudoと呼ばれる実装と,コンパイラ開発者用のサブセットであるNQPが主な実装となっている. - 現在Perl6及びMoarVMは全体的な速度がPerl5と比較し低下しており,実務として利用できるレベルに達していない. - さらにPerl6の実装自体巨大なcase-switch文など見通しが悪くなっている. - この問題を解決するために現在当研究室で開発している継続を中心にしたContinuation based Cを用いて改良を行う - CbCの設計理念からVMの実装と親和性が高い事も推測できる為,実際にCbCを用いてどのようにVMが実装できるかを検証する # 今週の進捗 * 院試の勉強していました * 来週なんで頑張ります * 3GBのファイルでログアナライザーの計測しました # 計測(3GB) * Perl5 * 41.35s * Ruby * 574.52s * Python * 101.16s * Java * 48.85s * Perl6(Moar) * 2331.08s * Perl6(JVM) * 1665.56s # 参考(231K) * Perl5 * 0.04s * Ruby * 0.15s * Python * 0.06s * Java * 0.27s * Perl6(Moar) * 0.86s * Perl6(JVM) * 21.48s