2024年06月12日

【薙刀式】最近エミュレータが遅く感じる

2種類のスペックのPCを交互に使ってるからか、
エミュレータの遅延を感じるようになってしまった。


2種のスペックのPCだと、
IMEの動作速度にも差があるのがわかる。
印字速度が一文字や半文字くらい遅く感じる。

スペース2回以降候補ウィンドウが立ち上がるまでの、
ミリ秒の違いははっきり感じる。

エディタで書きまくって、
たとえば10万字あるときと、
新規ファイルでは動作の重さが異なることもわかってるので、
新規ファイル同士で比べてみたが、
うーん遅延、という感じでわかってしまう。


電話がミリ秒遅れて返事が返ってくる感じ。
国際電話をしたことがないが、
こんな感じだろう。

自分の手の中に支配が及ばない感じが、
なんかムカつくなー。



エミュレータの遅延分の議論はあまりないけど、
なんだかんだ言って僕は最初からそれを感じてた。
カタナ式や薙刀式を使った後、
突然エミュレータなしでqwertyを使うと、
そのレスポンスの速さに驚くことが多いのだ。

僕は競技タイピングには興味がないが、
「アイデアが蒸発することを避けるほど速く打ちたい」が、
タイピング研究の最大の動機なので、
MS-IME+DvorakJに、
限界が来ているのだろう。

対処法はPCスペック上げるしかないんだろう。

たかがテキストだから、
ミドルスペックでええやろ、
と判断した昔の俺よ。
動画ソフトが走るプロスペックPCだと、
テキストは快適になると教えてやりたい。

少なくとも僕はそれを感じる程度の指がある。
なにせ映像のプロなので、
1F=1/30秒の差はすぐわかるし…


めちゃくちゃ不満ではない、
というのが余計厄介。
うすーくイライラするのが難しいところ。

もっと効率のいいIME…Atokしかないのか…
変換速度やレスポンスを知りたいんだよな…
どっちがどれだけ速いのか、体験するしかないか。
Google日本語入力は、
遅くて僕のPCではだめでした。
posted by おおおかとしひこ at 19:28| Comment(4) | TrackBack(0) | カタナ式 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
エミュレータの遅延ではなく、同時打鍵ロジックによる遅延ではないですか。

f打鍵時には「か」、fj同時打鍵時には「が」が出力されますが、単にfを打鍵された場合には、その直後にjが打鍵される可能性を考えて、かな文字を確定して出力するまでに数十ミリ秒だけ待つ必要があります。この待ち時間は、ユーザには「遅延」として知覚されるかとおもいます。

Posted by Ken'ichiro Ayaki at 2024年06月12日 23:21
>Ken'ichiro Ayakiさん

同じものをスペックの異なる二つのPCで走らせて違いを体感してるので、
エミュレータの実行速度と関係すると思われます。

また、薙刀式の同時打鍵ロジックは相互シフト方式で、
あるキーを離した時に他のキーがまだ押されてるかどうかで判定するので、
待つことは原理的にないはずです。
そもそもその数10〜100ミリ秒の「待つ」が嫌になったので、
このようなロジックに工夫したので。

さらにDvorakJは特殊で、
相互シフト方式で「これ以上の同時定義がない(一意に決まった)」
と判断したら離しを待たずして、
押した状態でも出力するので、
わりと速度感はあるはずなんです。

qmk薙刀式の方が速いので、
AutoHotKeyの実行速度のレベルかと思われます。
Posted by おおおかとしひこ at 2024年06月13日 00:37
DvorakJ マニュアルの該当部分はこちらですね。すると、同時打鍵ロジックによる遅延ではないようです。

>キーの押し上げを感知する処理
>実験段階ではありますが、DvorakJ では、従来のソフトウェアのようにキーを押し上げる動作を感知することもできます。
>キー配列の設定ファイル中、-1E のような記述を +1E と書き換えると、そのキーの押し上げを監視するようにします。

スペックの異なる二つのPCでDrorakJを走らせて違いを体感できるというのは、単純なプログラムの実行速度の可能性もありますが、所望のタイミングでタイマーイベントが起動されていない可能性もあるのとおもいます。詳しくは DvorakJ のコードを更に解析する必要があります。

なお、qmk Firmwareでの応答が速いのは、CPUがハードウェアをほぼ占有でき、正確なタイミングでイベントを起動できるためではないでしょうか。

Posted by Ken'ichiro Ayaki at 2024年06月13日 19:01
>Ken'ichiro Ayakiさん

ためしに、
あまり使わない外来語や小書き、
編集モードなどを削除して、
半分くらいの定義量で実行してみると、
体感で反応速度が変わりました。

なので単純に実行速度の問題かなあと思います。
定義量が多いほどO(n^2)くらいでチェック量が増えるのかな。
なんとなくそんな感じです。

まあそれが分かるほど自分の打鍵速度が上がってきたということでしょう。

さらにここからDvorakJを落として、
MS-IMEのみで実行すると、
やはり少し速くなった感覚があります。
qwertyで、押した時に文字が出るため、
純粋な比較ではないですが、
エミュレータがミリ秒程度足枷をかけてることは、
なんとなくわかりますね。
自分の動作とのズレだから、体感しやすいのかもです。


qmkはまさにそこがいいところですね。
体感で単独MS-IME程度の速度です。
Posted by おおおかとしひこ at 2024年06月13日 19:47
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック