コンピューターを高速に動作させるための工夫のひとつに、「投機的実行」というものがあります。
コンピューターのプログラムは高速で「分岐」を起こしながら、実行されています。
その高速で実行されているプログラムの流れが、予測できないキー入力などでプログラムの流れが変わると、コンピューターの中では様々な予測不能な「分岐」が起きてしまいます。
その予測不能な「分岐」の影響でコンピューターのプログラム実行速度は低下していきます。
この予測不能な「分岐」の影響を極力減らす方法として、「投機的実行」という機能が組み込まれています。
ここで、人の日常生活を例にとり、極端に簡単な説明をします。
通常の実行とは、人が何か問題に取り組むために一つの仮説を立てて実行します。
その仮説が誤りだとわかったところで、また別の仮説を立てて別の実行を行います。
これでは一つひとつ仮設・実行を行っているので時間がかかります。
「投機的実行」とは、考えられる仮説を同時に実行するということです。
そして、複数の仮説の中で、途中に誤りだと分かったところで、うまくいかない仮設を捨てながら進んでいくというプログラムの手法です。
この概念を、人生に応用するなら、人間の極端な“黒か・白か?”というはっきりさせたい二択の選択癖をやめることです。
二つの仮説を同時進行させ、誤りがわかるまであいまいなまま成り行きに任せ、結果を見守るということになります。