著者
江藤 正通 堀場 匠一朗 浅井 宏樹 津邑 公暁 松尾 啓志
雑誌
情報処理学会論文誌コンピューティングシステム(ACS) (ISSN:18827829)
巻号頁・発行日
vol.5, no.5, pp.55-65, 2012-10-15

マルチコア環境における並列プログラミングでは,メモリアクセスの調停には一般にロックが用いられてきた.しかしロックを使用する場合,デッドロックの発生や並列性の低下などの問題がある.そこでロックを用いない並行性制御機構として LogTM が提案されている. LogTM では possible_cycle というフラグを用いて競合を解決する.しかし,この競合解決手法では starving writer が発生し,長期にわたるストールや競合の繰返しにより性能が大きく低下してしまう.そこで本稿では, starving writer の解決手法を提案する.提案手法の有効性を検証するためにシミュレーションによる評価を行った結果,既存の LogTM に比べて最大で 18.7%,平均で 6.6% の性能向上が得られることを確認した.
著者
堀場 匠一朗 江藤 正通 浅井 宏樹 津邑 公暁 松尾 啓志
雑誌
情報処理学会論文誌コンピューティングシステム(ACS) (ISSN:18827829)
巻号頁・発行日
vol.5, no.5, pp.43-54, 2012-10-15

マルチコア環境における並列プログラミングでは,共有メモリへのアクセス制御にロックが広く用いられてきた.しかし,ロックには並列性の低下やデッドロックの発生などの問題がある.そこで,ロックを用いない並行性制御機構として,トランザクショナル・メモリが提案されている.このハードウェアによる一実装である LogTM においては, possible_cycle と呼ばれるフラグを用いてデッドロックの発生を検出する.しかしこの手法では,デッドロックの判定に偽陽性が存在し,アボートが過剰に発生する可能性がある.そこで本稿では, 3 者以上のトランザクション間の依存関係を考慮することでデッドロックを検出可能とする手法を提案し,さらに適切なアボート対象を選択する手法も検討する.シミュレーションによる評価の結果,提案手法によりアボートの発生が抑制され,ログの書き戻しコストなどが削減されることで,最大 31.5% の高速化を確認した.