kernelを再構築したり、buildworldでベースシステムを再構築する場合、そのマシンがデュアルコアやクワッドコアなどのマルチコアCPUを搭載している場合には、再構築時の処理を並列化することにより、再構築の時間を大幅に短縮することが可能です。
このページでは、再構築時の処理を並列化する方法について説明します。
尚、このページの内容は、技術評論社の「FreeBSD勉強会」の第一回「システム/カーネル構築の高速化Tips」で、FreeBSD committer 後藤大地さんによって発表されたものの一部を抜粋したものです。
kernelの再構築時の処理を並列化するには、makeに「-jN」パラメータ(Nは並列数)を付与して実行します。
$ cd /usr/src/sys/i386/conf $ config GENERIC $ cd ../compile/GENERIC $ make cleandepend $ make depend $ make -j2 $ make install
上記の例では、kernel構築時の処理を2つに並列化して実行しています。
ベースシステムの再構築時の処理を並列化する場合にも、makeに「-jN」パラメータ(Nは並列数)を付与して実行します。
$ cd /usr/src $ make -j2 buildworld
上記の例では、ベースシステム構築時の処理を2つに並列化して実行しています。
makeの引数「-jN」のNの値を増やしていくことにより、並列数を増やしていくことが可能ですが、CPUのコア数が並列数Nよりも多い場合でも、並列化による処理の高速化は頭打ちになっていくようです。
詳しくは後藤大地さんのプレゼン資料をご参照ください。
同様の並列化は、一部のportsでも応用可能です。
「www/firefox3」「mail/thunderbird」等のportsは並列化が可能のようです。
・頂いたメッセージは管理者のチェックの後、公開されます。
・メッセージの公開を希望されない場合には、「このメッセージを非公開にする」にチェックを入れてください。
・管理者が不適切と判断したメッセージは公開しませんので、予めご了承ください。
まだ評価がありません |
表示できるメッセージはありません。