2024-03-29T18:20:27Zhttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_oaipmhoai:ipsj.ixsq.nii.ac.jp:000290262024-03-29T05:26:34Z01164:02240:02258:02262
SMTプロセッサにおける同期方式の検討Investigation of a Synchronization Method on an SMT Processorjpnhttp://id.nii.ac.jp/1001/00029026/Technical Reporthttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=29026&item_no=1&attribute_id=1&file_no=1Copyright (c) 2005 by the Information Processing Society of Japan東京農工大学大学院東京農工大学大学院東京農工大学大学院東京農工大学大学院東京農工大学大学院東京農工大学大学院東京農工大学大学院笹田, 耕一佐藤, 未来子内倉, 要加藤, 義人大和, 仁典中條, 拓伯並木, 美太郎Simultaneous MultiThreading(SMT)プロセッサは,複数の命令流が計算機資源(各種演算器やキャッシュメモリ)を共有して並列実行することでプロセッサの利用率を向上させる.並列計算では同期オーバヘッド削減が重要であるが,SMT プロセッサでは並列実行する命令流がチップ内にあるということを利用した同期の最適化が可能であり,すでに SMT-block という軽量な同期手法が提案されている.しかし,これを実現するための命令が複雑である点などから,提案されている手法をそのまま適用することは困難である.そこで,本稿ではSMT-block を実現する命令セットについて再検討し,より単純なものにした.また,この機構を利用してさらに同期オーバヘッドを削減する手法であるロック獲得予約を提案する.評価の結果,改良した命令セットでも SMT-block と同様の性能改善が見られた.また,ロック獲得予約を利用した場合,通常の SMT-block を利用したプログラムと比較して最大 6% の性能向上を実現することができた.A Simultaneous MultiThreading (SMT) Processor executes multiple instruction flows in parallel with sharing computing resources such as an execution unit or cache memory. In parallel computation, since it is important to reduce synchronization overhead, SMT-block technique which allows light-weight synchronization has been proposed in an SMT processor. However, it is difficult to implement a processor with an SMT-block scheme because of its complex instructions. In this paper, we propose more simple instructions for synchronization to realize SMT-block. Moreover, we also propose Lock Acquire Reservation to optimize synchronization overhead in an SMT processor. As a result of simulations, we achieve equivalent performance improvement as an SMT-block technique with our instructions. With Lock Acquire Reservation, we can gain performance improvement by 6% than a program using a normal SMT-block.AN10463942情報処理学会研究報告ハイパフォーマンスコンピューティング(HPC)200519(2004-HPC-101)31362005-03-072009-06-30