著者
橋本高志良 井出源基 山田遼平 堀場匠一朗 津邑公暁
雑誌
研究報告計算機アーキテクチャ(ARC)
巻号頁・発行日
vol.2014-ARC-208, no.22, pp.1-8, 2014-01-16

マルチコア環境では,一般的にロックを用いて共有変数へのアクセスを調停する.しかし,ロックには並列性の低下やデッドロックの発生などの問題があるため,これに代わる並行性制御機構としてトランザクショナルメモリが提案されている.この機構のハードウェア実装であるハードウェアトランザクショナルメモリ (HTM) では,アクセス競合が発生しない限りトランザクションが投機的に実行される.しかし,共有変数に対する複合操作が行われるようなトランザクションが並行実行された場合,その際に発生するストールが完全に無駄となる場合がある.本稿では,このような同一の共有変数に対する Read→Write の順序でのアクセスを検出し,それに関与するトランザクションを排他実行することで,HTM の全体性能を向上させる手法を提案する.シミュレーションによる評価の結果,提案手法により 16 スレッド実行時において最大 72.2%,平均 17.5%の性能向上を達成した.
著者
山田遼平 堀場匠一朗 井出源基 橋本高志良 津邑公暁
雑誌
研究報告計算機アーキテクチャ(ARC)
巻号頁・発行日
vol.2014-ARC-208, no.23, pp.1-9, 2014-01-16

マルチコア環境における並列プログラミングでは,一般的にロックを用いて共有リソースへのアクセスを調停する.しかし,ロックには並列性の低下やデッドロックの発生などの問題があるため,これに代わる並行性制御機構としてトランザクショナルメモリ (TM) が提案されている.これをハードウェアで実現する HTM では,一般的にアクセス競合が発生した場合にトランザクションの実行を停止する必要があるため,一時的に並列度が低下してしまう.そこで本稿では,競合が発生したとしてもトランザクションの実行を停止させず,競合相手がコミットまで到達すると仮定して投機的に実行を継続することで並列度を増大させる手法を提案する.評価の結果,既存手法に比べて,最大 9.63%,16 スレッドで平均 1.74% の実行サイクル数の削減を確認した.