2017-01-29 9 views
0

多くの/ほとんどの圧縮アルゴリズムは、パラレル圧縮解除の実装を持っています(gzipなどの場合はpigzなど)。並列圧縮アルゴリズム

しかし、タスクで投げられるプロセッサの数に比例して時間が短縮されることはめったにありません.6プロセッサ以上ではほとんど利益を得られません。

私が設計に組み込まれた並列解凍して任意の圧縮形式があるかどうかを知るために好奇心が強い - つまりは、理論的には1

よりも100のCPUを搭載した速い100倍になりありがとう、すべての最高:)

答えて

1

おそらくI/O境界です。ある時点では、入力や出力を待っているプロセッサが増えてしまいます。あなたはただ待っているプロセッサを増やすだけです。

入力ファイルのサイズが十分でない可能性があります。

pigzは、I/O境界にない場合、十分に大きな入力に対して、100cpで100倍高速になります。デフォルトでは、pigzは各プロセッサに128Kのブロックを送信して作業します。したがって、100個のプロセッサすべてに作業を提供するには、入力を少なくとも13 MBにする必要があります。理想的には、すべてのプロセッサをフルスチームで同時に稼働させるには、それ以上の良いことです。

関連する問題