Skip to main content
QUICK REVIEW

[論文レビュー] Communication-avoiding micro-architecture to compute Xcorr scores for peptide identification

Sumesh Kumar, Fahad Saeed|arXiv (Cornell University)|Jul 31, 2021
Advanced Proteomics Techniques and Applications参考文献 21被引用数 2
ひとこと要約

この論文では、オンチップブロックRAMに全実験スペクトルをキャッシュし、カスタムペプチドブロードキャストバスを用いて両側のデータ再利用を可能にする、通信を回避するマイクロアーキテクチャを提案している。この設計により、DRAMアクセスを600倍削減し、16GBメモリを搭載した3.6 GHz Intel i7-4970プロセッサ上でCPUベースのCrux実装と比較して24倍の高速化を達成した。

ABSTRACT

Database algorithms play a crucial part in systems biology studies by identifying proteins from mass spectrometry data. Many of these database search algorithms incur huge computational costs by computing similarity scores for each pair of sparse experimental spectrum and candidate theoretical spectrum vectors. Modern MS instrumentation techniques which are capable of generating high-resolution spectrometry data require comparison against an enormous search space, further emphasizing the need of efficient accelerators. Recent research has shown that the overall cost of scoring, and deducing peptides is dominated by the communication costs between different hierarchies of memory and processing units. However, these communication costs are seldom considered in accelerator-based architectures leading to inefficient DRAM accesses, and poor data-utilization due to irregular memory access patterns. In this paper, we propose a novel communication-avoiding micro-architecture to compute cross-correlation based similarity score by utilizing efficient local cache, and peptide pre-fetching to minimize DRAM accesses, and a custom-designed peptide broadcast bus to allow input reuse. An efficient bus arbitration scheme was designed, and implemented to minimize synchronization cost and exploit parallelism of processing elements. Our simulation results show that the proposed micro-architecture performs on average 24x better than a CPU implementation running on a 3.6 GHz Intel i7-4970 processor with 16GB memory.

研究の動機と目的

  • 質量分析を用いたプロテオミクスにおけるXcorrスコア計算におけるメモリ階層間の通信コストの高い問題に対処すること。
  • 全実験スペクトルのキャッシュと効率的な入力再利用により、DRAMアクセスを最小限に抑えること。
  • 同期遅延を低減し並列処理を向上させるために、カスタムペプチドブロードキャストバスとバス仲裁方式を設計すること。
  • 特にメモリバウンドワークロードにおいて、CPUベースの実装(例:Crux)と比較して顕著なパフォーマンス向上を達成すること。
  • SEQUESTの中心的であるメモリ集約型ドット積計算を高速化する上で、スケーラビリティと効率性を示すこと。

提案手法

  • 全実験スペクトルをキャッシュする2kBのブロックRAMキャッシュを実装し、重複するDRAMアクセスを削減した。
  • 入力ローカリティを向上させるために、ペプチドデータベースを事前にソートし、バイナリサーチと候補ペプチドのプリフェッチを可能にした。
  • すべての処理要素が同じペプチドデータを繰り返しアクセスせずに再利用できるように、専用のペプチドブロードキャストバスを設計した。
  • 処理要素間の同期遅延を最小限に抑えるために、先着順(FCFS)のバス仲裁方式を採用した。
  • メインメモリからFPGAのオフチップメモリへのデータ転送を実現するため、PCIe DMAを介してホストCPUとマイクロアーキテクチャを統合した。
  • すべてのレベルでデータ移動を最小限に抑え、データ再利用を最大化することで、ドット積計算の最適化を図った。

実験結果

リサーチクエスチョン

  • RQ1カスタムマイクロアーキテクチャは、ペプチド同定のためのXcorrスコア計算におけるDRAMアクセスのオーバーヘッドを低減できるか?
  • RQ2オンチップキャッシュによる実験スペクトルのキャッシュは、メモリバウンドプロテオミクスワークロードにおける通信コストをどの程度低減できるか?
  • RQ3専用ペプチドブロードキャストバスは、ペプチド候補の並列処理におけるデータ再利用と同期遅延の低減にどの程度寄与するか?
  • RQ4キャッシュサイズと処理要素数を変化させた場合、通信と計算のボトルネックにどのような影響が生じるか?
  • RQ5提案されたアーキテクチャは、CruxのようなCPUベースのソフトウェアと比較して顕著な高速化を達成できるか、スケーラブルであるか?

主な発見

  • 提案されたマイクロアーキテクチャは、16GBメモリを搭載した3.6 GHz Intel i7-4970 CPU上でCruxを実行する場合に、平均24倍の高速化を達成した。
  • 2kBのオンチップキャッシュにより、キャッシュなしのアプローチと比較して、平均的なDRAMアクセスを600倍削減した。
  • 1PEあたりのI/O時間は、512Bキャッシュの場合1.01秒から2kBキャッシュの場合0.86msに低下し、1170倍の短縮を達成した。
  • キャッシュサイズが2kB未満の場合、処理要素数が増えると同期待機時間が指数関数的に増加するが、2kBおよび4kBキャッシュでは2.2msで安定した。
  • 16個の処理要素まででほぼ線形の高速化を達成し、処理要素数が増えるにつれて合計処理時間が減少した。
  • 32個の処理要素まででスケーラビリティと効率性を示し、さまざまなプリクラーサー質量窓の許容誤差において一貫したパフォーマンス向上を達成した。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。