(57)【要約】【課題】複数の変換手段の各々に対応した記憶手段と共通の記憶手段とを用いて画像処理の高速化と十分な記憶容量の確保との両立を図ること。【解決手段】本発明は、印刷情報を画素情報に変換する処理を並列で行う複数の変換手段ＲＩＰ１〜ＲＩＰ４と、複数の変換手段ＲＩＰ１〜ＲＩＰ４の各々に対応して設けられ、変換手段ＲＩＰ１〜ＲＩＰ４で変換して得た特定の画素情報が記憶される第１の記憶手段Ｍ１と、複数の変換手段ＲＩＰ１〜ＲＩＰ４に共通で用いられ、変換手段ＲＩＰ１〜ＲＩＰ４で変換して得た画素情報のうち特定の画素情報が記憶される第２の記憶手段Ｍ２と、複数の変換手段ＲＩＰ１〜ＲＩＰ４の各々に対応して設けられ、変換手段ＲＩＰ１〜ＲＩＰ４で変換して得た特定の画素情報を第１の記憶手段Ｍ１に記憶する制御と、第２の記憶手段Ｍ２に記憶する制御を行う制御とを選択的に行う制御手段と有する画像処理装置１である。【選択図】図１
2011025422.tif 000002
【特許請求の範囲】
【請求項１】
印刷情報を画素情報に変換する処理を並列で行う複数の変換手段と、
前記複数の情報変換手段の各々に対応して設けられ、前記情報変換手段で変換して得た前記特定の画素情報が記憶される第１の記憶手段と、
前記複数の情報変換手段に共通で用いられ、前記情報変換手段で変換して得た画素情報のうち特定の画素情報が記憶される第２の記憶手段と、
前記複数の情報変換手段の各々に対応して設けられ、前記情報変換手段で変換して得た前記特定の画素情報を前記第１の記憶手段に記憶する制御と、前記第２の記憶手段に記憶する制御を行う制御とを選択的に行う制御手段と、
を有する画像処理装置。
【請求項２】
前記制御手段は、前記特定の画素情報の容量に応じて当該特定の画素情報を前記第１の記憶手段に記憶するか前記第２の記憶手段に記憶するかの制御を行う
請求項１記載の画像処理装置。
【請求項３】
前記制御手段は、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記第１の記憶手段に優先的に記憶する制御を行う
請求項１または２項に記載の画像処理装置。
【請求項４】
前記制御手段は、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記第１の記憶手段に既に記憶されている情報の一部または全部を削除して容量を確保し、容量の空いた前記第１の記憶手段に前記特定の画素情報を記憶する制御を行う
請求項１から３のうちいずれか１項に記載の画像処理装置。
【請求項５】
前記制御手段は、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記第１の記憶手段に既に記憶されている情報の一部または全部を前記第２の記憶手段に移動し、容量の空いた前記第１の記憶手段に前記特定の画素情報を記憶する制御を行う
請求項１から３のうちいずれか１項に記載の画像処理装置。
【請求項６】
前記制御手段は、前記特定の画素情報を前記第２の記憶手段に記憶するに先立ち、前記第２の記憶手段に前記特定の画素情報と同じ画素情報が既に記憶されているか否かを判断し、記憶されていない場合に前記第２の記憶手段に記憶する制御を行う
請求項１から５のうちいずれか１項に記載の画像処理装置。
【請求項７】
前記制御手段は、前記第１の記憶手段に記憶された特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値以下となった場合、前記第１の記憶手段から削除する制御を行う
請求項１から６のうちいずれか１項に記載の画像処理装置。
【請求項８】
前記制御手段は、前記特定の画素情報を前記第２の記憶手段に記憶する制御を行うとともに、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記特定の画素情報を前記第２の記憶手段から読み出して再利用する前記変換手段と対応する第１の記憶手段に記憶する制御を行う
請求項１記載の画像処理装置。
【請求項９】
前記複数の変換手段のうちいずれかに前記印刷情報を振り分ける制御を行う振り分け制御手段を備えており、
前記振り分け制御手段は、振り分けの対象となる印刷情報に含まれる特定の画素情報を処理した変換手段の履歴に応じて振り分けを行う
請求項１記載の画像処理装置。
【請求項１０】
前記振り分け制御手段は、前記複数の変換手段から特定の画素情報の再利用回数の情報を取得し、この取得した情報から振り分けの対象となる印刷情報に含まれる特定の画素情報を処理した回数により振り分けを行う
請求項９記載の画像処理装置。
【請求項１１】
前記振り分け制御手段は、前記複数の変換手段への過去の振り分けの周期性に基づき次の振り分け先を決定する
請求項９記載の画像処理装置。
【請求項１２】
前記制御手段は、前記変換手段で印刷情報を画素情報へ変換する処理を行うにあたり、当該印刷情報に前記特定の画素情報への変換の対象が含まれている場合、前記第１の記憶手段に当該特定の画素情報が記憶されているか判断し、記憶されている場合には当該特定の画素情報を前記第１の記憶手段から読み出す制御を行い、記憶されていない場合には前記第２の記憶手段に記憶されているか判断し、記憶されている場合には当該特定の画素情報を前記第２の記憶手段から読み出す制御を行い、いずれの記憶手段にも記憶されていない場合には前記変換手段で変換させる制御を行う
請求項１から１１のうちいずれか１項に記載の画像処理装置。
【請求項１３】
印刷情報を画素情報に変換する処理を並列で行う複数の変換手段と、
前記複数の変換手段の各々に対応して設けられ、前記変換手段で変換して得た前記特定の画素情報が記憶される第１の記憶手段と、
前記複数の変換手段に共通で用いられ、前記変換手段で変換して得た画素情報のうち特定の画素情報が記憶される第２の記憶手段と、
前記複数の変換手段の各々に対応して設けられ、前記変換手段で変換して得た前記特定の画素情報を前記第１の記憶手段に記憶する制御および前記第２の記憶手段に記憶する制御を行う制御手段とを有する画像処理装置が、通信回線を介して複数接続されている
画像処理システム。
【請求項１４】
印刷情報を画素情報に変換する処理を並列で行う複数の変換手段の各々で実行されるプログラムであり、
受信した前記印刷情報の中に特定の画素情報へ変換する対象が含まれているか検索するステップと、
前記特定の画素情報へ変換する対象が含まれている場合、当該特定の画素情報が前記変換手段の各々に対応して設けられる第１の記憶手段に記憶されているか検索し、記憶されている場合には前記第１の記憶手段から読み出して利用し、記憶されていない場合には前記複数の変換手段に共通で用いられる第２の記憶手段に記憶されているか検索し、記憶されている場合には前記第２の記憶手段から読み出して利用するステップと、
前記特定の画像情報が前記第１の記憶手段および前記第２の記憶手段のいずれにも記憶されていない場合には、前記印刷情報を前記特定の画素情報へ変換して前記第１の記憶手段および前記第２の記憶手段の両方へ記憶するステップと
をコンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理システムおよび画像処理プログラムに関する。
【背景技術】
【０００２】
従来、大量の印刷を高速で行う場合、連続紙のプリンタ装置が用いられている。この連続紙プリンタ装置で高速な印刷を行うには、ページ記述言語で記述されたデータからビットマップのデータに変換する描画処理の高速化が必要である。描画処理を高速に行う方法として、繰り返し使用されるテキスト、ライン、イメージなどの印刷リソースをビットマップ（又は、ラスター）や中間形式の情報として描画処理部内に記憶する、所謂、キャッシュを行い、おき、以降のページの描画処理で再利用することが広く使われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１６４１５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、複数の変換手段の各々に対応した記憶手段と共通の記憶手段とを選択的に用いて画像処理の高速化と十分な記憶容量の確保との両立を図ることを目的とする。
【課題を解決するための手段】
【０００５】
本願請求項１に係る発明は、印刷情報を画素情報に変換する処理を並列で行う複数の変換手段と、前記複数の情報変換手段の各々に対応して設けられ、前記変換手段で変換して得た前記特定の画素情報が記憶される第１の記憶手段と、前記複数の変換手段に共通で用いられ、前記変換手段で変換して得た画素情報のうち特定の画素情報が記憶される第２の記憶手段と、前記複数の変換手段の各々に対応して設けられ、前記変換手段で変換して得た前記特定の画素情報を前記第１の記憶手段に記憶する制御と、前記第２の記憶手段に記憶する制御とを選択的に行う制御手段とを有する画像処理装置である。
【０００６】
本願請求項２に係る発明は、前記制御手段が、前記特定の画素情報の容量に応じて当該特定の画素情報を前記第１の記憶手段に記憶するか前記第２の記憶手段に記憶するかの制御を行う請求項１記載の画像処理装置である。
【０００７】
本願請求項３に係る発明は、前記制御手段が、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記第１の記憶手段に優先的に記憶する制御を行う請求項１または２記載の画像処理装置である。
【０００８】
本願請求項４に係る発明は、前記制御手段が、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記第１の記憶手段に既に記憶されている情報の一部または全部を削除して容量を確保し、容量の空いた前記第１の記憶手段に前記特定の画素情報を記憶する制御を行う請求項１から３のうちいずれか１項に記載の画像処理装置である。
【０００９】
本願請求項５に係る発明は、前記制御手段が、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記第１の記憶手段に既に記憶されている情報の一部または全部を前記第２の記憶手段に移動し、容量の空いた前記第１の記憶手段に前記特定の画素情報を記憶する制御を行う請求項１から３のうちいずれか１項に記載の画像処理装置である。
【００１０】
本願請求項６に係る発明は、前記制御手段が、前記特定の画素情報を前記第２の記憶手段に記憶するに先立ち、前記第２の記憶手段に前記特定の画素情報と同じ画素情報が既に記憶されているか否かを判断し、記憶されていない場合に前記第２の記憶手段に記憶する制御を行う請求項１から５のうちいずれか１項に記載の画像処理装置である。
【００１１】
本願請求項７に係る発明は、前記制御手段が、前記第１の記憶手段に記憶された特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値以下となった場合、前記第１の記憶手段から削除する制御を行う請求項１から６のうちいずれか１項に記載の画像処理装置である。
【００１２】
本願請求項８に係る発明は、前記制御手段が、前記特定の画素情報を前記第２の記憶手段に記憶する制御を行うとともに、前記特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値を超えた場合、前記特定の画素情報を前記第２の記憶手段から読み出して再利用する前記変換手段と対応する第１の記憶手段に記憶する制御を行う請求項１記載の画像処理装置である。
【００１３】
本願請求項９に係る発明は、前記複数の変換手段のうちいずれかに前記印刷情報を振り分ける制御を行う振り分け制御手段を備えており、前記振り分け制御手段が、振り分けの対象となる印刷情報に含まれる特定の画素情報を処理した変換手段の履歴に応じて振り分けを行う請求項１記載の画像処理装置である。
【００１４】
本願請求項１０に係る発明は、前記振り分け制御手段が、前記複数の変換手段から特定の画素情報の再利用回数の情報を取得し、この取得した情報から振り分けの対象となる印刷情報に含まれる特定の画素情報を処理した回数により振り分けを行う請求項９記載の画像処理装置である。
【００１５】
本願請求項１１に係る発明は、前記振り分け制御手段が、前記複数の変換手段への過去の振り分けの周期性に基づき次の振り分け先を決定する請求項９記載の画像処理装置である。
【００１６】
本願請求項１２に係る発明は、前記制御手段が、前記変換手段で印刷情報を画素情報へ変換する処理を行うにあたり、当該印刷情報に前記特定の画素情報への変換の対象が含まれている場合、前記第１の記憶手段に当該特定の画素情報が記憶されているか判断し、記憶されている場合には当該特定の画素情報を前記第１の記憶手段から読み出す制御を行い、記憶されていない場合には前記第２の記憶手段に記憶されているか判断し、記憶されている場合には当該特定の画素情報を前記第２の記憶手段から読み出す制御を行い、いずれの記憶手段にも記憶されていない場合には前記変換手段で変換させる制御を行う請求項１から１１のうちいずれか１項に記載の情報処理装置である。
【００１７】
本願請求項１３に係る発明は、印刷情報を画素情報に変換する処理を並列で行う複数の変換手段と、前記複数の変換手段の各々に対応して設けられ、前記変換手段で変換して得た前記特定の画素情報が記憶される第１の記憶手段と、前記複数の変換手段に共通で用いられ、前記変換手段で変換して得た画素情報のうち特定の画素情報が記憶される第２の記憶手段と、前記複数の変換手段の各々に対応して設けられ、前記変換手段で変換して得た前記特定の画素情報を前記第１の記憶手段に記憶する制御および前記第２の記憶手段に記憶する制御を行う制御手段とを有する画像処理装置が、通信回線を介して複数接続されている画像処理システムである。
【００１８】
本願請求項１４に係る発明は、印刷情報を画素情報に変換する処理を並列で行う複数の変換手段の各々で実行されるプログラムであり、受信した前記印刷情報の中に特定の画素情報へ変換する対象が含まれているか検索するステップと、前記特定の画素情報へ変換する対象が含まれている場合、当該特定の画素情報が前記変換手段の各々に対応して設けられる第１の記憶手段に記憶されているか検索し、記憶されている場合には前記第１の記憶手段から読み出して利用し、記憶されていない場合には前記複数の変換手段に共通で用いられる第２の記憶手段に記憶されているか検索し、記憶されている場合には前記第２の記憶手段から読み出して利用するステップと、前記特定の画像情報が前記第１の記憶手段および前記第２の記憶手段のいずれにも記憶されていない場合には、前記印刷情報を前記特定の画素情報へ変換して前記第１の記憶手段および前記第２の記憶手段の両方へ記憶するステップとをコンピュータに実行させる画像処理プログラムである。
【発明の効果】
【００１９】
本願請求項１に係る発明によれば、本願発明の構成を備えていない場合に比べ、複数の変換手段の各々に対応した記憶手段と共通の記憶手段とを選択的に用いて画像処理の高速化と十分な記憶容量の確保との両立を図ることが可能となる。
【００２０】
本願請求項２に係る発明によれば、第１の記憶手段の容量の範囲で記憶した特定の画素情報を再利用して、重複した変換を行うことなく画像処理を行うことが可能となる。
【００２１】
本願請求項３に係る発明によれば、頻繁に再利用される特定の画素情報を第１の記憶手段に記憶して、再利用することが可能となる。
【００２２】
本願請求項４に係る発明によれば、頻繁に再利用される特定の画素情報を、他の画素情報に比べて優先して第１の記憶手段に記憶して、再利用することが可能となる。
【００２３】
本願請求項５に係る発明によれば、頻繁に再利用される特定の画素情報を、他の画素情報に比べて優先して第１の記憶手段に記憶して、再利用することが可能となる。
【００２４】
本願請求項６に係る発明によれば、第２の記憶手段に特定の画素情報を重複して記憶することなく再利用することが可能となる。
【００２５】
本願請求項７に係る発明によれば、再利用頻度が低くなった特定の画素情報を第１の記憶手段から削除して記憶容量の確保を行うことが可能となる。
【００２６】
本願請求項８に係る発明によれば、頻繁に再利用される特定の画素情報を、第２の記憶手段から読み出し、第１の記憶手段に記憶して、再利用することが可能となる。
【００２７】
本願請求項９に係る発明によれば、特定の画素情報を利用できる変換手段に印刷情報を振り分けることが可能となる。
【００２８】
本願請求項１０に係る発明によれば、特定の画素情報をより多く利用できる変換手段に印刷情報を振り分けることが可能となる。
【００２９】
本願請求項１１に係る発明によれば、過去の振り分けの周期性に基づいた印刷情報の振り分けを行うことが可能となる。
【００３０】
本願請求項１２に係る発明によれば、第１の記憶手段または第２の記憶手段に記憶された特定の画素情報を読み出して再利用することが可能となる。
【００３１】
本願請求項１３に係る発明によれば、本願発明の構成を備えていない場合に比べ、印刷情報を画素情報に変換する処理の高速化および記憶容量の十分な確保を図ることができるシステムの提供が可能となる。
【００３２】
本願請求項１４に係る発明によれば、本願発明の構成を備えていない場合に比べ、印刷情報を画素情報に変換する処理の高速化および記憶容量の十分な確保を図ることができるプログラムの提供が可能となる。
【図面の簡単な説明】
【００３３】
【図１】本実施形態に係る画像処理装置の構成例を説明するブロック図である。
【図２】印刷装置の構成例を示す図である。
【図３】本実施形態に係る画像処理装置のハードウェア構成例を示す図である。
【図４】本実施形態に係る情報処理システムを説明する図である。
【図５】比較例１を説明する図である。
【図６】変換手段内のキャッシュの状態を説明する図である。
【図７】キャッシュのヒット率について説明する図である。
【図８】比較例２を説明する図である。
【図９】（１）〜（２）のしきい値を使用したキャッシュ判定方法について説明するフローチャートである。
【図１０】変換手段が持つキャッシュ情報テーブルの一例を説明する図である。
【図１１】（３）〜（４）のしきい値を使用したキャッシュ判定方法について説明するフローチャートである。
【図１２】削除する印刷リソースの判定処理の流れを説明するフローチャートである。
【図１３】第２実施形態に係る処理のフローチャートである。
【図１４】第３実施形態に係る処理のフローチャートである。
【図１５】第４実施形態に係る処理のフローチャートである。
【図１６】振り分け制御手段の内部に蓄積するテーブルデータの例を示す図である。
【発明を実施するための形態】
【００３４】
以下、本発明を実施するための形態（以下、「実施形態」という。）について説明する。なお、説明は以下の順序で行う。
１．画像処理装置の構成例（ブロック構成例、動作の概要、制御手段による制御の例、振り分け制御手段の制御の例、制御手段の読み出し制御の例）
２．印刷装置の構成例
３．画像処理装置のハードウェア構成例
４．情報処理プログラム
５．情報処理システム
６．具体例の説明（比較例、第１実施形態〜第５実施形態）
【００３５】
＜１．画像処理装置の構成例＞
［画像処理装置のブロック構成］
図１は、本実施形態に係る画像処理装置の構成例を説明するブロック図である。本実施形態に係る画像処理装置１は、複数の変換手段ＲＩＰ１〜ＲＩＰ４と、複数の変換手段ＲＩＰ１〜ＲＩＰ４の各々に対応して設けられる第１の記憶手段Ｍ１と、複数の変換手段ＲＩＰ１〜ＲＩＰ４に共通で設けられる第２の記憶手段Ｍ２と、複数の変換手段ＲＩＰ１〜ＲＩＰ４の各々に対応して設けられる制御手段２とを備えている。
【００３６】
変換手段ＲＩＰ１〜ＲＩＰ４は、所定の単位（例えば、ページ単位）で送られる印刷情報を画素情報（例えば、中間データやビットマップデータ）に変換するレンダリング処理を行う画像処理回路を備えている。本実施形態の画像処理装置１では、複数の変換手段ＲＩＰ１〜ＲＩＰ４によって印刷情報を並列で画素情報に変換する。図１では４つの変換手段ＲＩＰ１〜ＲＩＰ４が並列に配置されているが、４つ以外であってもよい。
【００３７】
第１の記憶手段Ｍ１は、各変換手段ＲＩＰ１〜ＲＩＰ４に対応して設けられるキャッシュメモリであり、特定の画素情報を記憶する部分である。ここで、特定の画素情報とは、印刷情報のうち、繰り返し使用されるテキスト、ライン、イメージなど、特定の種類の印刷リソースについてレンダリングして得た情報のことを言う。特定の種類の印刷リソースか否かは、印刷情報に含まれる識別情報と、ハッシュ値等の付帯情報によって各変換手段ＲＩＰ１〜ＲＩＰ４の制御部２が判別する。
【００３８】
第１の記憶手段Ｍ１は、各変換手段ＲＩＰ１〜ＲＩＰ４について専用に利用されるもので、各変換手段ＲＩＰ１〜ＲＩＰ４の各制御手段２からのアクセス要求に対し、他の変換手段ＲＩＰ１〜ＲＩＰ４とは無関係に動作する。
【００３９】
第２の記憶手段Ｍ２は、各変換手段ＲＩＰ１〜ＲＩＰ４に共通で用いられるキャッシュメモリであり、特定の画素情報を記憶する部分である。なお、図１において、第１の記憶手段Ｍ１と第２の記憶手段Ｍ２とは物理的に別個な構成になっているが、物理的に１つの構成であって論理的に区分けされているものであってもよい。
【００４０】
制御手段２は、各変換手段ＲＩＰ１〜ＲＩＰ４の各々に対応して設けられ、変換手段ＲＩＰ１〜ＲＩＰ４で変換して得た特定の画素情報を、第１の記憶手段Ｍ１に記憶する制御および第２の記憶手段Ｍ２に記憶する制御を行う。
【００４１】
本実施形態の画像処理装置１では、複数の変換手段ＲＩＰ１〜ＲＩＰ４に印刷情報を振り分ける振り分け制御手段３が設けられている。振り分け制御手段３は、所定単位（例えば、ページ）ごとに送られる印刷情報を受信して、その単位ごとに印刷情報をいずれかの変換手段ＲＩＰ１〜ＲＩＰ４に振り分ける制御を行う。振り分け制御手段３は、所定の振り分けのルールに基づいて印刷情報の振り分けを行う。
【００４２】
［動作の概要］
次に、本実施形態に係る画像処理装置１の動作の概要を図１に沿って説明する。先ず、ページごとに処理されるＰＤＬ（Page Description Language）から成るジョブ（印刷情報）が画像処理装置１に入力されると、振り分け制御手段３がページごとに印刷情報の振り分けを行う。図１に示す例では、１ページ（Ｐ１）〜１０ページ（Ｐ１０）までの全１０ページから成るＰＤＬの印刷情報が画像処理装置１に入力された状態を示している。
【００４３】
振り分け制御手段３は、この１０ページの印刷情報を４つの変換手段ＲＩＰ１〜ＲＩＰ４へページごとに振り分ける。例えば、振り分け制御手段３は、１ページ（Ｐ１）を変換手段ＲＩＰ１に振り分け、２ページ（Ｐ１）を変換手段ＲＩＰ２に振り分け、３ページ（Ｐ３）を変換手段ＲＩＰ３に振り分け、４ページ（Ｐ４）を変換手段ＲＩＰ４に振り分ける。すなわち、振り分け制御手段３は、最初の４ページ分を１ページずつ４つの変換手段ＲＩＰ１〜ＲＩＰ４に順番に振り分けている。
【００４４】
次に、振り分け制御手段３は、５ページ（Ｐ５）を変換手段ＲＩＰ１に振り分け、６ページ（Ｐ６）を変換手段ＲＩＰ２に振り分け、７ページ（Ｐ７）を変換手段ＲＩＰ３に振り分け、８ページ（Ｐ８）を変換手段ＲＩＰ４に振り分けている。振り分け制御手段３は、５ページ目以降の４ページ分も１ページずつ４つの変換手段ＲＩＰ１〜ＲＩＰ４に順番に振り分けている。
【００４５】
次に、振り分け制御手段３は、９ページ（Ｐ９）を変換手段ＲＩＰ２に振り分け、１０ページ（１０Ｐ）を変換手段ＲＩＰ４に振り分けている。振り分け制御手段３は、変換処理の進み具合に応じて、最も早く処理を開始し得る変換手段を選択して振り分けを行う。
【００４６】
次に、振り分け制御手段３からページごとに印刷情報を振り分けられた各変換手段ＲＩＰ１〜ＲＩＰ４は、各々の変換機能を用いてレンダリング処理を行う。図１に示す例では、４つの変換手段ＲＩＰ１〜ＲＩＰ４が並列でレンダリング処理を実行するため、４ページ分のレンダリングが同時に実行される。レンダリング後の画素情報は、１ページごと、例えばＹ（黄）、Ｍ（マゼンタ）、Ｃ（シアン）、Ｋ（ブラック）といった印刷のための複数の色の情報のまとまりとしてページ順に出力される。
【００４７】
ここで、各変換手段ＲＩＰ１〜ＲＩＰ４がレンダリング処理を行うにあたり、各変換手段ＲＩＰ１〜ＲＩＰ４の制御手段２は、これからレンダリングしようとしている特定の種類の印刷リソースについて、既にレンダリングした画素情報が第１の記憶手段Ｍ１もしくは第２の記憶手段Ｍ２に記憶されているか判断する。記憶されている場合には新たにレンダリングすることなく、記憶されている画素情報を再利用する。一方、記憶されていない場合にはレンダリングを行うよう制御し、レンダリング後の画素情報を第１の記憶手段Ｍ１や第２の記憶手段Ｍ２に記憶する制御を行う。
【００４８】
本実施形態の画像処理装置１では、このような処理の流れにおいて、各変換手段ＲＩＰ１〜ＲＩＰ４に設けられる制御手段によって、第１の記憶手段Ｍ１および第２の記憶手段Ｍ２に対する特定の情報の書き込みや読み出しの制御を行っている。
【００４９】
［制御手段による制御の例］
制御手段２の一つの制御としては、特定の種別の印刷リソースについてレンダリングした後の特定の画素情報の容量に応じて、この特定の画素情報を第１の記憶手段Ｍ１に記憶するか、第２の記憶手段Ｍ２に記憶するかの制御を行う。
【００５０】
制御手段２の別な一つの制御としては、特定の種別の印刷リソースについてレンダリングした後の特定の画素情報の再利用回数を計数し、この再利用回数が予め設定した閾値を超えた場合、第１の記憶手段Ｍ１に優先的に記憶する制御を行う。
【００５１】
制御手段２の別な一つの制御としては、先ず、特定の種別の印刷リソースについてレンダリングした後の特定の画素情報の再利用回数を計数する。その後、当該再利用回数が予め設定した閾値を超えた場合、第１の記憶手段Ｍ１に既に記憶されている情報の一部または全部を削除して容量を確保する。そして、容量の空いた第１の記憶手段Ｍ１に特定の画素情報を記憶する制御を行う。
【００５２】
制御手段２の別な一つの制御としては、先ず、特定の種別の印刷リソースについてレンダリングした後の特定の画素情報の再利用回数を計数する。その後、当該再利用回数が予め設定した閾値を超えた場合、第１の記憶手段Ｍ１に既に記憶されている情報の一部または全部を第２の記憶手段Ｍ２に移動する。そして、容量の空いた第１の記憶手段Ｍ１に特定の画素情報を記憶する制御を行う。
【００５３】
制御手段２の別な一つの制御としては、特定の種別の印刷リソースについてレンダリングした後の特定の画素情報を第２の記憶手段Ｍ２に記憶するに先立ち、第２の記憶手段Ｍ２にこの特定の画素情報と同じ画素情報が既に記憶されているか否かを判断する。そして、記憶されていない場合に第２の記憶手段Ｍ２に記憶する制御を行う。
【００５４】
制御手段２の別な一つの制御としては、第１の記憶手段Ｍ１に記憶された特定の画素情報の再利用回数を計数し、当該再利用回数が予め設定した閾値以下となった場合、第１の記憶手段Ｍ１から削除する制御を行う。
【００５５】
制御手段２の別な一つの制御としては、特定の種別の印刷リソースについてレンダリングした後の特定の画素情報を第２の記憶手段Ｍ２に記憶する制御を行うとともに、この特定の画素情報の再利用回数を計数する。そして、当該再利用回数が予め設定した閾値を超えた場合、閾値を超えた特定の画素情報を第２の記憶手段Ｍ２から読み出して再利用する変換手段ＲＩＰ１〜ＲＩＰ４と対応する第１の記憶手段Ｍ１に記憶する制御を行う。
【００５６】
［振り分け制御手段の制御の例］
振り分け制御手段３の一つの制御としては、振り分けの対象となる印刷情報に含まれる特定の画素情報を処理した変換手段ＲＩＰ１〜ＲＩＰ４の履歴に応じて振り分けを行う。
【００５７】
振り分け制御手段３の別な一つの制御としては、複数の変換手段ＲＩＰ１〜ＲＩＰ４から特定の画素情報の再利用回数の情報を取得し、この取得した情報から振り分けの対象となる印刷情報に含まれる特定の画素情報を処理した回数により振り分けを行う。
【００５８】
振り分け制御手段３の別な一つの制御としては、複数の変換手段ＲＩＰ１〜ＲＩＰ４への過去の振り分けの周期性、すなわち、過去に振り分けた印刷情報のページ番号とそのページ番号の印刷情報をどの変換手段ＲＩＰ１〜ＲＩＰ４に振り分けたかの履歴から、ページ番号と振り分け先の変換手段ＲＩＰ１〜ＲＩＰ４との周期性に基づき、次の振り分け先を決定する。
【００５９】
［制御手段の読み出し制御の例］
制御手段２は、変換手段ＲＩＰ１〜ＲＩＰ４で印刷情報を画素情報へ変換するレンダリング処理を行うにあたり、印刷情報に特定の画素情報への変換の対象（特定の種別の印刷リソース）が含まれている場合、先ず、その変換手段ＲＩＰ１〜ＲＩＰ４に対応する第１の記憶手段Ｍ１に当該特定の画素情報が記憶されているか判断する。そして、記憶されている場合には当該特定の画素情報を第１の記憶手段Ｍ１から読み出し、その印刷リソースに対しては新たなレンダリングを行わずに読み出した画素情報を再利用する制御を行う。
【００６０】
また、制御手段２は、第１の記憶手段Ｍ１に特定の種別の印刷リソースの画素情報が記憶されていなかった場合、共通のキャッシュメモリである第２の記憶手段Ｍ２に記憶されているかを判断する。そして、記憶されている場合には当該特定の画素情報を第２の記憶手段Ｍ２から読み出し、その印刷リソースに対しては新たなレンダリングを行わずに読み出した画素情報を再利用する制御を行う。
【００６１】
制御手段２は、特定の種別の印刷リソースの画素情報が第１の記憶手段Ｍ１および第２の記憶手段Ｍ２のいずれにも記憶されていない場合には、変換手段ＲＩＰ１〜ＲＩＰ４で当該印刷リソースの印刷情報について画素情報に変換するレンダリング処理を行うよう制御する。
【００６２】
＜２．印刷装置の構成例＞
図２は、印刷装置の構成例を示す図である。この印刷装置ＰＲ１は連続紙に印刷を行う装置である。本実施形態に係る画像処理装置１は印刷装置ＰＲ１とネットワークＮとの間に接続されており、同じネットワークＮに接続される端末装置２０からの指示をネットワークＮを介して受け取り、印刷装置ＲＰ１へ印刷のための情報を送信している。
【００６３】
印刷装置ＰＲ１には、用紙の搬送方向上手側に前処理装置３、バッファ装置４が設けられている。また、用紙の搬送方向下手側にはバッファ装置５、後処理装置６が設けられている。印刷装置ＰＲ１は、前処理装置３およびバッファ装置４から順次送られる印刷前の連続紙５０１を搬送しながら各色に対応した像担持体より各色のトナー像を転写していく。トナー像が転写された連続紙は定着装置７に送られ、トナー像を定着する。印刷後の連続紙５０２は、バッファ装置５および後処理装置６へと送られる。
【００６４】
なお、図２に示す構成例では、画像処理装置１と印刷装置ＰＲ１とが別体に設けられている例を示しているが、画像処理装置１が印刷装置ＰＲ１に組み込まれている構成であってもよい。また、１つの画像処理装置１に複数の印刷装置ＰＲ１が接続され、画像処理装置１から複数の印刷装置ＰＲ１へ各々印刷のための情報を送るよう制御する構成でもよい。また、画像処理装置１と印刷装置ＰＲ１との組みがネットワークＮに複数接続されている構成も考えられる。
【００６５】
＜３．画像処理装置のハードウェア構成例＞
図３は、本実施形態に係る画像処理装置のハードウェア構成例を示す図である。すなわち、本実施形態に係る画像処理装置１は、ＣＰＵ１１、メモリ１２、ハードディスクドライブ（ＨＤＤ）等の記憶装置１３、ネットワークＮを介して端末装置２０との間でデータの送信および受信を行う通信インタフェース（ＩＦ）部２４、タッチパネルや液晶ディスプレイにより構成されたユーザインタフェース（ＵＩ）装置１５、印刷装置ＰＲ１との間でデータの送受信を行うエンジンＩＦ部１６を備えている。また、これらの構成が制御バス１７を介して互いに接続されている。
【００６６】
ＣＰＵ１１は、メモリ１２または記憶装置１３に格納された画像処理プログラムに基づいて所定の処理を実行し、画像処理装置の動作を制御する。
【００６７】
＜４．情報処理プログラム＞
本実施形態に係る情報処理プログラムは、コンピュータに実行させるステップを有している。すなわち、本実施形態に係る情報処理プログラムは、上記説明した情報処理装置のハードウェア構成例をコンピュータで実現し、このコンピュータに実行させるステップを有する。具体的には、図１に示す複数の変換手段の各々で実行され、第１の記憶手段および第２の記憶手段に対する情報の記憶、読み出しを制御する。ここで、本実施形態の情報処理プログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録されていたり、ネットワークを介して配信されたりするものでもある。
【００６８】
本実施形態に係る情報処理プログラムは、次のステップを備えている。
（１）受信した印刷情報の中に特定の画素情報へ変換する対象が含まれているか検索するステップ。
（２）特定の画素情報へ変換する対象が含まれている場合、この特定の画素情報が変換手段ＲＩＰ１〜ＲＩＰ４の各々に対応して設けられる第１の記憶手段Ｍ１に記憶されているか検索し、記憶されている場合には第１の記憶手段Ｍ１から読み出して利用し、記憶されていない場合には複数の変換手段ＲＩＰ１〜ＲＩＰ４に共通で用いられる第２の記憶手段Ｍ２に記憶されているか検索し、記憶されている場合には第２の記憶手段Ｍ２から読み出して利用するステップ。
（３）特定の画像情報が第１の記憶手段Ｍ１および第２の記憶手段Ｍ２のいずれにも記憶されていない場合には、印刷情報を特定の画素情報へ変換して第１の記憶手段Ｍ１および第２の記憶手段Ｍ２の両方へ記憶するステップ。
【００６９】
＜５．情報処理システム＞
図４は、本実施形態に係る情報処理システムを説明する図である。すなわち、本実施形態に係る情報処理システムＳＴＭは、上記説明した本実施形態の情報処理装置１が、ネットワークＮを介して複数接続された構成である。
【００７０】
図４（ａ）に示す例では、画像処理装置１と印刷装置ＰＲ１との組みが、ネットワークＮを介して複数接続された構成のシステムとなっている。この画像処理システムＳＴＭでは、ネットワークＮを介して端末装置２０から送られた印刷情報を、複数組みの画像処理装置１および印刷装置ＰＲ１で並列処理する。
【００７１】
図４（ｂ）に示す例では、画像処理装置１と印刷装置ＰＲ１との組みが複数設けられ、これらの組みが統括制御部１００によって統括された構成のシステムとなっている。この画像処理システムＳＴＭでは、ネットワークＮを介して端末装置２０から送られた印刷情報を統括制御部１００が受けて、これを複数組みの画像処理装置１および印刷装置ＰＲ１に振り分けて処理する。
【００７２】
いずれのシステム構成であっても、画像処理装置１は上記説明した本実施形態に係る構成および動作となっている。
【００７３】
＜６．具体例の説明＞
次に、本実施形態の具体例について説明する。先ず、本実施形態の具体例の説明に先立ち、本実施形態に対する比較例を説明する。
【００７４】
［比較例］
図５は、比較例１を説明する図である。比較例１に係る画像処理装置１は、各変換手段ＲＩＰ１〜ＲＩＰ４で印刷リソースをキャッシュおよび再利用する方式である。個々の変換手段ＲＩＰ１〜ＲＩＰ４は、キャッシュのためのバッファである記憶手段Ｍを保持し、割り当てられたページのレンダリング中に遭遇する印刷リソースをキャッシュする。
【００７５】
その後のレンダリングで、同じ識別情報と付帯情報とを持つ印刷リソースに遭遇した場合は、キャッシュ済みのラスター、または中間形式の情報を再利用する。この構成では、各変換手段ＲＩＰ１〜ＲＩＰ４間でのキャッシュの排他制御を考慮する必要がなく、排他制御によるオーバヘッドも無い。また、同一モジュール中のキャッシュバッファを使用するため、キャッシュデータの入出力にかかる時間のロスが少ない。
【００７６】
一方、比較例１の構成では、同種の印刷リソースを、それぞれの変換手段ＲＩＰ１〜ＲＩＰ４がキャッシュする可能性があり、全体で使用するキャッシュバッファの総サイズが大きくなってしまう。図６は、変換手段内のキャッシュの状態を説明する図である。例えば、この例では、ＩＤ＝１、２、６を変換手段ＲＩＰ１と変換手段ＲＩＰ２の両方でキャッシュすることになる。そのため、この分のサイズが大きくなってしまう。
【００７７】
また、各変換手段でレンダリングするページが分散されるため、キャッシュのヒット率が下がる可能性がある。特に、少量のページを印刷する場合や、複数ページの内容が周期的に現れる印刷データの場合に不利となる。図７は、キャッシュのヒット率について説明する図である。ここでは、変換手段ＲＩＰ２にページＰ２、Ｐ６、Ｐ９が順次送られてくる。これにより、変換手段ＲＩＰ２の記憶手段には、ページＰ２、Ｐ６、Ｐ９に延べで含まれる印刷リソースＩＤ＝１、２、３、４、６がキャッシされる。しかし、この印刷リソースのうち、ページＰ２、Ｐ６、Ｐ９で再利用される印刷リソースはＩＤ＝２だけである。つまり、キャッシュした５つの印刷リソースのうち、再利用されるのは１つだけである。
【００７８】
図８は、比較例２を説明する図である。比較例２に係る画像処理装置１は、複数の変換手段ＲＩＰ１〜ＲＩＰ４で印刷リソースを共通の記憶手段ＭＭにキャッシュおよび再利用する方式である。個々の変換手段ＲＩＰ１〜ＲＩＰ４は、キャッシュのためのバッファを保持せず、割り当てられたページのレンダリング中に遭遇する印刷リソースを、別に用意した共通の記憶手段ＭＭにキャッシュする。その後のレンダリングで、同じ識別情報と付帯情報とを持つ印刷リソースに遭遇した場合は、キャッシュしたラスター、または中間形式の情報を共通の記憶手段ＭＭから取得して再利用する。
【００７９】
この構成では、各変換手段ＲＩＰ１〜ＲＩＰ４において、印刷リソースを重複してキャッシュすることがないため、比較例１に比べて画像処理装置１全体のキャッシュサイズが小さくなる。また、レンダリングする全てのページの印刷リソースを一括管理するため、キャッシュのヒット率も向上する。
【００８０】
一方、各変換手段ＲＩＰ１〜ＲＩＰ４と共通の記憶手段とのキャッシュ処理機能が別となり、印刷リソースのキャッシュおよび再利用において、各変換手段ＲＩＰ１〜ＲＩＰ４間でのキャッシュの排他制御を考慮する必要がある。また、排他制御によるオーバヘッドも発生する。また、各変換手段ＲＩＰ１〜ＲＩＰ４と共通の記憶手段ＭＭとの間でキャッシュデータの入出力にかかる時間のロスが大きくなる。特に、印刷リソースをラスターでキャッシュした場合はサイズが大きくなり、キャッシュデータの入出力にかかる時間の印刷時間全体に影響は無視できなくなる。
【００８１】
［第１実施形態］
本実施形態に係る情報処理装置１は、振り分け制御手段３と複数の変換手段ＲＩＰ１〜ＲＩＰ４とを備えている。各変換手段ＲＩＰ１〜ＲＩＰ４は独立したレンダリング処理を行う機能を持つ。振り分け制御手段３より前段の機能では、クライアントからのジョブを入力する機能を持つ。画像処理装置１は、複数のＰＤＬ（ページ記述言語）をサポートしており、ジョブキューにアサインされたジョブ属性に従った制御を行う。
【００８２】
例えば、ページ独立で分割処理が可能なＰＤＬであるＰＤＦ（Portable Document Format）のジョブがスケジューリングされると、リソースサーバは入力されたＰＤＦジョブ全体を、ジョブ開始前に指定された場所へ格納する。ジョブマネージャからジョブ指示を受けた、ＰＤＦアナライザはＰＤＦのページ数をカウントし、ページ数分の空ページデータを出力する。その後、インポーザモジュールが、あらかじめ設定されたページ配置情報に基づきページ送信順番を決定し、ページの属性情報を付与して処理要求コマンドが作成される。
【００８３】
図１に示す本実施形態に係る情報処理装置１の構成では、各変換手段ＲＩＰ１〜ＲＩＰ４で印刷リソースをキャッシュおよび再利用する構成と、複数の変換手段ＲＩＰ１〜ＲＩＰ４で印刷リソースを共通にキャッシュおよび再利用する構成との両方を持ち、状況により切り替えや協調しながら、キャッシュ処理を実現する。
【００８４】
各変換手段ＲＩＰ１〜ＲＩＰ４の制御部２は、予め設定されたしきい値を参照し、各変換手段ＲＩＰ１〜ＲＩＰ４の第１の記憶手段Ｍ１に印刷リソースをキャッシュするか、複数の変換手段ＲＩＰ１〜ＲＩＰ４で共通の第２の記憶手段Ｍ２に印刷リソースをキャッシュするかを判定する。判定のためのしきい値は、２種類存在する。
【００８５】
１つ目は、各変換手段ＲＩＰ１〜ＲＩＰ４でレンダリング中に、初めて遭遇した印刷リソースをキャッシュする際のしきい値であり、以下がある。
（１）各変換手段ＲＩＰ１〜ＲＩＰ４の第１の記憶手段Ｍ１にキャッシュする場合の印刷リソースのサイズの上限。
（２）各変換手段ＲＩＰ１〜ＲＩＰ４の第１の記憶手段Ｍ１にキャッシュする場合のバッファの残り容量の下限。
【００８６】
２つ目は、レンダリングが進む過程で、第２の記憶手段Ｍ２への共通のキャッシュ機能か、第１の記憶手段Ｍ１へのキャッシュ済みの印刷リソースを読み出し、再構成し、第２の記憶手段Ｍ２から第１の記憶手段Ｍ１へ印刷リソースをダウンロードしたり、第１の記憶手段Ｍ１のキャッシュバッファから印刷リソースを削除したりして、キャッシュ状態の最適化を実現するためのしきい値であり、以下のようになっている。
【００８７】
（３）最近レンダリングしたページの中で、キャッシュ済みの印刷リソースが再利用された回数であり、この値を超えた場合は、変換手段ＲＩＰ１〜ＲＩＰ４の第１の記憶手段Ｍ１に優先的にキャッシュする。判定対象のページ数については別途設定する。
（４）最近レンダリングしたページの中で、キャッシュ済みの印刷リソースが再利用された回数であり、この値未満の場合は、上記（３）に達した印刷リソースをキャッシュする際に、変換手段ＲＩＰ１〜ＲＩＰ４の第１の記憶手段Ｍ１から優先的にキャッシュアウトする。判定対象のページ数については別途設定する。
【００８８】
上記（１）〜（２）のしきい値を使用したキャッシュ判定方法について、図９のフローチャートに沿って説明する。なお、この処理は、各変換手段ＲＩＰ１〜ＲＩＰ４の制御部Ｍ１で実行される。先ず、ジョブデータのレンダリング中に初めて遭遇した印刷リソースをキャッシュする場合は（ステップＳ１０１）、自手段で管理しているキャッシュ情報テーブルを参照する（ステップＳ１０２）。
【００８９】
そして、キャッシュ情報テーブルを参照して、自手段の第１の記憶手段に対象となる印刷リソースをキャッシュ済みであるか否かを判断する（ステップＳ１０３）。キャッシュ済みでない場合には、共通のキャッシュである第２の記憶手段に対象となる印刷リソースをキャッシュ済みであるか否かを判断する（ステップＳ１０４）。第１の記憶手段もしくは第２の記憶手段に対象となる印刷リソースがキャッシュ済みである場合には、キャッシュ情報テーブルの「ページ番号」、「再利用回数カウント」を更新し（ステップＳ１０５）、レンダリング処理を実行する（ステップＳ１１０）。なお、ここでのレンダリング処理では、キャッシュ済みの印刷リソースについて新たなレンダリングを行うことなく、第１の記憶手段もしくは第２の記憶手段から読み出したものを再利用する。
【００９０】
一方、対象となる印刷リソースが第１の記憶手段、第２の記憶手段のいずれにもキャッシュされていなかった場合、再度、共通のキャッシュである第２の記憶手段に対象となる印刷リソースがキャッシュされているかを問い合わせる（ステップＳ１０６）。すなわち、ステップＳ１０４からステップＳ１０６までの処理の間に他の変換手段が第２の記憶手段に同じ印刷リソースをキャッシュしている可能性があるため、問い合わせを行う。
【００９１】
ここで共通のキャッシュである第２の記憶手段に対象となる印刷リソースがキャッシュされている場合、ステップＳ１０９へ進む。一方、キャッシュされていない場合、上記しきい値（１）、（２）からキャッシュ先の判定を行い、対象となる印刷リソースをレンダリングして、判定先へキャッシュする処理を実行する（ステップＳ１０８）。その後、キャッシュ情報テーブルの「ページ番号」、「再利用回数カウント」を更新し（ステップＳ１０９）、レンダリング処理を実行する（ステップＳ１１０）。
【００９２】
上記、しきい値（１）、（２）の判定は、メモリ使用量の抑制を目的として、対象の印刷リソースのサイズに注目する。まず、遭遇した印刷リソースがしきい値（１）よりも大きい値かを比較し、大きい場合は共通のキャッシュである第２の記憶手段へキャッシュし、小さい場合は変換手段の第１の記憶手段へキャッシュすると判断する。
【００９３】
変換手段の第１の記憶手段へキャッシュすると判断した際には、変換手段の第１の記憶手段のキャッシュバッファの残り容量と、しきい値（２）とを比較し、しきい値（２）よりもバッファの残り容量が少ない場合は、共通のキャッシュである第２の記憶手段のバッファへキャッシュすると判断する。
【００９４】
各変換手段は、この判定結果に従って、自身のバッファ（第１の記憶手段）か、共通のキャッシュである第２の記憶手段のどちらかに印刷リソースをキャッシュし、内部のキャッシュ情報テーブルのキャッシュ状態を更新する。
【００９５】
図１０は、変換手段が持つキャッシュ情報テーブルの一例を説明する図である。キャッシュ情報テーブルは各変換手段が持っており、各変換手段がレンダリングする過程で遭遇した印刷リソースのキャッシュ情報および再利用状況を保持する。図１０に示すキャッシュ情報テーブルは、変換手段ＲＩＰ１、ＲＩＰ２の情報テーブルの例である。
【００９６】
キャッシュ情報テーブルは、特定の印刷リソースの識別情報（ＩＤ）と、付帯情報（例えば、ハッシュ値）と、データサイズ、キャッシュ先、ページ番号、および再利用回数のカウント値を備えている。このキャッシュ情報テーブルにより、各変換手段ＲＩＰ１〜ＲＩＰ４は、自手段が処理した印刷リソースが自手段の第１の記憶手段Ｍ１に記憶されているか、第２の記憶手段Ｍ２に記憶されているかの管理を行う。
【００９７】
なお、共通のキャッシュである第２の記憶手段Ｍ２にキャッシュする場合は、キャッシュ対象となる印刷リソースがすでに、他の変換手段からの依頼によりキャッシュ済みかを第２の記憶手段Ｍ２に問い合わせて、まだキャッシュされていなければキャッシュを依頼する。既に第２の記憶手段Ｍ２のバッファにキャッシュ済みである場合は、自身のキャッシュ情報テーブルにキャッシュ済みの情報を追加する。
【００９８】
また、各変換手段ＲＩＰ１〜ＲＩＰ４の第１の記憶手段Ｍ１にキャッシュする場合も、共通のキャッシュである第２の記憶手段Ｍ２にすでにキャッシュ済みの印刷リソースであるかを確認し、キャッシュ済みの場合は、第２の記憶手段Ｍ２からからキャッシュ済みの印刷リソースを第１の記憶手段Ｍ１にダウンロードして保持する。これによって、無用なキャッシュ処理でレンダリング処理の時間をロスすることを防ぐ。
【００９９】
次に、上記（３）、（４）のしきい値を使用したキャッシュ判定方法について図１１のフローチャートに沿って説明する。なお、この処理は、各変換手段の制御部で実行される。
【０１００】
上記（１）、（２）のしきい値を用いたキャッシュの判定は、ジョブ開始後、初めて遭遇した印刷リソースについての処理であるため、キャッシュする印刷リソースが、その後頻繁に再利用されるものなのか、または再利用されないものなのか、判断していない。そのため、メモリ使用量のみをキャッシュ先の判定材料としていた。しかし、高速のレンダリングを実現するためには、変換手段の第１の記憶手段の許容範囲内で、極力、頻繁に再利用される印刷リソースを変換手段の第１の記憶手段にキャッシュするべきである。そのため、以下のようにキャッシュ済みの印刷リソースを再構成して高速なレンダリングを実現する。
【０１０１】
先ず、各変換手段がレンダリング中に、キャッシュ済みの印刷リソースを再利用した際には、自身のキャッシュ情報テーブルに再利用回数をカウントアップし、ページ番号に処理中のページを追加しておく（ステップＳ２０１）。この、ページ番号を確認し、最近レンダリングしたページ範囲において、再利用回数がしきい値（３）に達したかを判断する（ステップＳ２０２〜Ｓ２０３）。
【０１０２】
再利用回数がしきい値（３）に達している場合、共通のキャッシュである第２の記憶手段のバッファで保持されている印刷リソースであるか否かを判断する（ステップＳ２０４）。第２の記憶手段に保持されている印刷リソースである場合は、変換手段の第１の記憶手段のバッファに十分な空き容量があるか否かを判断し（ステップＳ２０５）、対象となる印刷リソースを変換手段の第１の記憶手段にダウンロードする（ステップＳ２０６）。このとき、変換手段の第１の記憶手段に十分な空き容量が無い場合は、しきい値（３）に達した印刷リソースを優先して変換手段の第１の記憶手段にキャッシュするために、すでに変換手段にキャッシュ済みの印刷リソースの中から、しきい値（４）に達する物を削除する（ステップＳ２０７）。
【０１０３】
削除する印刷リソースの判定処理は、図１２のフローチャートに沿って行う。先ず、キャッシュ情報テーブル(図１０)を参照し、あらかじめ設定されている、最近レンダリングしたページの範囲において、再利用された回数がしきい値（４）より少ない印刷リソースを抽出する（ステップＳ３０１）。
【０１０４】
次に、これらの合計サイズを算出し（ステップＳ３０２）、この合計サイズが変換手段の第１の記憶手段にダウンロードする印刷リソースのサイズより小さいかを判断する（ステップＳ３０３）。小さくない場合は、抽出した印刷リソースの中で再利用回数の少ないものから、ダウンロード予定の印刷リソースのサイズに達するまで第１の記憶手段から削除する（ステップＳ３０９）。一方、小さい場合、抽出した印刷リソースを第１の記憶手段から削除する（ステップＳ３０４）。
【０１０５】
次に、第１の記憶手段に残ったキャッシュ済み印刷リソースとダウンロードする予定の印刷リソースの最近レンダリングしたページの範囲を比較する（ステップＳ３０５）。具体的には、キャッシュ情報テーブル(図１０)の「ページ番号」に各印刷リソースが再利用されたページが列挙されているため、その中のあらかじめ設定されている最近レンダリングしたページ範囲の再利用回数を比較し、ダウンロード予定の印刷リソースの方が、再利用回数が多ければキャッシュ済みの印刷リソースを削除する。もしも、この判定処理で最近レンダリングしたページの範囲で両方の再利用回数が同じであった場合は、キャッシュ情報テーブルの「再利用カウント」を比較し、ジョブ開始からの再利用カウントがキャッシュ済みの印刷リソースの方が小さければ、キャッシュ済みの印刷リソースを削除する（ステップＳ３０６〜Ｓ３０７）。
【０１０６】
以上の判定の結果、ダウンロード済みの印刷リソースを削除して、できた空き容量のサイズが、ダウンロード予定の印刷リソースのサイズよりも大きくなれば、ダウンロード処理を行う（ステップＳ３０８）。
【０１０７】
以降、レンダリング中に印刷リソースに遭遇した場合はキャッシュ情報テーブルを参照し、キャッシュが未処理の場合は、図９の判定処理に従ってキャッシュし、キャッシュ済みの場合は、図１１、図１２の手順でキャッシュ済みの印刷リソースを再構成すると共に、変換手段の第１の記憶手段にキャッシュされたものか、共通のキャッシュである第２の記憶手段にキャッシュされたもののいずれかから取り出して再利用する。
【０１０８】
以上より、変換手段の第１の記憶手段には、サイズも適当で、再利用頻度の高い印刷リソースがキャッシュされ、共通のキャッシュである第２の記憶手段には、サイズが大きい、または、再利用頻度の比較的低い印刷リソースがキャッシュされることになる。これによって、それぞれの長所を生かしたキャッシュ処理を実現する。
【０１０９】
［第２実施形態］
本実施形態に係る情報処理装置１は、第１実施形態と同様、振り分け制御手段と複数の変換手段とを備えている。また、各変換手段で印刷リソースをキャッシュおよび再利用する構成と、複数の変換手段で印刷リソースを共通にキャッシュおよび再利用する構成との両方を持ち、状況により切り替えや協調しながら、キャッシュ処理を実現する。
【０１１０】
第２実施形態では、レンダリング中に上記（１）、（２）のしきい値によって、変換手段の第１の記憶手段に印刷リソースをキャッシュする。また、その後のレンダリング処理で再利用の頻度が低くなった場合に、最近のレンダリングページの範囲で、しきい値（４）に該当する印刷リソースを、変換手段の第１の記憶手段から削除するのではなく、共通のキャッシュである第２の記憶手段へ移動させるものである。
【０１１１】
これによって、変換手段の第１の記憶手段と共通のキャッシュである第２の記憶手段との間で、キャッシュ済みの印刷リソースを移動し、双方で、レンダリング中に必要になった印刷リソースの再度のキャッシュが必要無くなる。つまり、使用頻度が低くなった印刷リソースであっても、その後に再利用する必要が生じた際には、第２の記憶手段から第１の記憶手段へダウンロードして再利用することになる。これにより、レンダリング等の時間のかかる処理を再度実行する必要が無く、印刷時間のロスを防ぐ。
【０１１２】
図１３は、第２実施形態に係る処理のフローチャートである。なお、この処理は、各変換手段の制御部で実行される。先ず、キャッシュ情報テーブル(図１０)を参照し、あらかじめ設定されている、最近レンダリングしたページの範囲において、再利用された回数がしきい値（４）より少ない印刷リソースを抽出する（ステップＳ４０１）。
【０１１３】
次に、これらの合計サイズを算出し（ステップＳ４０２）、この合計サイズが変換手段の第１の記憶手段にダウンロードする印刷リソースのサイズより小さいかを判断する（ステップＳ４０３）。小さくない場合は、抽出した印刷リソースの中で再利用回数の少ないものから、ダウンロード予定の印刷リソースのサイズに達するまで第１の記憶手段から第２の記憶手段へ移動する（ステップＳ４０９）。ここで、移動とは、記憶内容を元の記憶場所から移動先の記憶場所へ複写し、元の記憶場所から削除することを言う。一方、小さい場合、抽出した印刷リソースを第１の記憶手段から第２の記憶手段へ移動する（ステップＳ４０４）。
【０１１４】
次に、第１の記憶手段に残ったキャッシュ済み印刷リソースとダウンロードする予定の印刷リソースの最近レンダリングしたページの範囲を比較する（ステップＳ４０５）。具体的には、キャッシュ情報テーブル(図１０)の「ページ番号」に各印刷リソースが再利用されたページが列挙されているため、その中のあらかじめ設定されている最近レンダリングしたページ範囲の再利用回数を比較し、ダウンロード予定の印刷リソースの方が、再利用回数が多ければキャッシュ済みの印刷リソースを第２の記憶手段へ移動する。もしも、この判定処理で最近レンダリングしたページの範囲で両方の再利用回数が同じであった場合は、キャッシュ情報テーブルの「再利用カウント」を比較し、ジョブ開始からの再利用カウントがキャッシュ済みの印刷リソースの方が小さければ、キャッシュ済みの印刷リソースを第２の記憶手段へ移動する（ステップＳ４０６〜Ｓ４０７）。
【０１１５】
［第３実施形態］
本実施形態に係る情報処理装置１は、第１実施形態と同様、振り分け制御手段と複数の変換手段とを備えている。また、各変換手段で印刷リソースをキャッシュおよび再利用する構成と、複数の変換手段で印刷リソースを共通にキャッシュおよび再利用する構成との両方を持ち、状況により切り替えや協調しながら、キャッシュ処理を実現する。
【０１１６】
第３実施形態では、各変換手段で印刷リソースをキャッシュし、再利用する処理中に、キャッシュしていない印刷リソースに遭遇した場合、複数の変換手段で共通の第２の記憶手段に印刷リソースの有無を問い合わせる。ここで、第２の記憶手段にキャッシュされている場合には、第２の記憶手段から印刷リソースを取得し、キャッシュされていない場合には、印刷リソースを第２の記憶手段にキャッシュする。なお、第1の記憶手段に印刷リソースがキャッシュされていない場合は、第１の記憶手段にキャッシュしてから第２の記憶手段に退避する。
【０１１７】
図１４は、第３実施形態に係る処理のフローチャートである。なお、この処理は、各変換手段の制御部で実行される。先ず、ジョブデータのレンダリング中に初めて遭遇した印刷リソースをキャッシュする場合は（ステップＳ５０１）、自手段で管理しているキャッシュ情報テーブルを参照する（ステップＳ５０２）。
【０１１８】
そして、キャッシュ情報テーブルを参照して、自手段の第１の記憶手段に対象となる印刷リソースをキャッシュ済みであるか否かを判断する（ステップＳ５０３）。キャッシュ済みでない場合には、共通のキャッシュである第２の記憶手段に対象となる印刷リソースをキャッシュ済みであるか否かを判断する（ステップＳ５０４）。このとき、共通のキャッシュである第２の記憶手段への問い合わせを行うロスを最小限にするために、１度の問い合わせで、第２の記憶手段が保持する全ての印刷リソースの一覧を取得し、変換手段自身の情報テーブルには無い印刷リソースの情報を、更新しておくようにしてもよい。
【０１１９】
第２の記憶手段にキャッシュ済みである場合、第２の記憶手段からキャッシュ済みの印刷リソースを取得し、キャッシュ情報テーブルの「ページ番号」、「再利用回数カウント」を更新する（ステップＳ５０５）。また、上記（３）〜（４）のしきい値を使用して、頻繁に再利用する最小限の印刷リソースのみを第１の記憶手段に保持する再構成を実行する（ステップＳ５０５）。そして、キャッシュ情報テーブルの「ページ番号」、「再利用回数カウント」を更新する（ステップＳ５１０）。
【０１２０】
一方、対象となる印刷リソースが第１の記憶手段、第２の記憶手段のいずれにもキャッシュされていなかった場合、再度、共通のキャッシュである第２の記憶手段に対象となる印刷リソースがキャッシュされているかを問い合わせる（ステップＳ５０６）。すなわち、ステップＳ５０４からステップＳ５０６までの処理の間に他の変換手段が第２の記憶手段に同じ印刷リソースをキャッシュしている可能性があるため、問い合わせを行う。
【０１２１】
ここで共通のキャッシュである第２の記憶手段に対象となる印刷リソースがキャッシュされている場合、ステップＳ５０５へ進む。一方、キャッシュされていない場合、対象となる印刷リソースをレンダリングして、共通のキャッシュである第２の記憶手段へキャッシュする処理を行う（ステップＳ５０８）。その後、キャッシュ情報テーブルの「ページ番号」、「再利用回数カウント」を更新し（ステップＳ５０９）、レンダリング処理を実行する（ステップＳ５１１）。
【０１２２】
第３実施形態では、共通のキャッシュである第２の記憶手段にジョブで使用する全ての印刷リソースがキャッシュされる。そして、各変換手段は、上記（３）〜（４）のしきい値を使用して、頻繁に再利用する最小限の印刷リソースのみを自手段の第１の記憶手段に保持し、その他は、共通のキャッシュである第２の記憶手段からキャッシュ済みの印刷リソースを取得して再利用する。
【０１２３】
これによって、ある変換手段でのレンダリング処理中に遭遇する印刷リソースが、他の変換手段によって共通のキャッシュである第２の記憶手段にキャッシュ済みであれば、再度キャッシュする時間の短縮化になる。また、共通のキャッシュである第２の記憶手段で保持する印刷リソースと、各変換手段の第１の記憶手段で保持する印刷リソースとで同じデータを重複した保持することを最小限にしている。このため、各変換手段においては、再利用の頻度が高い印刷リソースのみを保持することから、レンダリングの高速を維持しながら、キャッシュで使用するメモリの総量の低減にもつながる。
【０１２４】
なお、第３実施形態においては、各変換手段でレンダリング中に初めて遭遇した印刷リソースをキャッシュする際、上記（１）、（２）のしきい値によるキャッシュ先の判定を行っても、また、上記（１）、（２）のしきい値によるキャッシュ先の判定を行わずに図１４に示すフローチャートに沿った処理を行うようにしてもよい。
【０１２５】
［第４実施形態］
第４実施形態では、各変換手段が割り当てられたページデータをレンダリングする際に、各変換手段の第１の記憶手段への印刷リソースのキャッシュ状況を確認し、同種の印刷リソースが存在するページのパターン情報を予測するものである。
【０１２６】
図１５は、第４実施形態に係る処理のフローチャートである。なお、この処理は、各変換手段の制御部で実行される。先ず、予め設定済みの、ジョブ開始からのページ数（例えば、１０〜５０ページ程度）を、上記第３実施形態に係る方法（図１４参照）でレンダリング処理する（ステップＳ６０１〜Ｓ６０２）。その後、振り分け制御手段は、各変換手段にページを分配する前に、各変換手段で保持しているキャッシュ情報テーブル(図１０)を取得する（ステップＳ６０３〜Ｓ６０４）。
【０１２７】
この時点で各変換手段はレンダリングを高速で行うための必要最小限の印刷リソースを保持しており、その印刷リソースを使用するページであれば、常にキャッシュを再利用して印刷し得る状態になっている。
【０１２８】
次に、レンダリング依頼するページに含まれる印刷リソースをジョブデータの中から検索し（ステップＳ６０５）、その結果と各変換手段から取得したキャッシュ情報テーブルとを比較し（ステップＳ６０６）、変換手段が保持する印刷リソースのうち、より多くの識別情報と付帯情報とが一致する変換手段に、ページのレンダリング処理を依頼する（ステップＳ６０７）。
【０１２９】
この処理を、あらかじめ設定されたページ数（例えば、１０〜５０ページ程度）に対して実行し、その間にページを分配した変換手段とページ番号の情報とを振り分け制御手段の内部に蓄積する（ステップＳ６０８）。図１６は、振り分け制御手段の内部に蓄積するテーブルデータの例を示す図である。このテーブルデータでは、ページ番号およびそのページ番号の印刷データを処理した変換手段の番号とが対応付けられた状態で記憶されている。
【０１３０】
この蓄積が完了した際に、ページを分配した変換手段とページ番号との周期性（何ページ間隔でどの変換手段に対してレンダリング依頼を行っているか）を予測し、その予測の結果を以降のページの分配に利用する。例えば、図１６に示す例では、１００ページ、１１０ページ、１２０ページ…といった１０ページおきに１番目の変換手段へレンダリング依頼を行っている。したがって、振り分け制御手段は、以降のページについて１０ページおきに１番目の変換手段へレンダリング依頼をするであろうとの予測が行われる。この予測の結果より、振り分け制御手段は、１０ページおきに１番目の変換手段へレンダリング依頼を出すことになる。
【０１３１】
なお、第４実施形態での処理は、バリアブル・データ・プリントなどの大量ページのジョブに有効である。したがって、あまり効果の得られないページ数（例えば、数十ページ程度）のジョブでは処理しないよう、振り分け制御手段に対して予め設定しておくようにしてもよい。
【０１３２】
［第５実施形態］
第５実施形態では、上記第４実施形態における処理において、予測したパターン情報にしたがって、同種の印刷リソースを使用するページデータのレンダリングを、１回以上処理したことがある変換手段に割り当てることを特徴とする。
【０１３３】
すなわち、振り分け制御手段は、第４実施形態での予測の計算の結果、周期性が見られない場合は、第３実施形態によるレンダリング処理を実行する。逆に、周期性が見られる場合は、以降のページにおいて、その周期で各変換手段にページを分配する。これによって、各情報変換手段が保持する最小限の印刷リソースを有効に使用し、省メモリを実現しながら、キャッシュ済みの印刷リソースの再利用を高速で行う。
【符号の説明】
【０１３４】
１…画像処理装置、ＲＩＰ１〜ＲＩＰ４…情報変換手段、Ｍ１…第１の記憶手段、Ｍ２…第２の記憶手段、２…制御手段、３…振り分け制御手段
【図１】
2011025422.tif 000003
【図２】
2011025422.tif 000004
【図３】
2011025422.tif 000005
【図４】
2011025422.tif 000006
【図５】
2011025422.tif 000007
【図６】
2011025422.tif 000008
【図７】
2011025422.tif 000009
【図８】
2011025422.tif 000010
【図９】
2011025422.tif 000011
【図１０】
2011025422.tif 000012
【図１１】
2011025422.tif 000013
【図１２】
2011025422.tif 000014
【図１３】
2011025422.tif 000015
【図１４】
2011025422.tif 000016
【図１５】
2011025422.tif 000017
【図１６】
2011025422.tif 000018