Honda の VTEC エンジンというのは、クルマ業界ではかなり有名なエンジンである。何が凄いかというと、それまでのエンジンは「吸気」「排気」を行うバルブと呼ばれる弁の開きが常に一定だったので、低速域から高速域まで全域に渡って性能を出すことが難しいというか、ほとんど不可能だった。
本来は低回転では、少なめのバルブの開きにして、高回転では多めのバルブの開きにできると良いのだが、Honda が初めて VTEC エンジンで回転数によってバルブの開きを変えていく仕組みを完成させた。今ではトヨタなどの他社でも同様のエンジンが採用されている。
ソフトウェアも同じようなことが言えて、データが密(Dense)な場合と疎(Sparse)な場合では、適切なデータ構造や計算方法も異なる。よって入力データの特性によって、この両者を切り替えようという研究は各方面で行われているが、SDPA でも 1997 年に、1: Dense, 2: ちょっと Dense, 3: Sparse の三つにデータ構造と計算方法を分けて、入力データの特性(サイズや非零要素の数など)によって、これらを自動的に切り換えるシステムを内蔵させた。数理計画問題に対するソフトウェアではこのような仕組みを採用したのは、かなり初期のものであったように思う。後から見ると元の発想は VTEC エンジンと結構似ていることが分かる。
本来は低回転では、少なめのバルブの開きにして、高回転では多めのバルブの開きにできると良いのだが、Honda が初めて VTEC エンジンで回転数によってバルブの開きを変えていく仕組みを完成させた。今ではトヨタなどの他社でも同様のエンジンが採用されている。
ソフトウェアも同じようなことが言えて、データが密(Dense)な場合と疎(Sparse)な場合では、適切なデータ構造や計算方法も異なる。よって入力データの特性によって、この両者を切り替えようという研究は各方面で行われているが、SDPA でも 1997 年に、1: Dense, 2: ちょっと Dense, 3: Sparse の三つにデータ構造と計算方法を分けて、入力データの特性(サイズや非零要素の数など)によって、これらを自動的に切り換えるシステムを内蔵させた。数理計画問題に対するソフトウェアではこのような仕組みを採用したのは、かなり初期のものであったように思う。後から見ると元の発想は VTEC エンジンと結構似ていることが分かる。