2016-06-16 6 views
0

平均サイズが20GBのような異なるサイズのBAMファイルがあります。一般に、BAMファイルには染色体レコードが含まれています。私は、すべての染色体記録を並行処理することを目指しています。 - 0.3万人が読み込み/記録 にChR2 - 027万の読み取り/記録 など chr25 /にcHRMへ CHR 1:ここではBAMファイル内に並列に処理レコード

BAMファイルがソートされます例です。

私はこれらすべての染色体記録を並列処理することを検討しています。このために私はプロデューサー消費者アプローチを実装しました。待ち行列のサイズを0.1万にすると、キューのサイズを増やすとヒープの問題になります。だからこのアプローチは間違っています。

もう1つのアプローチは、同じファイルを複数回開いて読み込みを行っていますが、IOパフォーマンスの問題があり、それが順番に進んでいます。スレッドがBAMファイルの独自の染色体オフセット範囲を読み取ることで、parallel'yの作業に役立ちますか?

これを並列にするための提案はありますか?

答えて

0

この検討してください:

  1. スレッドプール
  2. を作成するには、場合2からデータ
  3. 繰り返しのチャンクを使用してスレッドプールにタスクを開始
  4. ファイル
  5. からのデータのチャンクを読みますファイル内にデータがあります