(57)【要約】【課題】複数の画像処理機構による並列処理を制御する制御装置において、一部の画像処理機構の画像処理が継続できなくなった場合でも、複雑な機器構成を必要とすることなく画像処理の効率化を図る印刷装置を提供すること。【解決手段】本発明に係る制御装置は、ジョブデータを分割して複数の画像処理手段に割り振る。サブデータを割り振る際に、サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する。サブデータが正常に処理されなかった場合、割振手段は、サブデータの割り振り時の記録に基づいて、当該サブデータを処理した画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る。【選択図】図５
2016155280.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像処理手段による並列処理を制御する制御装置において、
入力されたジョブデータをサブデータに分割する分割手段と、
サブデータを前記複数の画像処理手段に割り振る割振手段と、
サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する管理手段と、
サブデータが正常に処理されたかを判定する判定手段とを備え、
前記サブデータが正常に処理されなかった場合、前記割振手段は、前記記録に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする制御装置。
【請求項２】
前記サブデータが正常に処理されなかった場合、前記割振手段は、前記サブデータに含まれるものと同じ種類のオブジェクトデータを最も多く使用している画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする請求項１に記載の制御装置。
【請求項３】
前記複数の画像処理手段によるオブジェクトデータの使用状況を、画像処理手段ごとに評価する評価手段をさらに備え、
前記サブデータが正常に処理されなかった場合、前記割振手段は、前記評価に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする請求項１または２に記載の制御装置。
【請求項４】
前記評価手段は、前記サブデータに含まれるものと同じ種類のオブジェクトデータを再利用できる可能性が高い画像処理手段を、高く評価する
ことを特徴とする請求項３に記載の制御装置。
【請求項５】
前記オブジェクトデータの情報は、項目ごとに数値化された情報を含み、
前記評価手段は、項目ごとに数値化された前記情報を演算することにより、前記複数の画像処理手段による前記オブジェクトデータの使用状況を、画像処理手段ごとに評価する
ことを特徴とする請求項３または４に記載の制御装置。
【請求項６】
前記複数の画像処理手段をさらに備えることを特徴とする請求項１から５のいずれか１項に記載の制御装置。
【請求項７】
前記画像処理手段は、
前記サブデータからビットマップデータを生成するＲＩＰ処理部と、
前記サブデータに含まれる前記オブジェクトデータをキャッシュ保存するキャッシュ手段と、
生成された前記ビットマップデータを出力する出力手段とを備える
ことを特徴とする請求項６に記載の制御装置。
【請求項８】
前記出力手段は、前記サブデータの処理結果を含むレポートデータをさらに出力する
ことを特徴とする請求項７に記載の制御装置。
【請求項９】
前記サブデータの処理がエラーの場合、前記出力手段は、前記エラーの種類を特定する情報を含む前記レポートデータを出力する
ことを特徴とする請求項８に記載の制御装置。
【請求項１０】
前記判定手段は、前記レポートデータから、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段が、前記サブデータの処理が可能なエラーであるかを判定し、
前記割振手段は、前記サブデータの処理が可能なエラーであると判定された場合にのみ、前記サブデータを再度割り振る
ことを特徴とする請求項９に記載の制御装置。
【請求項１１】
前記判定手段は、前記レポートデータから、
生成されたビットマップデータの異常であると判定した場合、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段が、前記サブデータの処理が可能であると判定し、
前記複数の画像処理手段を構成するハードウェアの異常であると判定した場合、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段が、前記サブデータの処理が不可能であると判定する
ことを特徴とする請求項１０に記載の制御装置。
【請求項１２】
前記画像処理手段が処理をしたデータに基づいて、印刷をする印刷部をさらに備えることを特徴とする請求項１〜１０のいずれか１項に記載の画像形成装置。
【請求項１３】
複数の画像処理手段による並列処理を制御する制御方法において、
入力されたジョブデータをサブデータに分割する分割ステップと、
サブデータを前記複数の画像処理手段に割り振る割振ステップと、
サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する管理ステップと、
サブデータが正常に処理されたかを判定する判定ステップとを備え、
前記サブデータが正常に処理されなかった場合、前記割振ステップは、前記記録に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振る
ことを特徴とする制御方法。
【請求項１４】
コンピュータを、請求項１乃至請求項１１のいずれか１項に記載の制御装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の画像処理機構による並列処理を制御する制御装置、制御方法およびプログラムに関する。
【背景技術】
【０００２】
デジタル印刷分野では、印刷物の一部を可変データ部分とし、印刷物一部ごとに可変データ部分を異ならせて出力するバリアブルデータ印刷（Ｖａｒｉａｂｌｅ  Ｄａｔａ  Ｐｒｉｎｔ、以後「ＶＤＰ」と記す）が注目されている。ＶＤＰでは、標準言語としてのＰＰＭＬ（Ｐｅｒｓｏｎａｌｉｚｅｄ  Ｐｒｉｎｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ、以後「ＰＰＭＬ」と略す）が規定され、広く利用されている。ＰＰＭＬでは、ページを描画する要素として、繰り返し参照されるリユーサブルオブジェクトと、１度限り参照されるローカルオブジェクトとの２つがある。リユーサブルオブジェクトはページ内、ページ間またはジョブ間で、同じ描画オブジェクトをページ内、ページ間、またはジョブ間の複数箇所に配置する場合に用いられる。
【０００３】
通常、ローカルオブジェクトやリユーサブルオブジェクト等の描画オブジェクトは、ページ記述言語（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ、以後「ＰＤＬ」と記す）形式で記述されたソース描画データから生成される。代表的なＰＤＬとして、ＰｏｓｔＳｃｒｉｐｔ（登録商標、以後「ＰＳ」と記す）やＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ、以後「ＰＤＦ」と記す）などが存在する。ローカルオブジェクトやリユーサブルオブジェクトのソース描画データは、ラスタライズ処理（以後、「ＲＩＰ処理」と記す）と呼ばれる処理を経て、ラスタイメージ化された後にページ上に配置される。リユーサブルオブジェクトのように再利用されることが明確な場合は、ＲＩＰ処理によって生成されたラスタイメージをキャッシュし、キャッシュされたラスタイメージを再利用することで、非常に高速な描画処理が可能となる。なお、一般的にラスタイメージデータは、ビットマップデータなどと呼ばれる。
【０００４】
また、高解像度かつ高階調のカラーデータの場合、ラスタイメージは非常に大きなデータサイズとなるため、これらのラスタイメージをキャッシュするためには大容量のメモリが必要となる。そのため、ＶＤＰのなかには、ソース描画データからラスタイメージを生成する過程で出力されるディスプレイリスト（中間データ）を取得し、これをキャッシュするという方法も知られている。ディスプレイリストをキャッシュする方法では、ラスタイメージを取得するために、ディスプレイリストをレンダリングするための時間は残るが、キャッシュに必要なメモリ容量を大幅に削減することが可能となる。
【０００５】
ところで、近年は、複数のコアを単一パッケージに格納したマルチコア化が進んでいる。また、近年複数の印刷装置による分散処理化も進んでいる。マルチコアＣＰＵの性能を引き出すとともに、複数の印刷装置による分散処理を効率よく行うために、ＶＤＰを含むＰＤＬデータの並列処理のための方法が複数提案されている。
【０００６】
例えば、複数のジョブを同時並行してＲＩＰ処理するジョブ並列処理方式や、単一ジョブ内の複数ページを同時並行してＲＩＰ処理するページ並列処理方式などが提案されている。このような並列処理方式によるＲＩＰ処理を行う場合、再利用されるキャッシュデータとＲＩＰ処理との対応付けを適切に行わないと、ＲＩＰ処理の並列化の効果が低くなるという課題がある。
【０００７】
このような課題に対し、特許文献１では、複数の画像処理機構が１つのキャッシュメモリを共有し、複数の画像処理機構によるＲＩＰ処理の効率化を図った画像処理装置が提案されている。
【０００８】
また、特許文献２では、ジョブを各画像処理機構に割り振る際に、ある種類のジョブを処理した画像処理機構に、同じ種類のジョブを割り振るように制御する機構を備える印刷制御装置が提案されている。
【０００９】
しかしながら、特許文献１、２によれば、複数の画像処理機構が並列処理を行う印刷装置において、一部の画像処理機構のＲＩＰ処理が継続できなくなった場合、印刷装置全体の印刷処理が継続できなくなるおそれが生じるという新たな課題が生じる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１２−２００９５５号公報
【特許文献２】特開２０１３−１６１０９６号公報
【特許文献３】特開２００９−２５５３５６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
この点、特許文献３では、一部の画像処理機構がＲＩＰ処理を継続することができなくなっても、他の画像処理機構がＲＩＰ処理を引き継ぐことにより、装置全体の印刷処理を継続する機能を備える画像処理装置が提案されている。
【００１２】
しかしながら、複数の画像処理機構が並列処理を行う印刷装置において、特許文献３に開示されている機能を実現するために、以下のような課題が生じていた。
【００１３】
まず、一部の画像処理機構がＲＩＰ処理を継続することができなくなった場合、他の画像処理機構にＲＩＰ処理を引き継がせるためには、画像処理機構間でデータを受け渡しするための通信経路を設ける必要が生じていた。さらに、画像処理機構間で受け渡しするデータが、中間データなどのキャッシュデータであった場合、印刷装置に共有キャッシュメモリなどのキャッシュデータを共有する機構を設ける必要が生じていた。このような通信経路や共有キャッシュメモリを設けることは、印刷装置の機器構成が複雑となり、コストの増大を招来していた。
【課題を解決するための手段】
【００１４】
本発明に係る制御装置は、複数の画像処理手段による並列処理を制御する制御装置において、入力されたジョブデータをサブデータに分割する分割手段と、サブデータを前記複数の画像処理手段に割り振る割振手段と、サブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理手段とを対応付けて記録する管理手段と、サブデータが正常に処理されたかを判定する判定手段とを備え、前記サブデータが正常に処理されなかった場合、前記割振手段は、前記記録に基づいて、前記サブデータを処理できなかった画像処理手段とは異なる他の画像処理手段に対して、前記サブデータを再度割り振ることを特徴とする。
【発明の効果】
【００１５】
本願は上述の課題に鑑みてなされたものである。すなわち、複数の画像処理機構による並列処理を制御する制御装置において、一部の画像処理機構の画像処理が継続できなくなった場合でも、複雑な機器構成を必要とすることなく画像処理の効率化を図る制御装置を提供する。
【図面の簡単な説明】
【００１６】
【図１】実施形態１における、システムの全体構成を示す概略図である。
【図２】実施形態１における、端末および印刷装置のハードウェア構成を示すブロック図である。
【図３】実施形態１における、機能構成を示すブロック図である。
【図４】実施形態１における、制御部の処理内容を示すフローチャートである。
【図５】実施形態１における、制御部の処理内容をジョブデータの遷移例と共に示した図である。
【図６】実施形態１における、記録テーブルに記録される内容を示す図である。
【図７】実施形態１における、分割ジョブデータの再度の割り振り先を決定する処理内容を示すフローチャートである。
【図８】実施形態１における、制御部のリトライ処理内容を分割ジョブデータの遷移例と共に示した図である。
【図９】実施形態２における、記録テーブルに記録される内容を示す図である。
【図１０】実施形態２における、分割ジョブデータの再度の割り振り先を決定する処理内容を示すフローチャートである。
【図１１】実施形態２における、中間データをキャッシュ保存するか否かの判定処理内容を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の好適な実施の形態について図面を参照して説明する。但し、この実施の形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらに限定する趣旨のものではない。また、実施形態で説明されている構成要素の組み合わせのすべてが、課題を解決するための手段に必須のものとは限らない。本明細書において「印刷装置」とは、画像形成機能に特化した専用機に限らず、印刷機能とその他の機能を複合した複合機や、記録用紙等の媒体に画像やパターンを形成する製造装置等も含まれる。
【００１８】
［実施形態１］
図１は、本実施形態における、端末１００と、印刷装置２００との接続構成を示す概略図である。端末１００と、印刷装置２００とは、ネットワークを介して相互に通信可能に接続されている。本実施形態においては、端末１００として、ＰＣ（パーソナルコンピュータ）などの情報機器が用いられる。印刷装置２００は、少なくとも画像形成機能を有する印刷装置や複合機などとすることができる。
【００１９】
図２は、本実施形態における端末１００および印刷装置２００のハードウェア構成を示すブロック図である。端末１００のＣＰＵ１０１は、バス１０８を介して相互に接続された端末１００の各部を制御する制御部であり、端末１００の全体を統括制御する。ＲＯＭ１０２は、制御プログラムや各種の情報を格納する。ＣＰＵ１０１は、ＲＯＭ１０２に格納されている制御プログラムに基づいて、端末１００に関する各種の動作を実行する。なお、このような制御プログラムは、ＲＯＭ１０２に格納されているものに限らず、ＣＤ−ＲＯＭ等による外部の記憶媒体に記憶されているものでもよい。さらにこれを専用の読取装置によって、端末１００のＲＡＭ１０３に読み取り、ＲＡＭ１０３をワークメモリとしてＣＰＵ１０１が制御プログラムを実行するようにしてもよい。ＨＤＤ(Hard Disk Drive)１０４は、端末１００の補助記憶装置であり、各種データを格納することができる。
【００２０】
端末１００の入力装置１０５は、例えばキーボードやポインティング装置等である。表示装置１０６は、例えば液晶ディスプレイ等であり、印刷装置２００に出力させるための画像を表示することができる。外部接続インターフェース（以下インターフェースは「Ｉ／Ｆ」と記す）１０７は、端末１００と印刷装置２００とを接続するインターフェースであり、端末１００は、外部接続Ｉ／Ｆ１０７を介してジョブデータなどの各種データを送受信する。
【００２１】
印刷装置２００は、外部接続Ｉ／Ｆ２１４を介して、端末１００から送信されるジョブデータなどの各種データを受信する。
【００２２】
印刷装置２００のＣＰＵ２１１は、相互に接続された印刷装置２００の各部を制御する制御部であり、印刷装置２００の全体を統括制御する。プログラムＲＯＭ２１２は、制御プログラムや各種の情報を格納する。ＣＰＵ２１１は、プログラムＲＯＭ２１２に格納されている制御プログラムに基づいて、印刷装置２００に関する各種の動作を実行する。ワークＲＡＭ２１３は、外部接続Ｉ／Ｆ２１４を介して取得したジョブデータなどの各種情報を一時記憶する領域である。また、後述する画像処理制御部によって分割されたジョブデータである、分割ジョブデータを一時記憶する領域でもある。
【００２３】
印刷装置２００のイメージＲＡＭ２１５は、後述する画像処理部がジョブデータから生成したビットマップデータなどの各種情報を記憶する領域である。本実施形態においては、ＣＰＵ２１１と、プログラムＲＯＭ２１２と、ワークＲＡＭ２１３と、イメージＲＡＭ２１５と、外部接続Ｉ／Ｆ２１４と、ドライバ２１６とは、印刷装置２００における制御部２１０として機能する。
【００２４】
印刷装置の操作パネル２２０は、例えばタッチパネルディスプレイ等から構成され、ユーザからの操作を受け付けることにより、所望の処理を印刷装置２００に実行させることができる。操作パネル２２０は、印刷装置２００の状態表示や、警報を表示することもできる。
【００２５】
プリントエンジン２３０は、ドライバ２１６を介してＣＰＵ２１１によって制御される。プリントエンジン２３０は、制御部２１０から受信したビットマップデータに対して色変換などの所定の処理を加えた後、印刷用紙などに対して印刷する処理を実行する印刷部である。プリントエンジン２３０はインクタンクと、印刷ヘッドなどから構成されるインクジェット方式のものであってもよいし、電子写真方式によるものであってもよい。
【００２６】
図３は、本実施形態における印刷装置２００の機能構成を示すブロック図である。本実施形態の印刷装置２００は、端末１００から受信するジョブデータを処理し、ジョブデータからビットマップデータを生成する。さらに、生成したビットマップデータによって構成される画像を、印刷用紙等の媒体に印刷を行う処理を、プリンタエンジン２３０に実行させる。
【００２７】
印刷装置２００における制御部２１０は、画像処理制御部２４０と、記録テーブル２５０と、画像処理部２６０〜２８０と、スプール部２９０とから構成され、端末１００から受信したジョブデータを処理し、印刷用のビットマップデータを生成する。より具体的には、制御部２１０が端末１００からジョブデータを受信すると、解析部２４２は、受信したジョブデータの内容を解析する。分割部２４３は、解析したジョブデータを、分割ジョブデータに分割する。割振部２４４は、分割ジョブデータを、複数の画像処理部２６０〜２８０のいずれかに割り振る。本実施形態においては、分割部２４３は、ジョブデータをページ単位の分割ジョブデータに分割する。画像処理部２６０〜２８０は、分割ジョブデータを並列処理することができ、割振部２４４は複数の画像処理部２６０〜２８０のいずれかに割り振る。
【００２８】
ここで、割振部２４４は各種の振分方法によって分割ジョブデータを割り振ることができる。例えば、あらかじめ定められた固定的な順序によって分割ジョブデータを複数の画像処理部２６０〜２８０に振り分る方法であってもよい。また、画像処理部２６０〜２８０のうちいずれかが、割り振られた分割ジョブデータの処理が終了する毎に、割振部２４４が新たな分割ジョブデータを当該画像処理部に新たに割り振る方法であってもよい。上記は分割ジョブデータの割振方法の一例であり、他の振分方法を用いてもよい。分割ジョブデータの割り振りと同時に、画像処理制御部２４０の管理部２４１は、分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部２６０〜２８０とを対応付けて、記録テーブル２５０に記録する。オブジェクトデータの情報については、図６において後述する。
【００２９】
本実施形態では、画像処理制御部２４０は、印刷装置２００にプログラムとしてインストールされている態様について説明するが、外部接続Ｉ／Ｆ２１４を介して印刷装置２００と接続されているコンピュータ装置に構築されていてもよい。
【００３０】
画像処理部２６０〜２８０は、ＲＩＰ処理部２６１，２７１，２８１をそれぞれ有し、割り振られた分割ジョブデータを受信すると所定の処理を実行する。画像処理部２６０〜２８０が分割ジョブデータを処理することにより、レンダリング後のビットマップデータデータを生成する。さらに、画像処理部２６０〜２８０は、出力部２６３，２７３，２８３をそれぞれ有し、生成されたビットマップデータを画像処理制御部２４０に出力する。
【００３１】
ここで、ＲＩＰ処理とは、ジョブデータを解釈し、ジョブデータに含まれる描画命令に基づいてレンダリング処理を実行し、ビットマップデータを生成する一連の処理をいう。また、ＲＩＰ処理におけるレンダリング処理の過程で、中間データが出力される。画像処理部２６０〜２８０は、上記中間データをキャッシュメモリに保存するキャッシュ部２６２，２７２，２８２をそれぞれ有する。また、本実施形態では、キャッシュ部２６２〜２８２は、分割ジョブデータに含まれるオブジェクトデータをキャッシュメモリに保存することもできる。本実施形態においては、キャッシュ部２６２〜２８２はそれぞれ独立したキャッシュメモリを有し、所定のタイミングにおいて各キャッシュ部が中間データ乃至オブジェクトデータをキャッシュメモリに保存するキャッシュ処理を実行する。
【００３２】
ＲＩＰ処理部２６１〜２８１は、キャッシュメモリに保存されている中間データ乃至オブジェクトデータを処理することにより、レンダリング処理の一部または全部を省略することができ、ＲＩＰ処理全体の高速化を図ることができる。
【００３３】
さらに、出力部２６３〜２８３は、レンダリング後のビットマップデータに加えて、分割ジョブデータのＲＩＰ処理の処理結果を含むレポートデータを、画像処理制御部２４０に出力する。本実施形態におけるレポートデータは、前記分割ジョブデータが正常に処理されたか、すなわちエラーの有無を示す情報を含む。さらに、エラーが有った場合には、生成されたビットマップデータの異常か、または複数の画像処理部２６０〜２８０を構成するハードウェアの異常か、などのエラーの種別を示す情報を含むことができる。
【００３４】
画像処理制御部２４０は、画像処理部２６０〜２８０からレンダリング後のビットマップデータを受信すると、受信したビットマップデータをスプール部２９０に格納し、その後ビットマップデータをプリントエンジン２３０へ送信する。なお、スプール部２９０は、図２に示すイメージＲＡＭ２１５の記憶領域をビットマップデータの記憶領域として利用する。
【００３５】
本実施形態において、画像処理部２６０〜２８０は、それぞれ独立したハードウェア（例えば、回路など）として印刷装置内部に構成される態様について説明するが、単一のハードウェア上に各処理部が論理的に区画されて構築される態様であってもよい。
【００３６】
図４は、本実施形態における印刷装置２００の制御部２１０の処理内容を示すフローチャートである。以下図４を参照して、制御部２１０の処理内容について説明する。Ｓ２０１において、画像処理制御部２４０が端末１００からジョブデータを受信する。Ｓ２０２において、解析部２４２は、受信したジョブデータを解析する。次いで、分割部２４３は、解析結果に基づいてジョブデータを分割ジョブデータに分割して、それらの割り振り先を決定する。なお、本実施形態における分割ジョブデータは、ジョブデータから、ジョブデータと同様の構成で複数に分割されたデータのことを言い、一つのジョブデータに対応するサブデータであると言える。
【００３７】
Ｓ２０３において、割振部２４４は、分割ジョブデータを各画像処理部２６０〜２８０に割り振る。次いで、Ｓ２０４において、管理部２４１は、ジョブデータを分割する際に得られた各分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部２６０〜２８０とを対応付けて記録テーブル２５０に記録する。
【００３８】
画像処理部２６０〜２８０が、分割ジョブデータからビットマップデータを生成する処理を終えると、Ｓ２０５に移行する。Ｓ２０５において、画像処理制御部２４０は、画像処理部２６０〜２８０の出力部２６３〜２８３から、ビットマップデータと、レポートデータとを受信する。次いで、判定部２４５は、受信したレポートデータに基づいて、画像処理部２６０〜２８０が分割ジョブデータに対する処理を正常に終了したかを判定する。
【００３９】
判定部２４５が、分割ジョブデータに対する処理を正常に終了したと判定した場合（Ｓ２０５：Ｙｅｓ）、管理部２４１は、処理を行った分割ジョブデータの情報を記録テーブル２５０に記録する（Ｓ２０６）。そして、画像処理制御部２４０は、生成されたビットマップデータをスプール部２９０に保存し、Ｓ２０７に移行する。一方、判定部２４５が、分割ジョブデータに対する処理を正常に終了していないと判定した場合（Ｓ２０５：Ｎｏ）、Ｓ２０９の処理に移行する。
【００４０】
Ｓ２０７において、次の分割ジョブデータが存在する場合は再びＳ２０３に移行し（Ｓ２０７：Ｙｅｓ）、次の分割ジョブデータが存在しない場合はＳ２０８に移行する（Ｓ２０７：Ｎｏ）。さらにＳ２０８において次のジョブデータが存在する場合は再びＳ２０１に移行し（Ｓ２０８：Ｙｅｓ）、制御部２１０による画像処理を継続する。
【００４１】
Ｓ２０９において、判定部２４５はさらにＳ２０５でのエラーの内容を判定する。判定部２４５は、出力部２６３〜２８３が出力したレポートデータに含まれるエラー情報に基づいて、当該エラーがリトライ可能エラーかを判定する。具体的には、判定部２４５は、レポートデータに含まれるエラー情報から、分割ジョブデータを処理した画像処理部とは異なる他の画像処理部が、当該分割ジョブデータの処理が可能であるか否かを判定する。
【００４２】
判定部２４５がリトライ可能エラーと判定した場合（Ｓ２０９：Ｙｅｓ）、Ｓ２１０に移行する。本実施形態では、例えば、画像処理部２６０〜２８０のうち一部が障害を発生しているものの、残りの一部によって画像処理を継続できる状態（縮退動作中）である場合、判定部２４５はリトライ可能エラーと判定する。このとき、制御部２１０は、画像処理部２６０〜２８０のうち一部が障害を発生しているものの、残りの一部によって画像処理を継続できる状態（縮退動作中）である警告表示を、操作パネル２２０に表示させる処理を実行する（Ｓ２１０）。一方、判定部２４５がリトライ可能エラーと判定しなかった場合（Ｓ２０９：Ｎｏ）、Ｓ２１３の処理に移行する。
【００４３】
Ｓ２１１において、割振部２４４は、記録テーブル２５０の対応関係を参照し、前回分割ジョブデータを処理した画像処理部とは異なる他の画像処理部に対して、当該分割ジョブデータを再度割り振る。このとき、割振部２４４は、当該分割ジョブデータが再度の割り振りに係るものであることを意味するリトライフラグを付加して（Ｓ２１２）、当該分割ジョブデータを、再度の割り振り先の画像処理部に対して送信する。
【００４４】
判定部２４５がリトライ可能エラーと判定しなかった場合（Ｓ２０９：Ｎｏ）、Ｓ２１３において、制御部２１０は、ジョブエラーであるエラー表示を、操作パネル２２０に表示させる処理を実行する。本実施形態では、例えば、割振部２４４がいずれの画像処理部２６０〜２８０に分割ジョブデータを割り振っても、分割ジョブデータの処理を継続することが不可能であると判定された場合（Ｓ２０９：Ｎｏ）、判定部２４５はジョブエラーであると判定する。
【００４５】
Ｓ２１４において、管理部２４１は、処理を行うことができなかった分割ジョブデータの情報と、当該処理がエラーであった情報とを記録テーブル２５０に記録する（Ｓ２１４）。その後、Ｓ２０８に移行する。
【００４６】
Ｓ２０８において次のジョブデータが存在しない場合は、処理を終了する（Ｓ２０８：Ｎｏ）。本実施形態においては、Ｓ２１４の処理の後に再びＳ２０８に移行する態様について説明したが、ジョブデータの処理自体を中止してもよい。ジョブデータ全体の処理を終了するか、またはエラーが発生したジョブデータに係るページのみの処理を中止するかは、予め設定によって決定してもよいし、操作パネル２２０または端末１００で受け付けた設定に従ってもよい。
【００４７】
図５は、図４のフローチャートにおけるＳ２０１〜Ｓ２０４の処理内容を、ジョブデータの遷移例と共に示した図である。本実施形態におけるジョブデータ３００は、オブジェクトデータ（３１１〜３１６）と、ページ情報データ（３２１〜３２６）とから構成される。
【００４８】
オブジェクトデータ３１１〜３１６は、ＶＤＰにおける可変データ部分に相当する。本実施形態において、オブジェクトデータ３１１〜３１６は、ジョブデータ３００全体で必要なフォントを描画する要素であるフォントオブジェクトデータ３１１〜３１２と、画像を描画する要素である画像オブジェクトデータ３１３〜３１６とを有する。他の実施形態では、例えばカラープロファイルや、タイルパターンなどの、その他描画する要素をオブジェクトデータとしてもよい。
【００４９】
ページ情報データ３２１〜３２６は、本実施形態において、オブジェクトデータ３１１〜３１６を使用してページ単位での描画内容を規定するためのデータである。本実施形態において、ページ情報データ３２１〜３２６はそれぞれ独立した６ページ分を有するものを例に挙げて説明するが、ページ数はこれに限られない。
【００５０】
ＶＤＰ、ＰＳ、またはＰＤＦなどのオブジェクトを使用するＰＤＬ（ページ記述言語）では、オブジェクトデータをページ情報データとは独立して保持することにより、使用される共通のオブジェクトデータを重複して保持する必要がない。そのため、ジョブデータ全体のデータサイズを削減することができる。例えば、図５の例で説明すると、１ページ目のページ情報データ３２１には、オブジェクトデータＡ（３１１）と、オブジェクトデータＣ（３１３）とが含まれている。
【００５１】
図４のフローチャートにおいて、解析部２４２は、受信したジョブデータ３００を解析し、分割部２４３は、各ページ単位での画像処理に必要なオブジェクトデータを含むように、分割ジョブデータ３３０〜３８０にそれぞれ分割する（Ｓ２０２）。このとき、分割部２４３は、ジョブデータをページ記述言語の形式に沿った分割ジョブデータ３３０〜３８０に分割する。さらに、本実施形態では、分割ジョブデータ３３０〜３８０はそれぞれ１つのページ情報データと、当該分割ジョブデータの画像処理に必要なオブジェクトデータのみを保持するデータに分割される。図５の例においては、ジョブデータ３００は、６ページ構成となっている。そのため、分割部２４３は、６つの独立したページ情報データ３２１〜３２６を含む、６つの分割ジョブデータ３３０〜３８０に分割する。
【００５２】
分割ジョブデータ３３０は、１ページ目の分割ジョブデータであり、１ページ目のページ情報データ３２１と、対応するオブジェクトデータ３１１、３１３とから構成されるページ記述言語データである。以下同様に、分割ジョブデータ３４０〜３８０は、２ページ目〜６ページ目の分割ジョブデータであり、それぞれ２ページ目〜６ページ目のページ情報データと、対応するオブジェクトデータとから構成されるページ記述言語データである。各分割ジョブデータ３３０〜３８０は、１ページ分の画像処理に必要なデータを含むページ記述言語データであり、各分割ジョブデータ３３０〜３８０は等価なデータとなる。
【００５３】
図４のフローチャートにおいて、割振部２４４は、分割ジョブデータ３３０〜３８０を画像処理部２６０〜２８０に割り振る（Ｓ２０３）。本実施形態では、割振部２４４は、６つの分割ジョブデータ３３０〜３８０を、３つの画像処理部２６０〜２８０に対して、ページ番号順にラウンドロビン方式で割り振る。具体的には、分割部２４３は、分割ジョブデータ３３０，３６０を画像処理部１（２６０）に対して、分割ジョブデータ３４０，３７０を画像処理部２（２７０）に対して、分割ジョブデータ３５０，３８０を画像処理部３（２８０）に対して割り振る。ラウンドロビン方式の割り振り以外にも、ジョブデータ３００の内容を解析して、画像処理部２６０〜２８０の間で処理負荷を均等にする方式や、分割ジョブデータ３３０〜３８０のデータサイズを均等にする方式など、各種方式を採用することができる。
【００５４】
次いで、図４のフローチャートにおいて、管理部２４１は、ジョブデータを分割する際に得られた各分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部２６０〜２８０とを対応付けて記録テーブル２５０に記録する（Ｓ２０４）。
【００５５】
図６は、本実施形態における記録テーブル２５０に記録される内容を示す図である。管理部２４１は、画像処理部２６０〜２８０に付与されたＩＤと、ジョブデータ３００に付与されたＩＤと、ページ情報データ３２１〜３２６のＩＤと、分割ジョブデータ３３０〜３８０のオブジェクトデータ３１１〜３１６のＩＤとの対応関係を記録する。すなわち、記録テーブル２５０に、各画像処理部と、ジョブデータと、それぞれに割当てられた分割ジョブデータとが関連付けて管理されている。
【００５６】
なお、図６に示される記録テーブル２５０の例では、画像処理部２６０がＩＤ「画像処理部１」、画像処理部２７０がＩＤ「画像処理部２」、画像処理部２８０がＩＤ「画像処理部３」と記録されている。また、ジョブデータ３００のＩＤが「ＪｏｂＡ」、ページ情報データ３２１〜３２６のＩＤが「Ｐａｇｅ１」〜「Ｐａｇｅ６」、オブジェクトデータ３１１〜３１６のＩＤが「ＯｂｊＡ」〜「ＯｂｊＦ」と記録されている。
【００５７】
本実施形態ではさらに、オブジェクトデータの情報に対応付けて、分割ジョブデータの状態情報（「処理中」「処理済」「エラー」など）が記憶される。具体的には、割振部２４４が、オブジェクトデータ３１１を含む分割ジョブデータを割り振ったときに（Ｓ２０３）、管理部２４１はオブジェクトデータ３１１（ＯｂｊＡ）について「処理中」を記録テーブル２５０に記録する。判定部２４５が、オブジェクトデータ３１１を含む分割ジョブデータに対する処理が正常に終了したと判定した場合（Ｓ２０５：Ｙｅｓ）、管理部２４１はオブジェクトデータ３１１（ＯｂｊＡ）について「処理済」を記録テーブル２５０に記録する。判定部２４５が、オブジェクトデータ３１１を含む分割ジョブデータに対する処理が正常に終了していない判定した場合（Ｓ２０５：Ｎｏ）、管理部２４１はオブジェクトデータ３１１（ＯｂｊＡ）について「エラー」を記録テーブル２５０に記録する。なお、割振部２４４による分割ジョブデータの割り振りが行われる都度、管理部２４１は分割ジョブデータの種類と、割り振り先の画像処理部の種類との対応関係を記録テーブル２５０に記録する。
【００５８】
本実施形態における記録テーブル２５０では、各画像処理部２６０〜２８０のレコードの最大数が定義される。そして、管理部２４１が新たなレコードをする際に、記録テーブル２５０に記録されている当該画像処理部の古いレコードから順次削除される。これにより、画像処理制御部２４０は、各画像処理部２６０〜２８０が、分割ジョブデータに含まれるいずれのページ情報データおよびいずれのオブジェクトデータを処理するかを、記録テーブル２５０を参照することで把握することができる。
【００５９】
図７は、本実施形態において、割振部２４４が分割ジョブデータの再度の割り振り先を決定する処理内容（Ｓ２１１）を示すフローチャートである。以下、割振部２４４が分割ジョブデータの再度の割り振り先を決定する処理内容について、図７を参照して説明する。
【００６０】
Ｓ３０１において、記録テーブル２５０の対応関係を参照し、エラーとなった分割ジョブデータに含まれるオブジェクトデータの情報を取得する。
【００６１】
Ｓ３０２において、Ｓ３０１で取得したオブジェクトデータの情報から、当該オブジェクトデータを使用している画像処理部を検索する。
【００６２】
Ｓ３０３において、当該オブジェクトデータを使用している他の画像処理部が１つのみかを判定する。該当する画像処理部が１つのみであった場合（Ｓ３０３：Ｙｅｓ）、Ｓ３０５に移行する。一方、該当する画像処理部が複数存在している場合（Ｓ３０３：Ｎｏ）、Ｓ３０４において、該当する画像処理部の候補から、当該オブジェクトデータを最も多く使用している画像処理部を選択する。
【００６３】
次いで、Ｓ３０５において、割振部２４４は、エラーとなった分割ジョブデータの再割り振り先を決定する。
【００６４】
画像処理部２６０〜２８０のＲＩＰ処理部２６１〜２８１は、割り振られた分割ジョブデータ３３０〜３８０からビットマップデータを生成するＲＩＰ処理を実行する。画像処理部２６０〜２８０のキャッシュ部２６２〜２８２は、分割ジョブデータ３３０〜３８０からビットマップデータを生成する過程で出力される中間データをキャッシュする。このとき、キャッシュ部２６２〜２８２は、分割ジョブデータ３３０〜３８０に含まれるオブジェクトデータ３１１〜３１６についてもキャッシュする。これにより、次回同一のオブジェクトデータが含まれる分割ジョブデータを処理する際に、オブジェクトデータの処理を省略し、画像処理部２６０〜２８０は処理を高速に行うことができる。
【００６５】
キャッシュ部２６２〜２８２は、それぞれ独立したキャッシュメモリを有しているが、各キャッシュメモリのデータ記憶領域は有限であるため、生成された中間データ乃至オブジェクトデータは古いものから順次消去される。そのため、各画像処理部２６０〜２８０の中間データ乃至オブジェクトデータのキャッシュ保存状況と、記録テーブル２５０に記録されているオブジェクトデータの情報とは、同期していることが望ましい。本実施形態においては、画像処理部２６０〜２８０に対応するオブジェクトデータの情報の最大記録数を、キャッシュメモリに保存することができるオブジェクトデータの数の概算値と同じ程度、記録テーブル２５０に記録させることができる。かかる構成により、管理部２４１が記録テーブル２５０に当該オブジェクトデータの情報を同期して記録させるための特別な機構を簡略化することができる。
【００６６】
図８は、本実施形態における、制御部２１０のリトライ処理内容を分割ジョブデータの遷移例と共に示した図である。以下、図８を参照して制御部２１０のリトライ処理内容を説明する。
【００６７】
割り振られた分割ジョブデータ３３０〜３８０は、それぞれ画像処理部２６０〜２８０によって処理される。このとき、画像処理部３（２８０）に割り振られた分割ジョブデータ３８０の処理において、エラーが発生した場合、画像処理部３（２８０）は、分割ジョブデータ３８０の処理結果を含むレポートデータを、画像処理制御部２４０に出力する。
【００６８】
画像処理制御部２４０の判定部２４５は、出力されたレポートデータの内容に基づいて、画像処理部３（２８０）に割り振られた分割ジョブデータ３８０の処理において、エラーが発生したことを判定する（Ｓ２０５：Ｎｏ）。次いで、判定部２４５は、レポートデータに含まれるエラーの種類に基づいて、分割ジョブデータ３８０を処理した画像処理部３（２８０）とは異なる他の画像処理部が、分割ジョブデータ３８０を処理することが可能かを判定する（Ｓ２０９）。
【００６９】
図８に示される例では、他の画像処理部が分割ジョブデータ３８０を処理することが可能と判定されたことを示している（Ｓ２０９：Ｙｅｓ）。このとき制御部２１０は、画像処理部２６０〜２８０のうち一部が障害を発生しているものの、残りの一部によって画像処理を継続できる状態（縮退動作中）である警告表示を、操作パネル２２０に表示させる処理を実行する（Ｓ２１０）。
【００７０】
次いで、割振部２４４は、記録テーブル２５０の記録を参照し、前回分割ジョブデータを処理した画像処理部とは異なる他の画像処理部に対して、当該分割ジョブデータを再度割り振る（Ｓ２１１）。このとき、割振部２４４は、分割ジョブデータ３８０と対応付けられているオブジェクトデータの情報を取得する。
【００７１】
図６の例において、画像処理部３（２８０）が分割ジョブデータ３８０の処理を行った処理内容は、「画像処理部３：ＪｏｂＡ：Ｐａｇｅ６」というデータ形式で記録テーブル２５０に記録されている。さらに、記録テーブル２５０には、「画像処理部３：ＪｏｂＡ：Ｐａｇｅ６」と「ＯｂｊＢ」との対応関係と、「画像処理部３：ＪｏｂＡ：Ｐａｇｅ６」と「ＯｂｊＢ」との対応関係とがそれぞれ記録されている。
【００７２】
次いで、割振部２４４は、記録テーブル２５０に記録されているオブジェクトデータの情報から、当該オブジェクトデータを使用している画像処理部を検索する（Ｓ３０２）。
【００７３】
図６の例において、「ＯｂｊＢ」を使用している画像処理部は「画像処理部１：ＪｏｂＡ：Ｐａｇｅ４」と、「画像処理部２：ＪｏｂＡ：Ｐａｇｅ２」であることが記録テーブル２５０に記録されている。同様に、「ＯｂｊＣ」を使用している画像処理部は「画像処理部１：ＪｏｂＡ：Ｐａｇｅ１」であることが記録テーブル２５０に記録されている。すなわち、割振部２４４は、オブジェクトデータ３１２が、分割ジョブデータ３４０と３６０とに含まれており、それぞれ画像処理部２（２７０）と、画像処理部１（２６０）とによって使用されていることを検索結果として特定することができる。同様に、割振部２４４は、オブジェクトデータ３１３が、分割ジョブデータ３３０に含まれており、画像処理部１（２６０）によって使用されていることを検索結果として特定することができる。
【００７４】
図６の例では、「画像処理部１：ＪｏｂＡ：Ｐａｇｅ１」と、「画像処理部２：ＪｏｂＡ：Ｐａｇｅ２」、すなわち、２つの画像処理部２６０，２７０がオブジェクトデータを使用している画像処理部として特定されている。そのため、割振部２４４は、該当する画像処理部の候補から、エラーとなった分割ジョブデータに含まれるオブジェクトデータの情報を、最も多く使用している画像処理部を選択する。本実施形態では、画像処理部１（２６０）が、オブジェクトデータ３１２とオブジェクトデータ３１３を含む分割ジョブデータを処理し、画像処理部２（２７０）が、オブジェクトデータ３１２を含む分割ジョブデータ３４０を処理している。そのため、割振部２４４は、使用するオブジェクトデータの数が最も多い画像処理部として、画像処理部１（２６０）を選択する（Ｓ３０４）。次いで、割振部２４４は、画像処理部１（２６０）を、分割ジョブデータ３８０の再割り振り先と決定する（Ｓ３０５）。
【００７５】
次いで、割振部２４４は、決定した再割り振り先の画像処理部１（２６０）に対して、分割ジョブデータ３８０を送信する。このとき、再度割り振られた分割ジョブデータであるかを各画像処理部に通知するために、割振部２４４は、リトライフラグを分割ジョブデータ３８０に付加する（Ｓ２１２）。画像処理部２６０〜２８０は、各画像処理部が処理中の分割ジョブデータの種類と、リトライフラグが付加された分割ジョブデータの種類とを比較し、各分割ジョブデータの処理順を並び替えることができる。これにより、双方の分割ジョブデータに共通で含まれるオブジェクトデータを連続して参照して処理することにより、各画像処理部のキャッシュメモリに保存されているオブジェクトデータの利用率を向上させることができる。
【００７６】
また、図６の例において、画像処理部３（２８０）は、分割ジョブデータ３８０の処理結果がエラーであった場合、当該エラーの種類をさらに含むレポートデータを出力する。レポートデータに含まれるエラーの種類として、メモリ不足エラー、空きディスク容量不足エラー、または画像処理部固有のエラー等が挙げられる。判定部２４５は、レポートデータに含まれるこれらのエラーの種類に基づいて、分割ジョブデータ３８０を処理した画像処理装置３（２０８）とは異なる他の画像処理部２６０，２７０が、分割ジョブデータ３８０の処理が可能であるかを判定することができる。
【００７７】
また、本実施形態においては、画像処理制御部２４０は、分割ジョブデータの再割り振りを行う際に、オブジェクトデータが、全てキャッシュされているかは正確に判別することができない。しかし、上記説明した通り、画像処理部２６０〜２８０のキャッシュメモリの容量に則して記録テーブル２５０のオブジェクトデータの情報の最大記録数を設定することができる。これにより、画像処理部２６０〜２８０が、再度割り当てられた分割ジョブデータを処理する際に、キャッシュメモリに保存されているオブジェクトデータを再利用する確率を高めることができる。
【００７８】
以上説明した通り、本実施形態における印刷装置は、複数の画像処理部のうち、一部の画像処理部の処理が継続できなくなった場合でも、オブジェクトデータの情報と割り振り先の画像処理部との対応関係に基づいて、分割ジョブデータを再度割り振る。このため、他の画像処理部へ処理を引き継ぐための通信経路や、キャッシュデータを共有するための共有キャッシュメモリなどの複雑な機器構成を必要とすることなく、処理の継続と処理の効率化を図ることができる。
【００７９】
［実施形態２］
実施形態１における印刷装置２００では、分割ジョブデータに含まれるオブジェクトデータの情報と、割り振り先の画像処理部との記録に基づいて、エラーとなった分割ジョブデータの再割り振り先を決定していた。本実施形態では、上記実施形態の特徴に加えて、オブジェクトデータの使用状況を画像処理部ごとに評価し、当該評価に基づいて、エラーとなった分割ジョブデータの再割り振り先を決定する。かかる構成により、各キャッシュメモリに保存されるオブジェクトデータの再利用性を向上させることができる。
【００８０】
図９は、本実施形態における記録テーブル２５０に記録される内容を示す図である。本実施形態におけるオブジェクトデータの情報は、状態フィールド２５１、データサイズフィールド２５２、および参照回数フィールド２５３に記録されるそれぞれの情報が相当する。
【００８１】
状態フィールド２５１には、実施形態１と同様に、分割ジョブデータの状態情報（「処理中」「処理済」「エラー」など）が記録される。
【００８２】
データサイズフィールド２５２には、オブジェクトデータのデータサイズ情報が記録される。なお、図９における記録テーブル２５０では、各オブジェクトデータのデータサイズとして、バイト単位でのデータサイズが記録される。
【００８３】
参照回数フィールド２５３には、当該オブジェクトデータが各画像処理部に割り振られた回数が記録される。管理部２４１は、分割ジョブデータの割り振りを実施する都度（Ｓ２０３）、分割ジョブデータに含まれるオブジェクトデータが対応する画像処理部に割り振られた回数を参照回数フィールドに記録する。
【００８４】
図１０は、本実施形態において、割振部２４４が分割ジョブデータの再度の割り振り先を決定する処理内容（Ｓ２１１）を示すフローチャートである。以下、割振部２４４が分割ジョブデータの再度の割り振り先を決定する処理内容について、図１０を参照して説明する。
【００８５】
図１０に示されるフローチャートにおいて、Ｓ４０１〜Ｓ４０３、およびＳ４０５の処理は、図７に示されるフローチャートにおける、Ｓ３０１〜Ｓ３０３、およびＳ３０５の処理と同一のため、説明を割愛する。
【００８６】
Ｓ４０４において、評価部２４６は、オブジェクトデータの使用状況を、候補となる画像処理部２６０〜２８０ごとに評価する。本実施形態においては、オブジェクトデータの情報は、状態フィールド２５１、データサイズフィールド２５２、参照回数フィールド２５３それぞれに記録される情報のように、項目ごとに数値化された情報を含む。評価部２４６は、項目ごとに数値化された情報を演算することにより、オブジェクトデータの使用状況を、画像処理部２６０〜２８０ごとに評価する。
【００８７】
評価部２４６は、画像処理部ごとにエラーとなったオブジェクトデータのポイントを算出する。評価部２４６は、合計ポイントが最も多い画像処理部を、エラーとなった分割ジョブデータに含まれるものと同じ種類のオブジェクトデータを処理するのに、最も適した画像処理部と評価する。次いで、割振部２４４は、評価部２４６の評価に基づいて、分割ジョブデータの再度の割り振り先となる画像処理部を選択する。
【００８８】
本実施形態においては、オブジェクトデータの情報から算出されたポイントが多いほど、対応する画像処理部が、キャッシュされたオブジェクトデータを再利用できる可能性が高くなるようにポイントが付与されている。そのため、評価部２４６は、分割ジョブデータに含まれるものと同じ種類のオブジェクトデータに対応するキャッシュデータを再利用できる可能性が高い画像処理部として、高く評価する。
【００８９】
状態フィールド２５１の付与ポイントについては、「処理中」に２ポイント、「処理済」に１ポイント、「エラー」に０ポイントがそれぞれ付与される。これは、分割データが処理中の状態であれば、当該分割データに含まれるオブジェクトデータがキャッシュメモリに保存されている可能性が高いため、状態フィールド２５１の中で最も多いポイントが付与される。一方、分割ジョブデータの状態がエラーであった場合、対応するオブジェクトデータの正当性を保証できないため、０ポイントが付与される。
【００９０】
データサイズフィールド２５２の付与ポイントについては、オブジェクトデータのデータサイズが大きいものについては優先して中間データをキャッシュ保存させるため、データサイズ値がそのままポイントとして付与される。
【００９１】
参照回数フィールド２５３の付与ポイントについては、オブジェクトデータの参照回数が多いものについては繰り返し処理が行われるため、参照回数がそのままポイントとして付与される。
【００９２】
本実施形態では、評価部２４６は、状態フィールド２５１、データサイズフィールド２５２、参照回数フィールド２５３それぞれで付与されたポイントを掛け合わせ、算出された総ポイントに基づいて、画像処理部を評価する。
【００９３】
オブジェクトデータの総ポイント数＝（状態のポイント）×（データサイズのポイント）×（参照回数のポイント）
以下、実施形態１と同様に、図８を参照して制御部２１０のリトライ処理内容を説明する。まず、割振部２４４は、記録テーブル２５０の対応関係を参照し、前回分割ジョブデータを処理した画像処理部とは異なる他の画像処理部に対して、当該分割ジョブデータを再度割り振る（Ｓ２１１）。このとき、割振部２４４は、分割ジョブデータ３８０に含まれるオブジェクトデータの情報を取得する（Ｓ４０１）。
【００９４】
図８の例において、画像処理部３（２８０）が分割ジョブデータ３８０の処理を行った処理内容は、「画像処理部３：ＪｏｂＡ：Ｐａｇｅ６」というデータ形式で記録テーブル２５０に記録されている。さらに、記録テーブル２５０には、「画像処理部３：ＪｏｂＡ：Ｐａｇｅ６」と「ＯｂｊＢ」との対応関係と、「画像処理部３：ＪｏｂＡ：Ｐａｇｅ６」と「ＯｂｊＢ」との対応関係とがそれぞれ記録されている。
【００９５】
次いで、割振部２４４は、記録テーブル２５０に記録されているオブジェクトデータの情報から、当該オブジェクトを使用している画像処理部を検索する（Ｓ４０２）。
【００９６】
図８の例において、「ＯｂｊＢ」を使用している画像処理部は「画像処理部１：ＪｏｂＡ：Ｐａｇｅ４」と、「画像処理部２：ＪｏｂＡ：Ｐａｇｅ２」であることが記録テーブル２５０に記録されている。同様に、「ＯｂｊＣ」を使用している画像処理部は「画像処理部１：ＪｏｂＡ：Ｐａｇｅ１」であることが記録テーブル２５０に記録されている。すなわち、割振部２４４は、オブジェクトデータ３１２が、分割ジョブデータ３４０と３６０とに含まれており、それぞれ画像処理部２（２７０）と、画像処理部１（２６０）とによって使用されていることを検索結果として特定することができる。同様に、割振部２４４は、オブジェクトデータ３１３が、分割ジョブデータ３３０に含まれており、画像処理部１（２６０）によって使用されていることを検索結果として特定することができる。
【００９７】
次いで、評価部２４６は、特定された画像処理部１（２６０）と、画像処理部２（２７０）とについて、オブジェクトデータの使用状況を、候補となる画像処理部ごとに評価する（Ｓ４０４）。
【００９８】
図９に示される通り、画像処理部１（２６０）に対応するオブジェクトデータ３１２の情報は、「状態：処理済」「データサイズ：６５４２」「参照回数：３」である。そのため、オブジェクトデータ３１２の合計ポイント数は、（処理済：１）×（サイズ：６５４２）×（参照回数：３）＝１９６２６である。
【００９９】
同様に、画像処理部１（２６０）に対応するオブジェクトデータ３１３の情報は、「状態：処理中」「データサイズ：５３２」「参照回数：２」である。そのため、当該オブジェクトの合計ポイント数は、（処理中：２）×（サイズ：５３２）×（参照回数：２）＝２１２８である。
【０１００】
同様に、画像処理部２（２７０）に対応するオブジェクトデータ３１２の情報は、「状態：処理中」「データサイズ：６５４２」「参照回数：３」である。そのため、当該オブジェクトの合計ポイント数は、（処理中：２）×（サイズ：６５４２）×（参照回数：３）＝３９２５２である。
【０１０１】
以上より、画像処理部１（２６０）の総ポイント数は２１７５４であり、画像処理部２（２７０）の総ポイント数は２９２５２となる。評価部２４６は、分割ジョブデータ３８０に含まれるものと同じ種類のオブジェクトを使用して処理するのに、画像処理部２（２７０）が最も適した画像処理部であると評価する。
【０１０２】
割振部２４４は、評価部２４６の評価に基づいて、画像処理部２（２７０）を選択する（Ｓ４０４）。次いで、割振部２４４は、画像処理部２（２７０）を、分割ジョブデータ３８０の再割り振り先と決定する（Ｓ４０５）。
【０１０３】
本実施形態においては、キャッシュ部２６２〜２８２は、記録テーブル２５０のオブジェクトデータの情報に基づいて、各オブジェクトデータを保存するか否かの判断を行うことができる。この場合、割振部２４４は、当該オブジェクトデータの情報を含む分割ジョブデータ３３０〜３８０を画像処理部２６０〜２８０に割り振ることにより、キャッシュ部２６２〜２８２が記録テーブル２５０のオブジェクトデータの情報を参照することができる。かかる構成により、キャッシュ部２６２〜２８２は、オブジェクトデータのデータサイズが大きいもの、または参照回数が多いものを優先的にキャッシュ保存することが可能となる。そして、分割ジョブデータのリトライ処理の際に、キャッシュされたオブジェクトデータを再利用する確率を向上させることができる。
【０１０４】
図１１は、画像処理部２６０〜２８０が、オブジェクトデータの情報に基づいて中間データのキャッシュ保存を行うか否かの判定処理内容を示すフローチャートである。以下、図１１のフローチャートを参照して、画像処理部２６０〜２８０の判定処理内容について説明する。
【０１０５】
Ｓ５０１において、画像処理部２６０〜２８０は、分割ジョブデータに含まれるオブジェクトデータと、オブジェクトデータの情報とを取得する。本実施形態におけるオブジェクトデータの情報は、参照回数などが相当する。
【０１０６】
Ｓ５０２において、画像処理部２６０〜２８０は、Ｓ５０１で取得したオブジェクトデータに対応するキャッシュデータが存在するかを判定する。キャッシュデータが存在する場合（Ｓ５０２：Ｙｅｓ）、画像処理部２６０〜２８０は、キャッシュ部２６２〜２８２の対応するキャッシュメモリに保存されているキャッシュデータを用いて処理を行い、その後本フローチャートの処理を終了する。一方、キャッシュデータが存在しない場合（Ｓ５０２：Ｎｏ）、Ｓ５０３において、当該オブジェクトデータの参照回数が閾値以上であるかを判定する。
【０１０７】
参照回数が少ない場合（Ｓ５０３：Ｎｏ）、オブジェクトデータが再び参照されて処理される可能性が低いため、記憶領域が限られるキャッシュメモリを専有しないように、当該オブジェクトデータに係るキャッシュ保存を行わないようにする（Ｓ５０７）。参照回数が閾値以上であると判定された場合（Ｓ５０３：Ｙｅｓ）、Ｓ５０４において当該オブジェクトデータのデータサイズが閾値以上であるかを判定する。オブジェクトデータのデータサイズが小さければ、キャッシュメモリを用いなくても、画像処理部２６０〜２８０の処理速度に影響を及ぼさないため、キャッシュ部２６２〜２８２は、データサイズの大きいオブジェクトデータに係るキャッシュ保存を優先する。
【０１０８】
データサイズが閾値以上であると判定された場合（Ｓ５０４：Ｙｅｓ）、Ｓ５０６において、ＲＩＰ処理部２６１〜２８１は分割ジョブデータを処理し、その後キャッシュ部２６２〜２８２は、オブジェクトデータをキャッシュメモリに保存する。一方、データサイズが閾値以下であると判定された場合（Ｓ５０４：Ｎｏ）、Ｓ５０７において、ＲＩＰ処理部２６１〜２８１は分割ジョブデータを処理した後、キャッシュ部２６２〜２８２は、オブジェクトデータを破棄して本フローチャートの処理を終了する。
【０１０９】
以上説明した通り、本実施形態における印刷装置においては、実施形態１の特徴に加えて、以下の効果を奏する。本実施形態における印刷装置は、複数の画像処理部のうち、一部の画像処理部の処理が継続できなくなった場合でも、いずれの画像処理部が処理を行うのに適しているかの評価に基づいて、分割ジョブデータを再度割り振る。このため、エラーとなった分割ジョブデータに対応するキャッシュデータを再利用できる可能性が高いものを、分割ジョブデータの再割り振り先に選択することができ、処理の継続と処理の効率化を図ることができる。
【０１１０】
［その他の実施例］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2016155280.tif 000003
【図２】
2016155280.tif 000004
【図３】
2016155280.tif 000005
【図４】
2016155280.tif 000006
【図５】
2016155280.tif 000007
【図６】
2016155280.tif 000008
【図７】
2016155280.tif 000009
【図８】
2016155280.tif 000010
【図９】
2016155280.tif 000011
【図１０】
2016155280.tif 000012
【図１１】
2016155280.tif 000013