SQLファイルを処理するコマンドgrep
のようなプログラムを作成したいと思います。私はそれが働いているときにすべてのコアを使用できることを願っています。 MPIまたはPthreadsだけを使用しても問題ありません。しかし、ファイルを4つのファイルに分割するにはどうすればよいですか?私は700メガバイトのサイズのtxtファイルを持っているなら、どのスレッドをそのファイルの1/4にするのか。grepテストを並列タスクに分割する方法
私の意見では、このファイルの行数を知っていれば、スレッドごとに異なるファイルオフセットを設定する必要があります。それはいい方法ですか、そして、どのように総線数を得るのですか?
多分持っているどのように多くの行のファイルを取得することは、長い時間がかかります:あなたが何をしたいか
[email protected] ~ % time wc -l lineitem.tbl
6001215 lineitem.tbl
wc -l lineitem.tbl 0.20s user 0.40s system 4% cpu 12.996 total
'wc -l'がどれくらいの時間がかかるかをテストするのは難しいです。それは行数を返します(つまり、どれくらいかかりますか?) –
[GNU並列](http://en.wikipedia.org/wiki/GNU_parallel)のようなものをお探しですか? – Pascal
@JonasWielicki時間がかかります。私は自分の質問を編集し、 'wc -l'にかかる時間を追加するだけです。ありがとう〜 – madper