6J-08
Pythonインタプリタへのマークスイープ型ガベージコレクタによる参照カウントの除去
広く一般に用いられる Python 言語の処理系 CPython は, 複数スレッド間でメモリのデータ競合を防ぐ戦略として, 同時実行可能スレッド数の制限を行っており, 計算機の計算資源を十分に活用できない. 先行研究では, トランザクショナルメモリ (TM) を用いたメモリの保護を実装することで, 複数のスレッドの同時実行が可能であることが示された. 一方で, CPython が用いる参照カウント方式のガベージコレクタは, TMにおける高頻度なトランザクションの失敗を招くため, これを軽減する必要がある. 本研究では, マーク&スイープ方式のガベージコレクタを実装し, 既存の参照カウントを除去する手法を提案する.