RISC-Vの基本的なUser-Level ISAの実装が進んできて、Coremarkが正常にシミュレーションできるようになった。MIPSのシミュレータと合わせて、命令セット的にどちらが良いかを見てみる。
MIPSと比較した場合は以下のとおり。start_time()からstop_time()までの命令数を計測。
命令セットだけだと、6%ほど効率性でMIPSが稼いでいる計算になる。命令効率的にはまだまだRISC-Vは発展途上、というか、そこはたぶん狙っていないのだと思う。 それよりも、MIPSよりもアウトオブオーダの実装のしやすさとか、そのあたりで周波数を稼ぎ、実行効率を高める狙いのほうが強いのだろう。
事実、今回MIPSの自作シミュレータを改良したが、かなりのデコード部分で簡単化をすることができ、また実行に関してもレジスタリードの規則などはかなり簡単なものに抑えられている。 MIPSでは movn/movp命令などで3オペランドリードが存在し、実装がかなり大変だったが、そういうややこしい命令はRISC-Vには入っていない。