(57)【特許請求の範囲】
【請求項１】
印刷ジョブに含まれる印刷データのラスタライズ処理を行う複数のラスタライズ処理手段と、
前記印刷データを分割し、分割された印刷データを前記複数のラスタライズ処理手段に分散して前記複数のラスタライズ処理手段に並列にラスタライズ処理をさせる分散制御手段と、
前記分散制御手段により分割された印刷データの前記ラスタライズ処理手段によるラスタライズ処理にそれぞれ要したラスタライズ処理時間を計測するラスタライズ処理時間計測手段と、
前記ラスタライズ処理時間計測手段により計測された前記分割された印刷データの前記ラスタライズ処理時間を、前記分割された印刷データとそれぞれ関連付けて前記印刷ジョブとともに保存する保存手段と、を有し、
前記分散制御手段は、前記保存手段により保存された印刷ジョブを利用して再度ラスタライズ処理を行う場合に、前記保存手段により保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間に基づいて、前記分割された印刷データをそれぞれ分散させる前記ラスタライズ処理手段を決定することを特徴とする情報処理装置。
【請求項２】
前記分散制御手段は、前記保存手段により保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間の大きい順に、すでに割り当てられている前記分割された印刷データの前記ラスタライズ処理時間の和が最も小さい前記ラスタライズ処理手段に前記分割された印刷データを割り当てることにより、前記分割された印刷データをそれぞれ前記複数のラスタライズ処理手段に分散させることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算し、加算された前記ラスタライズ処理時間を前記複数のラスタライズ処理手段の数で除して平均ラスタライズ処理時間を算出する平均ラスタライズ処理時間算出手段をさらに有し、
前記分散制御手段は、前記保存手段により保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間が、前記平均ラスタライズ処理時間算出手段により算出された前記平均ラスタライズ処理時間以上の前記分割された印刷データを優先して、前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させ、前記平均ラスタライズ処理時間未満の前記分割された印刷データは前記印刷データにおける前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記平均ラスタライズ処理時間算出手段は、再度ラスタライズ処理を行う必要のない前記分割された印刷データの前記ラスタライズ処理時間を除いて前記分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算することにより前記平均ラスタライズ処理時間を算出することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記分割制御手段は、前記印刷データをページごとに分割することを特徴とする請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項６】
印刷ジョブに含まれる印刷データを分割し、分割された印刷データを前記複数のラスタライズ処理手段に分散して前記複数のラスタライズ処理手段に並列にラスタライズ処理をさせる手順（ａ）と、
前記手順（ａ）において分割された印刷データの前記ラスタライズ処理手段によるラスタライズ処理にそれぞれ要したラスタライズ処理時間を計測する手順（ｂ）と、
前記手順（ｂ）において計測された前記分割された印刷データの前記ラスタライズ処理時間を、前記分割された印刷データとそれぞれ関連付けて前記印刷ジョブとともに保存する手順（ｃ）と、を有し、
前記手順（ａ）は、前記手順（ｃ）において保存された印刷ジョブを利用して再度ラスタライズ処理を行う場合に、保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間に基づいて、前記分割された印刷データをそれぞれ分散させる前記ラスタライズ処理手段を決定する処理を情報処理装置に実行させるためのプログラム。
【請求項７】
前記手順（ａ）は、前記手順（ｃ）において保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間の大きい順に、すでに割り当てられている前記分割された印刷データの前記ラスタライズ処理時間の和が最も小さい前記ラスタライズ処理手段に前記分割された印刷データを割り当てることにより、前記分割された印刷データをそれぞれ前記複数のラスタライズ処理手段に分散させることを特徴とする請求項６に記載のプログラム。
【請求項８】
前記手順（ａ）において分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算し、加算された前記ラスタライズ処理時間を前記複数のラスタライズ処理手段の数で除して平均ラスタライズ処理時間を算出する手順（ｄ）をさらに有し、
前記手順（ａ）は、前記手順（ｃ）において保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間が、前記手順（ｄ）において算出された前記平均ラスタライズ処理時間以上の前記分割された印刷データを優先して、前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させ、前記平均ラスタライズ処理時間未満の前記分割された印刷データは前記印刷データにおける前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させることを特徴とする請求項６に記載のプログラム。
【請求項９】
前記手順（ｄ）は、再度ラスタライズ処理を行う必要のない前記分割された印刷データの前記ラスタライズ処理時間を除いて前記分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算することにより前記平均ラスタライズ処理時間を算出することを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記手順（ａ）は、前記印刷データをページごとに分割することを特徴とする請求項６〜９のいずれか一項に記載のプログラム。
【請求項１１】
請求項６〜１０のいずれか一項に記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラム、およびプログラムが記録された記録媒体に関し、より詳細には、印刷処理におけるラスタライズ処理を並列に行う情報処理装置、プログラム、およびプログラムが記録された記録媒体に関する。
【背景技術】
【０００２】
従来、印刷処理を高速化するために、印刷ジョブに含まれる印刷データを電子写真プロセスにて印刷可能な画像データに変換する処理であるラスタライズ処理の処理時間の短縮化が行われている。
【０００３】
一般的に、ラスタライズ処理時間の短縮化のために、マルチＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）化または複数のコンピュータによる並列処理が行われている。また、ラスタライズ処理がされた画像データを記憶装置に保持しておき、その画像データに関する印刷ジョブについて印刷設定の変更がされた後の印刷ジョブにおいて、先の印刷ジョブのラスタライズ処理がされた画像データを利用することが行われている。
【０００４】
上述した、マルチＣＰＵ化または複数のコンピュータによる並列処理によりラスタライズ処理時間を短縮化する場合に、必要最低限のコンピュータ資源により印刷処理を高速化する技術としては次のものがある。すなわち、印刷データの画像特性（例えば、イメージ、ベクタ、テキスト）に応じてラスタライズ処理にかかる負荷をベンチマークとしてあらかじめ設定し、当該ベンチマークを用いて印刷データの各ページのラスタライズ処理における負荷を推定する。そして、推定した負荷および印刷装置の性能を考慮し、印刷装置の印字速度を劣化させないタイミングで各ページのラスタライズ処理を終了できるコンピュータをネットワークで検索し、検出されたコンピュータに並列にラスタライズ処理をさせるものがある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１５１８９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、ブレードサーバーによりラスタライズ処理を行う場合、並列にラスタライズ処理を行うコンピュータの数が実装されているブレードの数に限定される。上記従来技術は、並列にラスタライズ処理をするコンピュータの数を増大させることでラスタライズ処理時間を短縮化することはできるが、並列にラスタライズ処理可能なコンピュータの数が限定される場合には、ラスタライズ処理時間を短縮化することができない。
【０００７】
また、並列にラスタライズ処理を行う各コンピュータにおいてラスタライズ処理の終了時間に差が生じると、先にラスタライズ処理が終了したコンピュータにラスタライズ処理が行われない時間が生じることで印刷ジョブ全体としてラスタライズ処理時間が増大する。同様に、先の印刷ジョブに対する印刷設定の変更により必要となった再度のラスタライズ処理においても、上述したラスタライズ処理時間の増大が生じ得る。しかし、上記従来技術は、並列処理を行う各コンピュータにおけるラスタライズ処理の終了時間の差に起因して印刷ジョブ全体としてラスタライズ処理時間が増大することを防止することができない。
【０００８】
本発明は、このような問題を解決するためになされたものである。すなわち、印刷ジョブに含まれる印刷データを分割して複数のブレードに分散し並列にラスタライズ処理をさせるとともに、分割されたデータごとに実際に要したラスタライズ処理時間を保存する。そして、当該印刷ジョブを利用して再度ラスタライズ処理を行う場合に、保存されたラスタライズ処理時間に基づいて当該分割されたデータごとに分散させるブレードを決定する。これにより、ラスタライズ処理時間の実績に基づいてブレードへのラスタライズ処理の分散を最適化し、ブレードサーバーによるラスタライズ処理時間の短縮化を実現することができる。
【課題を解決するための手段】
【０００９】
本発明の上記課題は、以下の手段によって解決される。
【００１０】
（１）印刷ジョブに含まれる印刷データのラスタライズ処理を行う複数のラスタライズ処理手段と、前記印刷データを分割し、分割された印刷データを前記複数のラスタライズ処理手段に分散して前記複数のラスタライズ処理手段に並列にラスタライズ処理をさせる分散制御手段と、前記分散制御手段により分割された印刷データの前記ラスタライズ処理手段によるラスタライズ処理にそれぞれ要したラスタライズ処理時間を計測するラスタライズ処理時間計測手段と、前記ラスタライズ処理時間計測手段により計測された前記分割された印刷データの前記ラスタライズ処理時間を、前記分割された印刷データとそれぞれ関連付けて前記印刷ジョブとともに保存する保存手段と、を有し、前記分散制御手段は、前記保存手段により保存された印刷ジョブを利用して再度ラスタライズ処理を行う場合に、前記保存手段により保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間に基づいて、前記分割された印刷データをそれぞれ分散させる前記ラスタライズ処理手段を決定する情報処理装置。
【００１１】
（２）前記分散制御手段は、前記保存手段により保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間の大きい順に、すでに割り当てられている前記分割された印刷データの前記ラスタライズ処理時間の和が最も小さい前記ラスタライズ処理手段に前記分割された印刷データを割り当てることにより、前記分割された印刷データをそれぞれ前記複数のラスタライズ処理手段に分散させる上記（１）に記載の情報処理装置。
【００１２】
（３）前記分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算し、加算された前記ラスタライズ処理時間を前記複数のラスタライズ処理手段の数で除して平均ラスタライズ処理時間を算出する平均ラスタライズ処理時間算出手段をさらに有し、前記分散制御手段は、前記保存手段により保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間が、前記平均ラスタライズ処理時間算出手段により算出された前記平均ラスタライズ処理時間以上の前記分割された印刷データを優先して、前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させ、前記平均ラスタライズ処理時間未満の前記分割された印刷データは前記印刷データにおける前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させる上記（１）に記載の情報処理装置。
【００１３】
（４）前記平均ラスタライズ処理時間算出手段は、再度ラスタライズ処理を行う必要のない前記分割された印刷データの前記ラスタライズ処理時間を除いて前記分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算することにより前記平均ラスタライズ処理時間を算出する上記（３）に記載の情報処理装置。
【００１４】
（５）前記分割制御手段は、前記印刷データをページごとに分割する上記（１）〜（４）のいずれかに記載の情報処理装置。
【００１５】
また、上記課題は以下のプログラムまたは記録媒体により解決される。
【００１６】
（６）印刷ジョブに含まれる印刷データを分割し、分割された印刷データを前記複数のラスタライズ処理手段に分散して前記複数のラスタライズ処理手段に並列にラスタライズ処理をさせる手順（ａ）と、前記手順（ａ）において分割された印刷データの前記ラスタライズ処理手段によるラスタライズ処理にそれぞれ要したラスタライズ処理時間を計測する手順（ｂ）と、前記手順（ｂ）において計測された前記分割された印刷データの前記ラスタライズ処理時間を、前記分割された印刷データとそれぞれ関連付けて前記印刷ジョブとともに保存する手順（ｃ）と、を有し、前記手順（ａ）は、前記手順（ｃ）において保存された印刷ジョブを利用して再度ラスタライズ処理を行う場合に、保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間に基づいて、前記分割された印刷データをそれぞれ分散させる前記ラスタライズ処理手段を決定する処理を情報処理装置に実行させるためのプログラム。
【００１７】
（７）前記手順（ａ）は、前記手順（ｃ）において保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間の大きい順に、すでに割り当てられている前記分割された印刷データの前記ラスタライズ処理時間の和が最も小さい前記ラスタライズ処理手段に前記分割された印刷データを割り当てることにより、前記分割された印刷データをそれぞれ前記複数のラスタライズ処理手段に分散させる上記（６）に記載のプログラム。
【００１８】
（８）前記手順（ａ）において分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算し、加算された前記ラスタライズ処理時間を前記複数のラスタライズ処理手段の数で除して平均ラスタライズ処理時間を算出する手順（ｄ）をさらに有し、前記手順（ａ）は、前記手順（ｃ）において保存された、前記分割された印刷データのそれぞれの前記ラスタライズ処理時間が、前記手順（ｄ）において算出された前記平均ラスタライズ処理時間以上の前記分割された印刷データを優先して、前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させ、前記平均ラスタライズ処理時間未満の前記分割された印刷データは前記印刷データにおける前記分割された印刷データの順序に従いそれぞれ前記複数のラスタライズ処理手段に分散させる上記（６）に記載のプログラム。
【００１９】
（９）前記手順（ｄ）は、再度ラスタライズ処理を行う必要のない前記分割された印刷データの前記ラスタライズ処理時間を除いて前記分割された印刷データのそれぞれの前記ラスタライズ処理時間を加算することにより前記平均ラスタライズ処理時間を算出する上記（８）に記載のプログラム。
【００２０】
（１０）前記手順（ａ）は、前記印刷データをページごとに分割することを特徴とする上記（６）〜（９）のいずれかに記載のプログラム。
【００２１】
（１１）上記（６）〜（１０）のいずれかに記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
【発明の効果】
【００２２】
印刷ジョブに含まれる印刷データを分割して複数のブレードに分散し並列にラスタライズ処理をさせるとともに、分割されたデータごとに実際に要したラスタライズ処理時間を保存する。そして、当該印刷ジョブを利用して再度ラスタライズ処理を行う場合に、保存したラスタライズ処理時間に基づいて当該分割されたデータごとに分散させるブレードを決定する。これにより、ラスタライズ処理時間の実績に基づいてブレードへのラスタライズ処理の分散を最適化し、ブレードサーバーによるラスタライズ処理時間を短縮化することができる。
【図面の簡単な説明】
【００２３】
【図１】画像形成システムの構成を示すブロック図である。
【図２】クライアント端末の構成を示すブロック図である。
【図３】ブレードサーバーの構成を示すブロック図である。
【図４】マスターブレードの構成を示すブロック図である。
【図５】スレーブブレードの構成を示すブロック図である。
【図６】印刷ジョブに含まれる印刷データの最初のラスタライズ処理の処理シーケンスを示す図である。
【図７】ブレードサーバーに保存されている印刷ジョブについて印刷設定変更および再出力の要求がされたがラスタライズ処理が不要である場合の処理シーケンスを示す図である。
【図８】ブレードサーバーに保存されている印刷ジョブについて印刷設定変更の要求がされた結果ラスタライズ処理が必要となる場合の処理シーケンスを示す図である。
【図９】初期処理シーケンスにおけるページの分散方法と、再ラスタライズ処理シーケンスにおけるページの分散方法とを示す説明図である。
【図１０】本発明の第１実施形態に係るブレードサーバーによる、印刷データのページの分散方法を決定する処理のフローチャートを示す図である。
【図１１】ページ情報リストを示す図である。
【図１２】再ラスタライズリストを示す図である。
【図１３Ａ】本発明の第２実施形態に係るブレードサーバーによる、印刷データのページの分散方法を決定する処理のフローチャートを示す図である。
【図１３Ｂ】本発明の第２実施形態に係るブレードサーバーによる、印刷データのページの分散方法を決定する処理のフローチャートを示す図である。
【発明を実施するための形態】
【００２４】
（第１実施形態）
以下、図面を参照して、本発明の第１実施形態に係る情報処理装置、プログラム、およびプログラムが記録された記録媒体について詳細に説明する。
【００２５】
図１は、画像形成システムの構成を示すブロック図である。
【００２６】
図１に示すように、画像形成システム１は、クライアント端末３０、ブレードサーバー１０、およびエンジン２０を有する。なお、クライアント端末３０の数は２台に限定されず、１台でもよく、３台以上であってもよい。本発明に係る情報処理装置はブレードサーバー１０により構成されることができる。
【００２７】
ブレードサーバー１０、第１クライアント端末３１、および第２クライアント端末３２はネットワーク４０を介して相互に通信可能に接続される。ネットワーク４０は、イーサネット（登録商標）、トークンリング、ＦＤＤＩ（Ｆｉｂｅｒ−Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄａｔａ  Ｉｎｔｅｒｆａｃｅ）などの規格によりコンピュータやネットワーク機器同士を接続したＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、あるいは、ＬＡＮ同士を専用線で接続したＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）により構成されることができる。
【００２８】
また、ブレードサーバー１０とエンジン２０とは、ＶＩＦ（Ｖｉｄｅｏ  Ｉｎｔｅｒ−Ｆａｃｅ）により専用線５０で相互に通信可能に接続されることができる。
【００２９】
クライアント端末３０はパーソナルコンピュータにより構成されることができ、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）によって制御される。クライアント端末３０は、ユーザーが印刷しようとする印刷データを、ユーザーにより入力された印刷設定とともに印刷ジョブとしてブレードサーバー１０に送信する。
【００３０】
ここで、印刷設定とは、印刷物の形式の設定であり、例えば、例えば、ステープル、パンチ、折り、ウォーターマーク、原稿の向き、用紙サイズ、Ｎｉｎ１（ページ割付）、グレースケール化、および印刷部数の設定であり得る。
【００３１】
また、印刷データとは、印刷の対象であるドキュメントのデータであり、印刷データには、例えば、イメージデータ、ベクタデータ、テキストデータといった各種データが含まれ得る。具体的には、印刷データは、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データ、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）データまたはＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）データであり得る。
【００３２】
ブレードサーバー１０は、第１クライアント端末３１または第２クライアント端末３２から印刷ジョブを受信する。ブレードサーバー１０は、印刷ジョブに含まれる印刷設定に従って印刷データをラスタライズ処理し、画像データとしてエンジン２０に送信する。
【００３３】
画像データとは、印刷データに対しラスタライズ処理がされたデータであり、ビットマップデータであり得る。
【００３４】
ブレードサーバー１０は、後述するように、印刷データの各ページを複数のブレードに分散して並列にラスタライズ処理を行う。これにより、印刷データのラスタライズ処理に要する時間（以下、「ラスタライズ処理時間」と称する）を短縮化することができる。
【００３５】
エンジン２０は、ブレードサーバー１０から受信した画像データを、電子写真方式により帯電、露光、現像、転写および定着の各工程を経て、用紙に印刷して排出する。すなわち、エンジン２０は、印刷ジョブに含まれる印刷データに基づく画像データを現像材を用いて印刷し、印刷された用紙を出力する。
【００３６】
図２は、クライアント端末の構成を示すブロック図である。
【００３７】
図２に示すように、クライアント端末２０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２００、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０３、操作部２０４、表示部２０５および通信インターフェース２０６を備えており、これらは信号をやり取りするためのバス２０７を介して相互に接続される。
【００３８】
ＣＰＵ２００は、プログラムに従って上記各部の制御や各種の演算処理を行う。
【００３９】
ＲＡＭ２０１は、作業領域として一時的にプログラムやデータを記憶する。
【００４０】
ＲＯＭ２０２は、各種プログラムや各種データを格納する。
【００４１】
ＨＤＤ２０３は、オペレーティングシステムを含む各種プログラムや各種データを格納する。
【００４２】
操作部２０４は、例えばマウスといったポインティングデバイスやキーボード、タッチパネルを含み、各種の操作、入力を行うために使用される。
【００４３】
表示部２０５は、例えば液晶ディスプレイであり、各種の情報を表示する。
【００４４】
通信インターフェース２０６は、外部機器と通信するためのインターフェースであり、イーサネット（登録商標）、トークンリング、ＦＤＤＩ等の規格によるネットワークインターフェース、ＵＳＢ、ＩＥＥＥ１３９４等のシリアルインターフェース、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）、ＩＥＥＥ１２８４等のパラレルインターフェース、ＢＬＵＥＴＯＯＴＨ（登録商標）、ＩＥＥＥ８０２．１１、ＨｏｍｅＲＦ（Ｈｏｍｅ  Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ）、ＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）等の無線通信インターフェース、電話回線に接続するための電話回線インターフェース等を利用することができる。
【００４５】
クライアント端末２０にはプリンタドライバーがインストールされており、ユーザーは、プリンタドライバーを利用してＨＤＤ２０３に記憶されている印刷データを指定し、印刷設定を行い、印刷データと印刷設定とを含む印刷ジョブをブレードサーバー１０に送信することができる。ブレードサーバー１０は印刷設定に基づいて印刷データのラスタライズ処理を行い、エンジン２０は印刷ジョブに基づく印刷物を出力する。
【００４６】
図３は、ブレードサーバーの構成を示すブロック図である。また、図４は、マスターブレードの構成を示すブロック図で、図５はスレーブブレードの構成を示すブロック図である。ラスタライズ処理手段およびラスタライズ処理時間計測手段はスレーブブレード１２により構成されることができる。また、分散制御手段、保存手段、および平均ラスタライズ処理時間算出手段はマスターブレード１１により構成されることができる。
【００４７】
図３に示すように、ブレードサーバー１０は、マスターブレード１１０、スレーブブレード１２０、およびＨＤＤ１３０を有する。マスターブレード１１０、スレーブブレード１２０、およびＨＤＤ１３０は、バス１４０により相互に通信可能に接続されている。
【００４８】
図４に示すように、マスターブレード１１０は、ＣＰＵ１１１、ＲＡＭ１１２、ＶＩＦ１１３、ＬＡＮ通信インターフェース１１４、およびブレード間通信インターフェース１１５を有する。
【００４９】
ＣＰＵ１１１は、プログラムに従い上記各要素の制御や各種の演算処理等を行う。ＲＡＭ１１２には、プログラムやＰＤＬ等の印刷データ、ラスタライズ後の画像データを一時的に保存する。ＶＩＦ１１３は、エンジン２０と双方向に通信するためのインターフェースである。ＬＡＮ通信インターフェース１１４は、ネットワークを介してクライアント端末３０に接続するためのインターフェースである。ブレード間通信インターフェース１１５は、スレーブブレード１２０と双方向に通信するためのインターフェースである。これらの構成要素は信号をやり取りするためのバス１１６を介して相互に接続されている。
【００５０】
図５に示すように、スレーブブレード１２０は、ＣＰＵ１２１、ＲＡＭ１２２、ＨＤＤ１２３、ブレード間インターフェース１２４、およびタイマー１２５を有する。
【００５１】
ＣＰＵ１２１は、プログラムに従い上記各要素の制御や各種の演算処理等を行う。ＲＡＭ１２２には、プログラムやＰＤＬ等の印刷データ、ラスタライズ処理後の画像データを一時的に保存する。ＨＤＤ１２３には、ラスタライズ処理後の画像データ、プログラムその他の各種データを保存する。ブレード間通信インターフェース１２４は、マスターブレード１１０と双方向に通信するためのインターフェースである。タイマー１２５は、印刷データの各ページのラスタライズ処理時間を計測する。これらの構成要素は信号をやり取りするためのバス１２６を介して相互に接続されている。
【００５２】
ＨＤＤ１３０には、マスターブレード１１０により実行されるプログラム、印刷ジョブ、画像データ、その他の各種データを保存する。
【００５３】
ブレードサーバー１０は、上記構成により以下の処理を行う。
【００５４】
マスターブレード１１０は、第１クライアント端末３１または第２クライアント端末３２から受信した印刷ジョブをＨＤＤ１３０に保存する。また、マスターブレード１１０は、印刷ジョブに含まれる印刷データをページごとに分割し、各ページを各スレーブブレード１２０に分散し並列にラスタライズ処理を行わせる。
【００５５】
スレーブブレード１２０は、マスターブレード１１０から受信した印刷データのページについてラスタライズ処理を行い、ラスタライズ処理後の画像データをページごとにマスターブレード１２０に送信する。また、スレーブブレード１２０は、タイマー１２５により印刷データの各ページのラスタライズ処理時間を計測し、画像データとともにページごとにマスターブレード１１０に送信する。
【００５６】
ＨＤＤ１３０は、マスターブレード１１０から印刷ジョブ、ラスタライズ後の画像データ、およびラスタライズ処理時間といった各種データを受信し保存する。また、ＨＤＤ１３０は、ラスタライズ処理時間をそのラスタライズ処理を行ったページと関連付けて保存する。
【００５７】
図６は、印刷ジョブに含まれる印刷データの最初のラスタライズ処理の処理シーケンスを示す図である。以下、図６に示す処理シーケンスを初期処理シーケンスと称する。
【００５８】
クライアント端末３０からブレードサーバー１０のマスターブレード１１０に対し保存要求の印刷ジョブが投入されると、マスターブレード１１０は印刷ジョブをＨＤＤ１３０に保存する。図６には、ＨＤＤ１３０へ保存される印刷ジョブのデータとして、印刷設定情報、印刷データであるＰＤＬ、およびページ情報が示されている。
【００５９】
マスターブレード１１０は、印刷ジョブをページごとに分割し、各スレーブブレード１２０に対し印刷ジョブの各ページを分散して送信し、ラスタライズ処理の要求を行う。
【００６０】
各スレーブブレード１２０は、マスターブレード１１０からラスタライズ処理の要求を受けた印刷データのページのラスタライズ処理をそれぞれ並列に行う。複数のスレーブブレード１２０で印刷データのラスタライズ処理を並列に行うことにより印刷データのラスタライズ処理時間を短縮することができる。
【００６１】
各スレーブブレード１２０は、マスターブレード１１０から受信したページのラスタライズ処理の際、ラスタライズ処理時間を計測し、ラスタライズ処理の終了後、ページの画像データとともにラスタライズ処理時間をマスターブレード１１０に送信する。マスターブレード１１０は、スレーブブレード１２０から受信した画像データおよびラスタライズ処理時間をページ情報と関連付けてＨＤＤ１３０に保存する。これにより、マスターブレード１１０は印刷ジョブに含まれる印刷データのそれぞれのページのラスタライズ処理時間を、ＨＤＤ１３０に保存されたデータにより確認することができる。
【００６２】
なお、図６に示された初期処理シーケンスは、保存要求の印刷ジョブについての処理シーケンスである。すなわち、図６には、印刷ジョブにおいて印刷出力の要求がない場合の初期処理シーケンスの例が示されている。ここで、印刷ジョブにおいて印刷出力の要求がなされていた場合は、ＨＤＤ１３０から印刷設定情報、ページ情報、および画像データがマスターブレード１１０により読み出され、エンジン２０に転送される。そして、エンジン２０により画像データが用紙に印刷され出力される。
【００６３】
なお、初期シーケンスのラスタライズ処理におけるページの分散方法は、例えば、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）により行うことができる。すなわち、現在処理が行われていないスレーブブレード１２０にページ番号順に印刷データのページを分散し各スレーブブレード１２０により並列にラスタライズ処理が行われることができる。
【００６４】
図７は、ブレードサーバーに保存されている印刷ジョブについて印刷設定変更および再出力の要求がされたがラスタライズ処理が不要である場合の処理シーケンスを示す図である。
【００６５】
クライアント端末３０からブレードサーバー１０に印刷ジョブＩＤがＡである印刷ジョブに対し印刷設定変更および再出力要求がされると、マスターブレード１１０はＨＤＤ１３０に保存されている、印刷ジョブＩＤがＡである印刷ジョブの印刷設定を変更する。
【００６６】
印刷設定変更の例としては、例えば、原稿の向き、用紙サイズ、Ｎｉｎ１、グレースケール化、および印刷部数の設定がある。
【００６７】
その後、マスターブレード１１０は印刷設定の変更により再度のラスタライズ処理（以下、「再ラスタライズ処理」と称する）が必要かどうかを判定する。マスターブレード１１０は、印刷設定の変更前後においてラスタライズ処理により作成される画像データが変更されることとなるページが１ページもない場合は、再ラスタライズが不要と判定する。
【００６８】
なお、再ラスタライズ処理が必要な場合とは、例えば、印刷データの色が変更された場合、ページのサイズが変更された場合、オブジェクトの回転がされた場合が考えられる。
【００６９】
マスターブレード１１０は、再ラスタライズ処理が不要と判断すると、ＨＤＤ１３０に保存されている、印刷ジョブＩＤがＡである印刷ジョブの印刷設定情報、ページ情報、および画像データがマスターブレード１１０により読み出され、エンジン２０に転送される。エンジン２０は、これらのデータに基づいて画像データを用紙に印刷し出力する。
【００７０】
図８は、ブレードサーバーに保存されている印刷ジョブについて印刷設定変更の要求がされた結果ラスタライズ処理が必要となる場合の処理シーケンスを示す図である。以下、図８に示す処理シーケンスを再ラスタライズ処理シーケンスと称する。
【００７１】
クライアント端末３０からブレードサーバー１０に印刷ジョブＩＤがＡである印刷ジョブに対し印刷設定変更の要求がされると、マスターブレード１１０はＨＤＤ１３０に保存されている印刷ジョブＩＤがＡである印刷ジョブの印刷設定を変更する。
【００７２】
その後、マスターブレード１１０は印刷設定の変更により再ラスタライズ処理が必要かどうかを判定する。マスターブレード１１０は、印刷設定の変更前後においてラスタライズ処理により得られる画像データが変更されることとなるページが１ページでもある場合は、そのページについて再ラスタライズが必要と判定する。
【００７３】
マスターブレード１１０は、再ラスタライズ処理が必要と判断すると、再ラスタライズ処理が必要なページを各スレーブブレード１２０へ分散し並列にラスタライズ処理をさせるためのページの分散方法を決定する処理を行う。
【００７４】
図９は、初期処理シーケンスにおけるページの分散方法と、再ラスタライズ処理シーケンスにおけるページの分散方法とを示す説明図である。なお、図９においては、簡単のために並列にラスタライズ処理を行うスレーブブレード１２０の数を２台としている。
【００７５】
図９のＡは、印刷データの各ページのラスタライズ処理時間を示している。図９のＡによれば、ページ４のラスタライズ時間が最も大きいことが判る。ここで、平均ラスタライズ時間とは、印刷データの各ページのラスタライズ時間の和を並列にラスタライズ処理を行うスレーブブレードの数で除した時間である。すなわち、平均ラスタライズ時間は、並列にラスタライズ処理を行うスレーブブレードが常にラスタライズ処理を行っていると仮定した場合に印刷データのラスタライズ処理が完了するために要する時間である。従って、平均ラスタライズ時間は最も効率的に並列ラスタライズ処理を行った場合の印刷データのラスタライズ処理時間に相当する。
【００７６】
図９のＢは、初期処理シーケンスにおけるページの分散方法を示している。
【００７７】
初期処理シーケンスにおいては、ラスタライズ処理におけるページの分散は、ＦＩＦＯにより行うことができる。従って、図９のＢでは、まず、ページ１が第１スレーブブレード１２０ａに割り当てられ、ページ２が第２スレーブブレード１２０ｂに割り当てられる。そして、第１スレーブブレード１２０ａにおいてページ１のラスタライズ処理が終了するとページ３が第１スレーブブレード１２０ａに割り当てられ、第２スレーブブレード１２０ｂにおいてページ２のラスタライズ処理が終了するとページ４が第２スレーブブレード１２０ｂに割り当てられる。そして、第１スレーブブレード１２０ａにおいてページ３のラスタライズ処理が終了すると最終ページであるページ５が第１スレーブブレード１２０ａに割り当てられる。
【００７８】
図９のＢの例では、ラスタライズ処理時間が比較的長いページ４のラスタライズ処理がボトルネックとなって印刷データ全体としてのラスタライズ処理時間を長くしており、並列処理によるラスタライズ処理が効率的になされたとはいえない。
【００７９】
なお、初期処理シーケンスにおけるページの分散方法においては、ラスタライズ処理が行われていないスレーブブレードにページ番号順にページが割り当てられるため、ページの分散方法を決定する処理を行う必要はない。
【００８０】
図９のＣは、再ラスタライズ処理シーケンスにおけるページの分散方法を示している。
【００８１】
再ラスタライズ処理シーケンスにおいては、初期処理シーケンスにおいてブレードサーバー１０のＨＤＤ１３０に記録された印刷データの各ページのラスタライズ処理時間に基づいてスレーブブレード１２０への分散方法が決定される。具体的には、ラスタライズ処理時間が長い順に各スレーブブレード１２０にページが分散され、各スレーブブレード１２０で並列にラスタライズ処理が行われる。すなわち、最もラスタライズ処理時間の長いページ４が第１スレーブブレード１２０ａに割り当てられ、ラスタライズ処理時間が次に長いページ２が第２スレーブブレード１２０ｂに割り当てられる。そして、第１スレーブブレード１２０ａにおいてページ４のラスタライズ処理が継続されている間に第２スレーブブレード１２０ｂにおいてページ２のラスタライズ処理が終了すると、ページ１が第２スレーブブレード１２０ｂに割り当てられる。また、第１スレーブブレード１２０ａにおいてページ４のラスタライズ処理がさらに継続されている間に第２スレーブブレード１２０ｂにおいてページ１のラスタライズ処理が終了すると、ページ３そしてページ５が順に第２スレーブブレード１２０ｂに割り当てられる。
【００８２】
図９のＣの例では、ラスタライズ処理時間が比較的長いページ４にスレーブブレード１２０が優先して割り当てられるため、ページ４のラスタライズ処理により印刷データ全体としてのラスタライズ処理時間が長くなることが抑止されている。このように、計測したラスタライズ処理時間に基づいて、ラスタライズ処理時間の長いものから優先してスレーブブレード１２０に分散し並列にラスタライズ処理をすることにより、印刷データのラスタライズ処理の分散が最適化される。これにより、ブレードサーバー１０による印刷データのラスタライズ処理時間を短縮化することができる。また、ラスタライズ処理時間を短縮化することにより一つの印刷ジョブにブレードサーバーが占有される時間が短縮化されるため、他の印刷ジョブの処理にブレードサーバーを割り当てることができる。従って、ブレードサーバーによる処理の効率化が実現される。
【００８３】
なお、再ラスタライズ処理においては、印刷設定変更がされた結果、印刷データのページのラスタライズ処理時間が変わることがあるが、印刷データのページ相互間のラスタライズ処理時間の相対比率はそれほど変わらないと考えられる。従って、印刷設定変更がされたことでページのラスタライズ処理時間が変わったとしても、本実施形態により、印刷データのラスタライズ処理の分散が最適化され、ラスタライズ処理時間が短縮化されると考えられる。
【００８４】
図９のＣに示される方法により、再ラスタライズ処理シーケンスにおけるページの分散方法がマスターブレード１１０により決定されると、決定されたページの分散方法に従いマスターブレード１１０から各スレーブブレード１２０に対しラスタライズ処理の要求がなされる。
【００８５】
印刷データのページの分散方法が決定されると、図８に示すように、各スレーブブレード１２０は、マスターブレード１１０からラスタライズ処理の要求を受け、分散された印刷データのページのラスタライズ処理を並列に行う。
【００８６】
各スレーブブレード１２０は、印刷データのページの再ラスタライズ処理におけるラスタライズ処理時間を計測し、そのページの画像データとともにラスタライズ処理時間をマスターブレード１１０に送信する。マスターブレード１１０は、スレーブブレード１２０から受信した画像データおよびラスタライズ処理時間をページ情報と関連付けてＨＤＤ１３０に保存する。これにより、ＨＤＤ１３０に保存されている印刷ジョブＩＤがＡである印刷ジョブの再ラスタライズ処理が行われたページについてのラスタライズ時間および画像データが変更される。
【００８７】
図１０は、印刷データのページの分散方法を決定する処理のフローチャートを示す図である。本フローチャートは、ブレードサーバー１０に実行させるためのプログラムにより実施されることができる。
【００８８】
マスターブレード１１０は、ＨＤＤ１３０に保存されている印刷ジョブの各ページのラスタライズ処理時間に基づき、ページ情報リストをラスタライズ処理時間が長い順にソートする（Ｓ１００１）。
【００８９】
なお、ソートした結果をプログラム上で識別するために、プログラムにおいてラスタライズ処理時間が長い順に１からＮまでのソート番号Ｎが各ページと関連して設定されることができる。ここで、ソート番号Ｎの個数は印刷データのページ数ｎと同じ個数となる。
【００９０】
図１１は、ページ情報リストを示す図である。ページ情報リストは、ブレードサーバー１０により印刷ジョブその他の要求データが受信された際に、マスターブレード１１０により作成されることができる。ページ情報リストは、印刷ジョブと関連付けられてＨＤＤ１３０に保存されることができる。
【００９１】
ページ情報リストには、各ページ番号を有するページについて、「再ラスタライズ処理の要否」、「前回のラスタライズ処理時間」、および「割当フラグ」がリアルタイムで記録される。「前回のラスタライズ処理時間」はＨＤＤ１３０に保存されているラスタライズ時間が記録される。「再ラスタライズ処理の要否」は、マスターブレード１１０により再ラスタライズ処理の要否が判断された際に記録される。「割当フラグ」は、印刷データのページが割り当てられるスレーブブレード１２０が決定された際にそのページについて「ｎｏ」から「ｙｅｓ」に変更されることにより記録される。
【００９２】
マスターブレード１１０は、最もラスタライズ時間が長いページを優先してスレーブブレード１２０に割り当てるために、ソート番号Ｎを１に設定しソート番号Ｎが１である最もラスタライズ時間が長いページの処理を開始する（Ｓ１００２）。
【００９３】
マスターブレード１１０は、ステップＳ１００２において設定されたソート番号のページについて再ラスタライズ処理が必要であり、かつスレーブブレード１２０に割り当てられていないかどうかを判断する（Ｓ１００３）。
【００９４】
当該ソート番号のページの再ラスタライズ処理が必要でない場合は（Ｓ１００３：Ｎｏ）、ステップＳ１００８に移行し、ソート番号Ｎがインクリメントされる。また、当該ソート番号のページの再ラスタライズ処理が必要であるがすでにスレーブブレード１２０に割り当てられている場合も（Ｓ１００３：Ｎｏ）ステップＳ１００８に移行する。
【００９５】
なお、同じ印刷ジョブのページにおいて、再ラスタライズ処理が必要なページと不要なページが混在する場合の例としては、印刷設定変更によりほとんどのページの再ラスタライズ処理が必要になったが、一部のページは他の印刷ジョブの画像データがインポートにより挿入されているものであるため再ラスタライズ処理が不要である場合がある。
【００９６】
当該ソート番号のページの再ラスタライズ処理が必要であって、スレーブブレード１２０に割り当てられていない場合は（Ｓ１００３：Ｙｅｓ）、マスターブレード１１０は、すでに割り当てられているページの再ラスタライズ処理時間の総和が最も小さいスレーブブレードを検出する（Ｓ１００４）。マスターブレード１１０は、現時点において割り当てられている再ラスタライズ処理におけるラスタライズ処理時間の総和（以下、「割り当てられた再ラスタライズ処理時間」と称する）が最も小さいスレーブブレードを、再ラスタライズリストを参照することにより検出することができる。
【００９７】
図１２は、再ラスタライズリストを示す図である。再ラスタライズリストは、ブレードサーバー１０によりクライアント端末３０から印刷設定変更の要求が受信された際に、マスターブレード１１０により作成されることができる。再ラスタライズリストは、印刷ジョブと関連付けられてＨＤＤ１３０に保存されることができる。
【００９８】
再ラスタライズリストは、各スレーブブレード１２０のブレード番号に対応して「割り当てられた再ラスタライズ処理時間」、および「割り当てられたページ」がリアルタイムで記録されるリストである。「割り当てられたページ」は、ステップＳ１００４において検出されたブレードについて当該ソート番号のページのページ番号が追加されることにより記録される。
【００９９】
印刷データのページの分散方法の決定は、再ラスタライズリストに各スレーブブレード１２０に対し「割り当てられたページ」が記録されることにより行われる。
【０１００】
マスターブレード１１０は、ステップＳ１００４において検出されたスレーブブレード１２０について、再ラスタライズリストの「割り当てられたラスタライズ処理時間」に当該ソート番号が設定されたページのラスタライズ処理時間を加算する（Ｓ１００５）。また、マスターブレード１１０は、検出されたスレーブブレード１２０について、当該ソート番号のページのページ番号を再ラスタライズリストの「割り当てられたページ」に追加する（Ｓ１００６）。
【０１０１】
マスターブレード１１０は、ページ情報リストに当該ソート番号のページがスレーブブレードに割り当てられたことを、「割当フラグ」の表示を「ｎｏ」から「ｙｅｓ」に変更することにより登録する（Ｓ１００７）。
【０１０２】
マスターブレード１１０は、ラスタライズ処理時間が次に長いページをスレーブブレード１２０に割り当てるために、ソート番号Ｎをインクリメントする（Ｓ１００８）。そして、インクリメントされた後のソート番号Ｎがページ数ｎを超えるまで（Ｓ１００９：Ｙｅｓ）、ページの分散方法を決定する処理を継続する（Ｓ１００３〜Ｓ１００８）。
【０１０３】
印刷データのページの分散方法の決定が行われると、マスターブレード１１０は、決定されたページの分散方法に基づいて各スレーブブレード１２０に対しラスタライズ処理の要求を行い、各スレーブブレード１２０は、分散されたページのラスタライズ処理を並列に行う。
【０１０４】
以上、本発明の第１実施形態に係る情報処理装置、プログラム、およびプログラムが記録された記録媒体について説明したが、本実施形態は以下の効果を奏する。
【０１０５】
印刷ジョブに含まれる印刷データをページごとに分割して複数のスレーブブレードに分散し並列にラスタライズ処理をさせるとともに、ページごとに実際に要したラスタライズ処理時間を保存する。そして、当該印刷ジョブを利用して再度ラスタライズ処理を行う場合に、保存したラスタライズ処理時間に基づいてページごとに分散させるスレーブブレードを決定する。これにより、ラスタライズ処理時間の実績に基づいてスレーブブレードへのラスタライズ処理の分散を最適化し、ブレードサーバーによるラスタライズ処理時間を短縮化することができる。
【０１０６】
また、印刷データのページのそれぞれのラスタライズ処理時間の大きい順に、複数のスレーブブレードに分散させる。これにより、ラスタライズ処理時間が比較的長いページのラスタライズ処理がボトルネックとなり印刷データ全体としてのラスタライズ処理時間が長くなることを抑止し、ラスタライズ処理時間をより短縮化することができる。
【０１０７】
（第２実施形態）
本発明の第２実施形態に係る情報処理装置、プログラム、およびプログラムが記録された記録媒体について詳細に説明する。本実施形態と第１実施形態は、印刷データのページの分散方法の決定において次の点で異なる。すなわち、第１実施形態ではラスタライズ処理時間の大きいページを優先してスレーブサーバーに割り当てるのに対し、本実施形態では平均ラスタライズ時間以上のラスタライズ時間のページをページ番号順に優先してスレーブサーバーに割り当て、その後、それ以外のページをページ番号順に割り当てる点で異なる。これ以外の点においては、本実施形態は第１実施形態と同様であるため重複する説明は省略する。
【０１０８】
図１３Ａ、Ｂは、印刷データのページの分散方法を決定する処理のフローチャートを示す図である。本フローチャートは、ブレードサーバー１０に実行させるためのプログラムにより実施されることができる。
【０１０９】
マスターブレード１１０は、印刷ジョブに含まれる印刷データのすべてのページのラスタライズ処理時間の総和を算出する（Ｓ１３０１）。サスタライズ処理時間の総和の算出は、クライアント端末３０からブレードサーバー１０に指定された印刷ジョブに対する印刷設定変更の要求がされることにより開始される。
【０１１０】
マスターブレード１１０は、平均ラスタライズ時間を算出する（Ｓ１３０２）。
【０１１１】
マスターブレード１１０は、平均ラスタライズ時間以上のラスタライズ時間のページをページ番号順にスレーブサーバー１２０に割り当てるために、ページ番号ｎを１に設定し、ページ１の処理を開始する（Ｓ１３０３）。
【０１１２】
マスターブレード１１０は、ステップＳ１３０３において設定されたページ番号ｎのページ（以下、「ページＰｎ」と称する）について再ラスタライズ処理が必要であり、かつスレーブブレード１２０に割り当てられていないかどうかを判断する（Ｓ１３０４）。
【０１１３】
ページＰｎの再ラスタライズ処理が必要でない場合は（Ｓ１３０４：Ｎｏ）、ステップＳ１３１０に移行し、ページ番号ｎがインクリメントされる。また、ページＰｎの再ラスタライズ処理が必要であるがすでにスレーブブレード１２０に割り当てられている場合も（Ｓ１３０４：Ｎｏ）ステップＳ１３１０に移行する。
【０１１４】
マスターブレード１１０は、ページＰｎの再ラスタライズ処理が必要であって、スレーブブレード１２０に割り当てられていない場合は（Ｓ１３０４：Ｙｅｓ）、ページＰｎのラスタライズ処理時間が平均ラスタライズ処理時間以上かどうかを判断する（Ｓ１３０５）。
【０１１５】
マスターブレード１１０は、ページＰｎのラスタライズ処理時間が平均ラスタライズ処理時間未満である場合は（Ｓ１３０５：Ｎｏ）、ステップＳ１３１０に移行し、ページ番号ｎがインクリメントされる。
【０１１６】
マスターブレード１１０は、ページＰｎのラスタライズ処理時間が平均ラスタライズ処理時間以上である場合は（Ｓ１３０５：Ｙｅｓ）、再ラスタライズリストを参照する。そして、割り当てられた再ラスタライズ処理時間が最も小さいスレーブブレード１２０を検出する（Ｓ１３０６）。
【０１１７】
マスターブレード１１０は、ステップＳ１３０６において検出されたスレーブブレード１２０について、再ラスタライズリストの「割り当てられた再ラスタライズ処理時間」にページＰｎのラスタライズ処理時間を加算する（Ｓ１３０７）。また、マスターブレード１１０は、検出されたスレーブブレード１２０について、ページＰｎのページ番号ｎを再ラスタライズリストの「割り当てられたページ」に追加する（Ｓ１３０８）。
【０１１８】
マスターブレード１１０は、ページ情報リストにページＰｎがスレーブブレードに割り当てられたことを、ページ情報リストのページＰｎの「割当フラグ」の表示を「ｎｏ」から「ｙｅｓ」に変更することにより登録する（Ｓ１３０９）。
【０１１９】
マスターブレード１１０は、平均ラスタライズ時間以上のラスタライズ時間のページをページ番号順にスレーブサーバー１２０に割り当てるために、ページ番号ｎをインクリメントする（Ｓ１３１０）。そして、インクリメントされた後のページ番号ｎが印刷データの全ページ数を超えるまで（Ｓ１３１１：Ｙｅｓ）、ステップＳ１３０１〜ステップＳ１３１０の処理を継続する。
【０１２０】
ステップＳ１３０１〜ステップＳ１３１１の処理により、平均ラスタライズ処理時間以上のラスタライズ処理時間のページについての分散方法が決定される。
【０１２１】
次に、マスターブレード１１０は、平均ラスタライズ処理時間未満のラスタライズ処理時間のページについての分散方法を決定する。
【０１２２】
マスターブレード１１０は、平均ラスタライズ時間未満のラスタライズ時間のページをページ番号順にスレーブサーバー１２０に割り当てるために、ページ番号ｎを１に設定し、ページ１の処理を開始する（Ｓ１３１２）。
【０１２３】
マスターブレード１１０は、ステップＳ１３１２において設定されたページＰｎについて再ラスタライズ処理が必要であり、かつスレーブブレード１２０に割り当てられていないかどうかを判断する（Ｓ１３１３）。
【０１２４】
ページＰｎの再ラスタライズ処理が必要でない場合は（Ｓ１３１３：Ｎｏ）、ステップＳ１３１８に移行し、ページ番号ｎがインクリメントされる。また、ページＰｎの再ラスタライズ処理が必要であるがすでにスレーブブレード１２０に割り当てられている場合も（Ｓ１３１３：Ｎｏ）ステップＳ１３１８に移行する。
【０１２５】
マスターブレード１１０は、ページＰｎの再ラスタライズ処理が必要であって、スレーブブレード１２０に割り当てられていない場合は（Ｓ１３１３：Ｙｅｓ）、割り当てられた再ラスタライズ処理時間が最も小さいスレーブブレード１２０を検出する（Ｓ１３１４）。
【０１２６】
マスターブレード１１０は、ステップＳ１３１４において検出されたスレーブブレード１２０について、再ラスタライズリストの「割り当てられた再ラスタライズ処理時間」にページＰｎのラスタライズ処理時間を加算する（Ｓ１３１５）。また、マスターブレード１１０は、検出されたスレーブブレード１２０について、ページＰｎのページ番号ｎを再ラスタライズリストの「割り当てられたページ」に追加する（Ｓ１３１６）。
【０１２７】
マスターブレード１１０は、ページ情報リストにページＰｎがスレーブブレードに割り当てられたことを、ページ情報リストのページＰｎの「割当フラグ」の表示を「ｎｏ」から「ｙｅｓ」に変更することにより登録する（Ｓ１３１７）。
【０１２８】
マスターブレード１１０は、平均ラスタライズ時間未満のラスタライズ時間のページをページ番号順にスレーブサーバー１２０に割り当てるために、ページ番号ｎをインクリメントする（Ｓ１３１８）。そして、インクリメントされた後のページ番号ｎが印刷データの全ページ数を超えるまで（Ｓ１３１９：Ｙｅｓ）、ページの分散方法を決定する処理を継続する（Ｓ１３１２〜Ｓ１３１８）。
【０１２９】
以上、本発明の第２実施形態に係る情報処理装置、プログラム、およびプログラムが記録された記録媒体について説明したが、本実施形態は以下の効果を奏する。
【０１３０】
印刷ジョブに含まれる印刷データをページごとに分割して複数のスレーブブレードに分散し並列にラスタライズ処理をさせるとともに、ページごとに実際に要したラスタライズ処理時間を保存する。そして、当該印刷ジョブを利用して再度ラスタライズ処理を行う場合に、保存したラスタライズ処理時間に基づいてページごとに分散させるスレーブブレードを決定する。これにより、ラスタライズ処理時間の実績に基づいてスレーブブレードへのラスタライズ処理の分散を最適化し、ブレードサーバーによるラスタライズ処理時間を短縮化することができる。
【０１３１】
また、平均ラスタライズ処理時間以上のラスタライズ処理時間の印刷データのページを優先して複数のスレーブブレードにページ番号順に分散させ、その後、それ以外のページをページ番号順に複数のスレーブブレードに分散させて並列にラスタライズ処理を行う。これにより、ページ番号順にラスタライズ処理を終了させるとともにラスタライズ処理時間を短縮化することができる。従って、再ラスタライズ処理と同時にリアルタイムでの印刷出力が要求される場合においても、ラスタライズ処理時間の短縮化を実現することができる。
【０１３２】
なお、印刷データのページのラスタライズ処理時間の長さによっては、ラスタライズ処理の終了順がページ番号順とならない場合もあり得る。しかし、その場合であってもラスタライズ処理時間を短縮化できるとともにラスタライズ処理の終了順をページ番号順に近づけることができ、ラスタライズ後の画像データをページ番号順に並び替えて印刷出力するためのバッファメモリのサイズを小さくすることができる。
【０１３３】
本発明に係る情報処理装置、プログラム、およびプログラムが記録された記録媒体は、上述した実施形態に限定されるものではない。
【０１３４】
例えば、図１０および図１３Ａ、Ｂに示されるフローチャートはプログラムにより実施されるものとして説明したが、プログラムの一部または全部をハードウェアに置き換えて実施されてもよい。
【０１３５】
また、ラスタライズ処理はスレーブブレードにより行われるものとして説明したが、マスターブレードによりラスタライズ処理が行われてもよい。
【０１３６】
また、ラスタライズ処理はページ単位でスレーブブレードに分散されるものとして説明したが、複数ページ単位またはバンド単位で分散されてもよい。この場合、複数ページ単位またはバンド単位でラスタライズ処理時間が計測され、計測されたラスタライズ処理時間に基づいてスレーブブレードへの分散方法が決定される。
【０１３７】
また、印刷データのすべてのページの分散方法の決定の後にスレーブブレードにページを送信するものとして説明したが、ページごとにスレーブブレードへの割り当てがされ次第、当該ページがスレーブブレードに送信されるようにしてもよい。
【０１３８】
また、第２実施形態においては、平均ラスタライズ処理時間以上のラスタライズ処理時間の印刷データのページを優先して複数のスレーブブレードに分散させるとして説明したが、平均ラスタライズ処理時間を調整可能な閾値に替えて実施することもできる。
【０１３９】
また、ブレードサーバーおよびエンジンはＭＦＰ（Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）により構成されてもよい。
【符号の説明】
【０１４０】
１    画像形成システム、
１０    ブレードサーバー、
２０    エンジン、
３０    クライアント端末、
１１０    マスターブレード、
１２０    スレーブブレード、
１３０    ＨＤＤ、
１２５    タイマー。
【図１】
0005846026.tif 000002
【図２】
0005846026.tif 000003
【図３】
0005846026.tif 000004
【図４】
0005846026.tif 000005
【図５】
0005846026.tif 000006
【図６】
0005846026.tif 000007
【図７】
0005846026.tif 000008
【図８】
0005846026.tif 000009
【図９】
0005846026.tif 000010
【図１０】
0005846026.tif 000011
【図１１】
0005846026.tif 000012
【図１２】
0005846026.tif 000013
【図１３Ａ】
0005846026.tif 000014
【図１３Ｂ】
0005846026.tif 000015