@techreport{oai:ipsj.ixsq.nii.ac.jp:00217223, author = {灘, 洋太郎 and 小泉, 透 and 杉田, 脩 and 塩谷, 亮太 and 門本, 淳一郎 and 入江, 英嗣 and 坂井, 修一}, issue = {3}, month = {Mar}, note = {命令間の偽の依存関係は,Out of Order スーパースカラプロセッサの効率的な命令発行を妨げる要因の一つである.STRAIGHTは命令間の偽の依存関係が発生しない命令セットアーキテクチャであり,Out of Order スーパースカラプロセッサをスケーラブルかつ省電力に構成することができる.STRAIGHT はオペランドを命令間距離で指定する特色を持っており,この性質から派生する様々な制約を解いてコードが生成される.C 言語ベンチマークを用いた性能評価では,STRAIGHT 特有の最適化によって RISC-V と同等の性能を実現できることが分かっている.しかし,より複雑な言語において,STRAIGHT 固有の制約が命令数や実行時の性能にどのような影響を与えるのかは未知数であった.本研究ではこれを明らかにすべく,STRAIGHT 用 C++ コンパイラの開発,SPEC CPU の C++ 言語ベンチマークに対する性能評価を行った.その結果,C++ 言語に特有な性能低下はみられなかった.一方で,C 言語と同様に命令間距離の調整のための命令によって,性能が低下していることが分かった.}, title = {STRAIGHTアーキテクチャにおけるC++コンパイラ開発と性能評価}, year = {2022} }