2017-09-13 18 views
1

コマンドシステム()ではRのシェルスクリプト(NCBIのBLAST +)を実行したいが、シェルスクリプトに複数のスレッドを設定してもスレッドは1つしかないようだ。この場合、複数のスレッドを使用するにはどうすればよいですか?マルチスレッディングでRでシェルスクリプトを実行する

コードは、私がRで16個のコアと、この実行を取得するにはどうすればよい system("blastp -query query.fasta -db db.fasta -num_threads 16 -outfmt \"6 qseqid sseqid pident ppos evalue bitscore qcovs\" -out out.tsv")

のですか?ありがとう!並行して

答えて

0

:4:

library(parallel) 
ncore = 4 

syscall = system("blastp -query query.fasta -db db.fasta -num_threads 16 -outfmt \"6 qseqid sseqid pident ppos evalue bitscore qcovs\" -out out.tsv") 
mclapply(1:ncore,syscall,mc.cores=ncore) 
+0

1とは何ですか? –

+0

syscall機能に割り当てられたコアの数 –

関連する問題