Trimmomatic 処理速度の改善方法
Trimmomatic の処理速度が遅い時にオプション等を見直すことで、処理速度を改善できます。
今回は見直しをすることで効果があった部分を紹介します。
本記事では下記の環境で動作確認を行っています。
- Ubuntu Server 22.04.3 LTS
- Trimmomatic v0.39
Trimmomatic とは
Trimmomatic についての説明は以下の記事に書かれています。
Trimmomatic は Java で書かれているアダプタートリミングツールである。Trimmomatic はアダプターの除去のみならず、リードの末端から一定数の塩基をトリムしたりする、簡単なクオリティフィルタリングも行える。シングルエンドリードのみならずペアエンドリードにも対応している。また、gzip (拡張子 .fq.gz など)や bzip2 (拡張子 .fq.bz2 など)で圧縮されている FASTQ ファイルを展開せずに処理することができる。 生命情報科学
インストール方法はバイナリーファイルをダウンロードする方法か Conda でインストールする方法があります。
-trimlog
オプション
-trilmlog
オプションをつけることでログを出力できますが、筆者の環境では大幅に実行時間が増加することを確認しています。
必要がなければ外すことで改善できるかもしれません。
-threads
オプション
-threads
オプションでスレッド数を指定できます。
PC のスペックに合わせて最適なスレッド数を指定しましょう。
java -jar trimmomatic-0.39.jar PE -threads 12 <input 1> <input 2> <paired output 1> <unpaired output 1> <paired output 2> <unpaired output 2> <step 1> ...
Conda でインストールしている場合は、 バイナリーリリース版に置き換える
Conda で Trimmomatic をインストールしている方は、バイナリーリリース版に置き換えることで改善できるかもしれません。
筆者の環境では以下のような結果を確認しています。
インストール方法 | 実行時間 1回目 | 実行時間 2回目 |
---|---|---|
Conda | 13分59秒 | 12分18秒 |
バイナリーリリース版 | 10分33秒 | 11分9秒 |
バイナリーリリース版は以下からインストールできます。
インストール後、解凍するだけで使用できます。
ネットワーク上のディレクトリに出力している場合は、ローカルに出力する
ネットワーク上のディレクトリを出力先にしている場合は、ローカルを出力先にすることで速度が改善するかもしれません。
I/O の速度がボトルネックになり遅くなっていることがあるためです。
ネットワーク上のディレクトリに出力する必要がない場合は、ローカルに出力することを推奨します。
まとめ
本記事では以下の改善方法を紹介しました。
-trimlog
,-threads
オプションの見直し- 使用している Trimmomatic のインストール方法の見直し
- 実行場所の見直し
fastp や BBDuk 等の他のツールを使うのも有効な手段かもしれません。
本記事が少しでも改善のお役に立てれば幸いです。
それではまた!