エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
mrubyのContextThreading化 その5 最終回 - mirichiの日記
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
mrubyのContextThreading化 その5 最終回 - mirichiの日記
こまごまとした修正と若干のパフォーマンスチューニングを入れて、O3コンパイルでmake testを通過できる... こまごまとした修正と若干のパフォーマンスチューニングを入れて、O3コンパイルでmake testを通過できるようにしておいた。 https://github.com/mirichi/mruby/tree/ct この時点でAOベンチ(O3コンパイル)比較は 元のmruby:6分8秒(368秒) ContextThreading:6分9秒(369秒) となり、俺程度の技術力ではContextThreadingの効果は見込めないという状態である。 ディスパッチ関連で無駄があるとすれば間接分岐になってしまっているあたりだが、これをcall-retに再修正するためには例外の機構をごっそり入れ替える必要がある。具体的にはスタックの操作が発生するからsetjmpをメソッド呼び出しごとに入れるか、例外をインラインアセンブラで処理するか、という感じになるだろう。前者は恐らく大変遅いが、後者は大変手間である。