(57)【要約】【課題】  処理対象の情報を各処理単位毎にその処理負荷に対応可能な処理能力を有するプロセッサに割当てることで、省電力化を図りながら処理効率を高める。【解決手段】  画像処理装置の制御部１０１において、処理負荷予測部１３３は、クライアント端末からの印刷ジョブに含まれる各頁毎の処理負荷情報に基づき、演算係数管理部１３１が管理する各プロセッサの処理能力に対応する演算係数を用いて各頁毎に各プロセッサの処理能力別の予測処理負荷を算出する。処理割当制御部１３４は、算出された各プロセッサの処理能力別の予測処理負荷と、処理負荷閾値管理部１３２が管理する各プロセッサの処理能力別の処理負荷閾値とに基づき、算出された予測処理負荷に対応可能な処理能力を有するプロセッサに当該各頁の処理を割当てて該処理を実行させる。【選択図】  図３
2009230220.tif 000002
【特許請求の範囲】
【請求項１】
情報の処理能力が異なる複数のプロセッサと、
前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、
前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、
情報の処理命令に含まれる各処理単位の情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記処理単位の情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、
前記処理単位の情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該処理単位の情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該処理単位の情報の処理を割当てる処理割当手段と
を具備する情報処理装置。
【請求項２】
画像情報の処理能力が異なる複数のプロセッサと、
前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、
前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、
画像情報の印刷命令に含まれる各頁の画像情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記各頁の画像情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、
前記各頁の画像情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の画像情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の画像情報の処理を割当てる処理割当手段と
を具備する画像処理装置。
【請求項３】
前記処理負荷情報は、整数演算処理に係わる整数演算処理負荷値と、浮動小数点演算処理に係わる浮動小数点演算処理負荷値とを含み、
前記演算係数管理手段は、
整数演算処理に係わる整数演算係数と、浮動小数点演算処理に係わる浮動小数点演算係数とで成る前記演算係数を管理し、
前記算出手段は、
前記各頁の画像情報毎に、前記整数演算処理負荷値に前記整数演算係数を乗じた値に、前記浮動小数点演算処理負荷値に前記浮動小数点演算係数を乗じた値を加算した予測処理負荷値を算出する
請求項２記載の画像処理装置。
【請求項４】
前記処理割当手段は、
前記処理の割当先のプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段高い処理能力を有するプロセッサに当該処理を代替割当する
請求項２または３記載の画像処理装置。
【請求項５】
前記処理割当手段は、
前記処理の割当先である最も処理能力が高いプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段低い処理能力を有するプロセッサに当該処理を代替割当する
請求項２または３記載の画像処理装置。
【請求項６】
前記処理割当手段は、
前記処理の割当先及び代替割当先の全てのプロセッサが処理受付不能の場合、当該各プロセッサの稼動状態を監視し、稼動状態からアイドル状態になったプロセッサに当該処理を代替割当する
請求項２乃至５のいずれか記載の画像処理装置。
【請求項７】
前記印刷命令を受けた際にアイドル状態であったか否かを判別する判別手段
を具備し、
前記処理割当手段は、
前記判別手段により、前記印刷命令を受けた際にアイドル状態にあったと判別された場合、印刷命令された前記画像情報の１頁目の処理を最も高い処理能力を有するプロセッサに割当てる
請求項２乃至６のいずれか記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、及び画像処理装置に関する。
【背景技術】
【０００２】
プロセッサを用いる各種の情報処理装置において、プロセッサによる情報処理効率を高める種々の技術が提案されている。
【０００３】
プリンタや複合機等の画像情報処理装置においても、例えば、ホスト端末から印刷指示された文書情報に基づき印刷データを生成する画像処理機能をプロセッサシステムにより実現している。
【０００４】
この種の画像情報処理装置へのプロセッサシステムの適用例について、下記特許文献１には、非対称なマルチプロセッサを、仕事量の予測可能な複数のジョブをプロセッサに割り振る画像処理システムが開示されている。
【０００５】
特許文献１記載の画像処理システムでは、それぞれのプロセッサの命令セットは基本命令セットおよび該基本命令セットのサブセットを有しており、該基本命令及びサブの各セットに基づき、処理を割り振るプロセッサを排他的に選択している。
【特許文献１】特開２００４−２５２９００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、処理対象の情報を、各処理単位毎にその処理負荷に対応可能な処理能力を有するプロセッサに割当てて処理することにより、省電力化を図りながら処理効率を高めることが可能な情報処理装置、及び画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、請求項１記載の情報処理装置の発明は、情報の処理能力が異なる複数のプロセッサと、前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、情報の処理命令に含まれる各処理単位の情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記処理単位の情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、前記処理単位の情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該処理単位の情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該処理単位の情報の処理を割当てる処理割当手段とを具備する。
【０００８】
請求項２記載の画像処理装置の発明は、画像情報の処理能力が異なる複数のプロセッサと、前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、画像情報の印刷命令に含まれる各頁の画像情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記各頁の画像情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、前記各頁の画像情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の画像情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の画像情報の処理を割当てる処理割当手段とを具備する。
【０００９】
請求項３記載の発明は、上記請求項２記載の発明において、前記処理負荷情報は、整数演算処理に係わる整数演算処理負荷値と、浮動小数点演算処理に係わる浮動小数点演算処理負荷値とを含み、前記演算係数管理手段は、整数演算処理に係わる整数演算係数と、浮動小数点演算処理に係わる浮動小数点演算係数とで成る前記演算係数を管理し、前記算出手段は、前記各頁の画像情報毎に、前記整数演算処理負荷値に前記整数演算係数を乗じた値に、前記浮動小数点演算処理負荷値に前記浮動小数点演算係数を乗じた値を加算した予測処理負荷値を算出する。
【００１０】
請求項４記載の発明は、上記請求項２または３記載の発明において、前記処理割当手段は、前記処理の割当先のプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段高い処理能力を有するプロセッサに当該処理を代替割当する。
【００１１】
請求項５記載の発明は、上記請求項２または３記載の発明において、前記処理割当手段は、前記処理の割当先である最も処理能力が高いプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段低い処理能力を有するプロセッサに当該処理を代替割当する。
【００１２】
請求項６記載の発明は、上記請求項２乃至５のいずれか記載の発明において、前記処理割当手段は、前記処理の割当先及び代替割当先の全てのプロセッサが処理受付不能の場合、当該各プロセッサの稼動状態を監視し、稼動状態からアイドル状態になったプロセッサに当該処理を代替割当する。
【００１３】
請求項７記載の発明は、上記請求項２乃至６のいずれか記載の発明において、前記印刷命令を受けた際にアイドル状態であったか否かを判別する判別手段を具備し、前記処理割当手段は、前記判別手段により、前記印刷命令を受けた際にアイドル状態にあったと判別された場合、印刷命令された前記画像情報の１頁目の処理を最も高い処理能力を有するプロセッサに割当てる。
【発明の効果】
【００１４】
請求項１記載の情報処理装置の発明によれば、処理負荷が大きい処理単位の情報には高性能なプロセッサを割り当てて処理のスループットを向上させる一方で、処理負荷が小さい処理単位の情報には低性能なプロセッサを割り当てて消費電力を抑えつつ、全体の処理の高速化、及び低消費電流化が図れる。
【００１５】
請求項２記載の画像処理装置の発明によれば、画像情報の処理に際し、処理負荷が大きい頁には高性能なプロセッサを割り当てて処理のスループットを向上させる一方で、処理負荷が小さい頁には低性能なプロセッサを割り当てて消費電力を抑えつつ、全体の処理の高速化、及び低消費電流化が図れる。
【００１６】
請求項３記載の発明は、上記請求項２記載の発明において、各頁の画像情報が、整数演算対象情報と浮動小数点演算対象情報から構成される場合でも、各頁の画像情報をその処理負荷に対応可能な処理能力を有するプロセッサに割当てて分散処理し、省電力化を図りながら画像情報の処理効率を高めることができる。
【００１７】
請求項４記載の発明は、上記請求項２または３記載の発明において、高性能、中性能及び低性能の各プロセッサのうち、処理負荷に応じて該当する頁の画像情報処理を割当てた、例えば、中性能プロセッサが空いておらず、高性能プロセッサが空いている場合は該高性能プロセッサにより該頁の画像情報処理が行える。
【００１８】
請求項５記載の発明は、上記請求項２または３記載の発明において、高性能、中性能及び低性能の各プロセッサのうちの高性能プロセッサにある頁の画像情報の処理を割り当てようとし、該高性能プロセッサが空いておらず、中性能プロセッサが空いている場合は該中性能プロセッサにより該頁の画像情報処理が行える。
【００１９】
請求項６記載の発明は、上記請求項２乃至５のいずれか記載の発明において、ある頁の画像情報処理を高性能プロセッサに割当てようとする際に、高性能、中性能、低性能のいずれのプロセッサも空いていない場合、その後に、例えば、中性能プロセッサが空いた時に、該中性能プロセッサで当該頁の画像情報処理が行える。
【００２０】
請求項７記載の発明は、上記請求項２乃至６記載の発明において、アイドル状態で印刷指示を受けた際に、１頁目の画像情報を高性能プロセッサで処理して迅速に画像出力し、印刷指示した利用者の画像出力開始までの待ち時間による不安感を和らげることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施形態について添付図面を参照して詳細に説明する。
【００２２】
図１は、本発明に係わる印刷システムの全体構成を示すブロック図である。
【００２３】
この印刷システムは、クライアント端末３０と、クライアント端末３０からの印刷指示に基づき印刷対象の文書等の画像情報を画像処理して画像出力装置２０に送出する印刷データを生成する画像処理機能を有する画像処理装置１０とをＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の通信ネットワーク５０を介して接続して構成される。
【００２４】
クライアント端末３０は、例えば、ＰＣ（パーソナル・コンピュータ）により実現され、図１に示すように、キーボードやマウス等の入力デバイスから成る入力／操作部３１、操作ガイダンスや動作状態等の各種情報を表示する表示部３２、動作プログラム等の各種情報を記憶する記憶部３３、装置全体の制御を行う制御部３４、ネットワーク５０を介して画像処理装置１０と通信（印刷ジョブ等のデータの送受）する際の通信インタフェースを司る通信インタフェース（Ｉ／Ｆ）部３５を備えて構成される。
【００２５】
クライアント端末１０において、制御部３４には、入力／操作部３１での所定の操作に応じて文書情報（文書ファイル）などの操作、保存、表示、編集、印刷指示操作などの処理を行うアプリケーション部３４１、入力／操作部３１での所定の文書ファイルの印刷指示操作に基づき該文書ファイルの描画命令であるＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）情報と、該文書ファイルの各頁毎の処理負荷値を示す処理負荷情報から成る印刷ジョブを生成して画像処理装置１０に送出するプリンタドライバ３４２が設けられる。
【００２６】
図２は、クライアント端末３０のプリンタドライバ３４２が印刷対象の文書ファイルのＰＤＬ情報に付加する処理負荷情報の一例を示す表図である。
【００２７】
図２に示す表図において、ページ数（例えば、ｉとする）は１〜Ｎまであり、ＰａｇｅｉＩはｉ頁目の整数演算（Ｉ）負荷の値、ＰａｇｅｉＦはｉ頁目の浮動小数点演算（Ｆ）負荷の値を表している。
【００２８】
図２に示すように、プリンタドライバ３４２は、Ｎ頁の文書ファイルの印刷ジョブの生成に際しては、１〜Ｎの各頁毎に、整数演算処理に係わる整数演算処理負荷値（Ｐａｇｅ１Ｉ，Ｐａｇｅ２Ｉ，…，ＰａｇｅＮＩ）と、浮動小数点演算処理に係わる浮動小数点演算処理負荷値（Ｐａｇｅ１Ｆ，Ｐａｇｅ２Ｆ，…，ＰａｇｅＮＦ）を算出し、該各頁の整数演算処理負荷値と浮動小数点演算処理負荷値とから成る処理負荷情報をＰＤＬ情報に付加して画像処理装置１０に印刷指示する。
【００２９】
一方、本発明に係わる画像処理装置１０は、例えば、高性能、中性能、低性能というように、段階的に処理能力が異なる複数のプロセッサで実現される画像処理部を有し、クライアント端末３０からネットワーク５０を介して受信した上記印刷ジョブから各頁毎に処理負荷情報を抽出し、該抽出した処理負荷情報を用いて各頁毎に処理負荷の見積り値（予測処理負荷）を算出する一方で、各頁の処理を、該算出した予測負荷値に基づき、該予測負荷値に対応可能な処理能力を有するプロセッサに割当てる処理機能を有する。
【００３０】
以下、本発明に係わる画像処理装置１０に適用するプロセッサシステムの構成及び処理動作について各実施例を挙げて詳細に説明する。
【実施例１】
【００３１】
図３は、実施例１に係わる画像処理装置１０の機能構成を示すブロック図である。
【００３２】
この画像処理装置１０は、装置全体の制御を行なう制御部１０１、制御部１０１の制御の下に、クライアント端末３０から受信した印刷ジョブに基づき、印刷対象の画像データに対する画像処理を行う画像処理部１０２、クライアント端末３０からのネットワーク５０を介して印刷ジョブを受信する際のネットワーク５０とのインタフェース処理を行うネットワークインタフェース（Ｉ／Ｆ）部１０４、画像処理部１０２による画像処理後のデータ（印刷データ）をプリンタエンジン部である画像出力装置２０に出力する際のインタフェースを司るプリンタエンジンインタフェース（Ｉ／Ｆ）部１０５、動作プログラム等の情報を記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０６、クライアント端末３０から受信した印刷ジョブ等の各種情報の一時記憶手段として用いられるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０７、各種入出力装置とのの通信インタフェースを司る入力／出力（Ｉ／Ｏ）デバイス１０８を具備して構成される。
【００３３】
制御部１０１、画像処理部１０２、ネットワークＩ／Ｆ部１０４、プリンタエンジンＩ／Ｆ部１０５は、１つの半導体デバイスで構成される。
【００３４】
この半導体デバイス内には、上記各機能部間の情報伝送経路である内部バス１２１と、これら各機能部と該半導体デバイス外のＲＯＭ１０６、ＲＡＭ１０７等の機能部との間で外部バス１２２を介して通信する外部バスＩ／Ｆ部１０３が更に設けられる。
【００３５】
また、この半導体デバイス内の構成要素である画像情報処理部１０２は、それぞれが、多種類の処理能力（高性能、中性能、低性能等の各段階の処理能力）のうちの１つの処理能力を有する複数のマイクロプロセッサ（超小型処理装置：以下、プロセッサ）から構成される。
【００３６】
本実施例では、１つの高性能プロセッサ１１１（プロセッサＡ）と、該高性能プロセッサＡの次に高い（一段低い）処理能力を有する１つの中性能プロセッサ１１２（プロセッサＢ）と、該中性能プロセッサＢの次に高い（一段低い）処理能力を有する３つの低性能プロセッサ１１３，１１４，１１５，１１６〔プロセッサＣ（Ｃ１，Ｃ２，Ｃ３）〕を備えて構成される。
【００３７】
制御部１０１もプロセッサで構成され、プリンタドライバ３４２から入力された印刷ジョブ（ＰＤＬと処理負荷情報を含む）中の処理負荷情報に基づき印刷指示された文書ファイルの各頁の処理負荷の見積もりを行い、３種類（高性能、中性能、低性能）のプロセッサＡ，Ｂ，Ｃ１〜Ｃ３に対する処理の割り当てを行う機能を有する。
【００３８】
内部バス１２１は半導体デバイス内部のバスであり、上記各プロセッサＡ，Ｂ，Ｃ１〜Ｃ３と該半導体デバイスの外部にある構成要素との接続インタフェースのモジュールである外部バスＩ／Ｆ部１０３が接続されている。
【００３９】
外部バスＩ／Ｆ部１３０は内部バス１２１と外部のデバイスが接続された外部バス１２２のデータの受け渡しを行うインターフェースモジュールである。
【００４０】
外部バス１２２にはＲＯＭ１０６、ＲＡＭ１０７、Ｉ／Ｏデバイス１０８が接続されている。
【００４１】
ネットワークＩ／Ｆ部１０４は、クライアント端末３０のプリンタドライバ３４２から情報を受け取るためのＬＡＮインタフェースであり、ネットワーク５０に接続されている。
【００４２】
プリンタエンジンＩ／Ｆ部１０５は、画像を印刷する画像出力装置２０に接続されている。
【００４３】
図４は、本実施例に係わる画像処理装置１０（図３参照）の制御部１０１の機能構成を示すブロック図である。
【００４４】
画像処理装置１０において、制御部１０１は、上記３種類のプロセッサＡ，Ｂ，Ｃの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理部１３１、上記３種類のプロセッサＡ，Ｂ，Ｃの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する処理負荷閾値管理部１３２、クライアント端末３０からの印刷ジョブ（印刷命令）に含まれる各頁の情報の処理負荷値を示す処理負荷情報と、演算係数管理部１３１で管理されているプロセッサＡ，Ｂ，Ｃに対応する処理能力別の演算係数とに基づき、各頁の情報毎に処理能力別の処理負荷の見積り値を予測（算出）する処理負荷予測部１３３、処理対象情報の各頁の情報毎に、処理負荷予測部１３３により算出された処理負荷見積り値（予測処理負荷値）が処理負荷閾値管理部１３２が管理する処理負荷閾値以上か否かを３種類のプロセッサＡ，Ｂ，Ｃの処理能力別に判定し、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の情報の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の情報の処理を割当てる処理割当制御部１３４を具備して構成される。
【００４５】
図５は、本実施例の画像処理装置１０における制御部１０１の演算係数管理部１３１による各プロセッサの処理能力別の演算係数の管理形態を示す表図である。
【００４６】
図５において、高性能プロセッサＡに関しては、その整数演算係数を“ＡＩ”、浮動小数点演算係数を“ＡＦ”と表す。
【００４７】
中性能プロセッサＢに関しては、その整数演算係数を“ＢＩ”、浮動小数点演算係数を“ＢＦ”と表す。
【００４８】
低性能プロセッサＣに関しては、その整数演算係数を“ＣＩ”、浮動小数点演算係数を“ＣＦ”と表す。
【００４９】
この演算係数は、処理能力が高ければ小さく、処理能力が低ければ大きくなる。従がって、（ＡＩ＜ＢＩ＜ＣＩ）、及び（ＡＦ＜ＢＦ＜ＣＦ）という大小関係が成り立つ。
【００５０】
また、この例では低性能プロセッサＣの浮動小数点演算はソフトウエアエミュレーションによって処理されることを前提にしており、“ＣＦ”は“ＢＦ”に比べてかなり大きな値となる。
【００５１】
このように、本実施例の画像処理装置１０において、演算係数管理部１３１は、図５に示す如くの演算係数管理テーブル１３１１（例えば、演算係数管理部１３１内に設けられる）を用いて、高性能プロセッサＡ、中性能プロセッサＢ、低性能プロセッサＣの各処理能力に対応して、それぞれ、整数演算係数と浮動小数点演算係数から成る演算係数を保持、管理している。
【００５２】
図５に示す演算係数管理テーブル１３１１を用いて管理される演算係数は、制御部１０１（図４参照）の処理負荷予測部１３３における処理負荷予測（算出）処理に用いられる。
【００５３】
すなわち、画像処理装置１０の制御部１０１において、処理負荷予測部１３３は、クライアント端末３０から印刷ジョブを受信すると、該印刷ジョブに含まれる各頁毎の処理負荷値と、演算係数管理テーブル１３１１に格納管理される演算係数とに基づき、下式（１）〜（３）を用いて、各頁毎に、各種別のプロセッサＡ，Ｂ，Ｃの処理能力別の処理負荷見積り値（予測処理負荷値）を算出する。
【００５４】
高性能プロセッサＡでのｉ頁目の処理負荷見積り値（ＬＡｉ）  
＝（ＰａｇｅｉＩ×ＡＩ）＋（ＰａｇｅｉＦ×ＡＦ）  …  （１）
中性能プロセッサＢでのｉ頁目の処理負荷見積り値（ＬＢｉ）  
＝（ＰａｇｅｉＩ×ＢＩ）＋（ＰａｇｅｉＦ×ＢＦ）  …  （２）
低性能プロセッサＣでのｉ頁目の処理負荷見積り値（ＬＣｉ）  
＝（ＰａｇｅｉＩ×ＣＩ）＋（ＰａｇｅｉＦ×ＣＦ）  …  （３）
上記（１）〜（３）式によれば、処理負荷予測部１３３は、クライアント端末３０から印刷指示された文書ファイルの各頁毎の整数演算処理負荷とプロセッサの処理能力別の整数演算係数の積に、各頁毎の浮動小数点演算処理負荷とプロセッサの処理能力別の浮動小数点演算係数の積を合算して処理負荷見積もり値（予測処理負荷値）を算出する。
【００５５】
図６は、本実施例の画像処理装置１０における制御部１０１の処理負荷閾値管理部１３２による各プロセッサの処理能力別の処理負荷閾値の管理形態を示す表図である。
【００５６】
処理負荷閾値管理部１３２は、図６に示す処理負荷閾値管理テーブル１３２１（例えば、処理負荷閾値管理部１３２内に設けられる）を用いて、高性能プロセッサＡ、中性能プロセッサＢ、低性能プロセッサＣの各処理能力に対応して、それぞれ、“Ａｔｈ”、“Ｂｔｈ”、“Ｃｔｈ”なる値を有する処理負荷閾値を保持、管理している。
【００５７】
図６に示す処理負荷閾値管理テーブル１３２１を用いて管理される処理負荷閾値は、処理負荷予測部１３３により算出された各頁の予測処理負荷値と各処理能力別に比較され、該比較結果に基づく当該頁の処理の各プロセッサへの割当判定に用いられる。
【００５８】
すなわち、本実施例の画像処理装置１０の制御部１０１（図４参照）において、処理割当制御部１３４は、クライアント端末３０から印刷指示された文書ファイルの各頁毎に、処理負荷予測部１３３により算出された予測処理負荷値が処理負荷閾値管理部１３２が管理する処理負荷閾値以上か否かをプロセッサの処理能力別に判定し、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の処理を割当てる処理割当制御を行う。
【００５９】
以下、本実施例に係わる画像処理装置１０のプロセッサ割当処理について図７に示すフローチャートを参照して詳述する。
【００６０】
このプロセッサ割当処理に先立ち、クライアント端末３０では、ユーザの印刷指示操作により、プリンタドライバ３４２がＰＤＬ情報と処理負荷情報から成る印刷ジョブを生成し、該印刷ジョブを、通信Ｉ／Ｆ部３５を通じ、画像処理装置１０宛てにネットワーク５０へと送信する。
【００６１】
画像処理装置１０では、クライアント端末３０のプリンタドライバ３４２からネットワーク５０に対して送出された印刷ジョブを、ネットワークＩ／Ｆ部１０４で受信する。
【００６２】
そして、該受信した印刷ジョブを構成するＰＤＬ情報と処理負荷情報をＲＡＭ１０７に書き込んだうえで、図７に示すフローチャートに沿ったプロセッサ割当処理を開始する。
【００６３】
図７に示すプロセッサ割当処理においては、まず、画像処理装置１０の制御部１０１の処理負荷予測部１３３は、演算係数管理部１３１の演算係数管理テーブル１３１１から各プロセッサＡ，Ｂ，Ｃの処理能力別に設定されている整数演算係数（ＡＩ，ＢＩ，ＣＩ）、及び浮動小数点演算係数（ＡＦ，ＢＦ，ＣＦ）を読み出す（ステップＳ１０１）。
【００６４】
次いで、処理負荷予測部１３３は、印刷頁カウンタｉの値を初期値“０”から“１”インクリメントした値に更新したうえで（ステップＳ１０２）、ＲＡＭ１０７に記憶されている処理負荷情報（クライアント端末３０からＰＤＬ情報と共に受信した情報）中の１頁目の整数演算負荷値（＝Ｐａｇｅ１Ｉ）及び浮動小数点演算負荷値（＝Ｐａｇｅ１Ｆ）を読出し（ステップＳ１０３）、該読み出した１頁目の整数演算負荷値（＝Ｐａｇｅ１Ｉ）及び浮動小数点演算負荷値（＝Ｐａｇｅ１Ｆ）と、上記ステップＳ１０１で読み出している整数演算係数（ＡＩ，ＢＩ，ＣＩ）、及び浮動小数点演算係数（ＡＦ，ＢＦ，ＣＦ）に基づき、当該頁（１頁目）のプロセッサ処理能力別の見積り値である予測処理負荷値（ＬＡ，ＬＢ，ＬＣ）を算出する（ステップＳ１０４）。
【００６５】
具体的には、１頁目の高性能プロセッサの処理能力に対応した予測処理負荷値（ＬＡ１）としては、上記（１）式を用い、（ＬＡ１）＝（Ｐａｇｅ１Ｉ×ＡＩ）＋（Ｐａｇｅ１Ｆ×ＡＦ）を算出する。
【００６６】
また、当該１頁目の中性能プロセッサの処理能力に対応した予測処理負荷値（ＬＢ１）としては、上記（２）式を用い、（ＬＢ１）＝（Ｐａｇｅ１Ｉ×ＢＩ）＋（Ｐａｇｅ１Ｆ×ＢＦ）を算出する。
【００６７】
更に、当該１頁目の低性能プロセッサの処理能力に対応した予測処理負荷値（ＬＣ１）としては、上記（３）を用い、（ＬＣ１）＝（Ｐａｇｅ１Ｉ×ＣＩ）＋（Ｐａｇｅ１Ｆ×ＣＦ）を算出する。
【００６８】
次いで、処理割当制御部１３４は、処理負荷閾値管理部１３２の処理負荷閾値管理テーブル１３２１（図６参照）から、高性能、中性能、低性能の各プロセッサの処理能力別の処理負荷閾値（Ａｔｈ），（Ｂｔｈ），（Ｃｔｈ）を読み出し、該読み出した処理負荷閾値（Ａｔｈ），（Ｂｔｈ），（Ｃｔｈ）と、上記ステップＳ１０４で算出した高性能、中性能、低性能の各プロセッサの処理能力別の予測処理負荷値（ＬＡ１），（ＬＢ１），（ＬＣ１）とをそれぞれに処理能力別に比較し、該処理能力別の予測処理負荷値と処理負荷閾値の比較の結果、ある処理能力に関して、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁（１頁目）の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該１頁目の処理を割当てる割当処理を実行する。
【００６９】
具体的には、まず、低性能プロセッサＣにおける処理負荷値ＬＣ１が低性能プロセッサＣにおいて充分処理可能であるかどうかを判断するために、該処理負荷値ＬＣ１と処理負荷閾値Ｃｔｈとの比較を行う（ステップＳ１０５）。
【００７０】
ここで、処理負荷値ＬＣ１が処理負荷閾値Ｃｔｈよりも小さい場合（ステップＳ１０５ＮＯ）は、低性能プロセッサＣによる処理で充分であると判断して、当該１頁の処理を低性能プロセッサＣへ割り当てる（ステップＳ２００）。
【００７１】
これに対し、処理負荷値ＬＣ１が処理負荷閾値Ｃｔｈよりも大きい場合（ステップＳ１０５ＹＥＳ）は、低性能プロセッサＣによる処理では不十分であるため、中性能プロセッサＢにおける処理負荷値ＬＢ１が中性能プロセッサＢにおいて充分処理可能であるかどうかを判断するために、該処理負荷値ＬＢ１と処理負荷閾値Ｂｔｈとの比較を行う（ステップＳ１０６）。
【００７２】
ここで、処理負荷値ＬＢ１が処理負荷閾値Ｂｔｈよりも小さい場合（ステップＳ１０６ＮＯ）は、中性能プロセッサによる処理で充分であると判断して、当該１頁の処理を中性能プロセッサＢへ割り当てる（ステップＳ３００）。
【００７３】
これに対し、処理負荷値ＬＢ１が処理負荷閾値Ｂｔｈよりも大きい場合（ステップＳ１０６ＹＥＳ）は、中性能プロセッサＢによる処理でも不十分であるため、当該１頁の処理を高性能プロセッサＡへ割り当てる（ステップＳ４００）。
【００７４】
上記の如く、高性能、中性能、低性能のいずれかのプロセッサに対して１頁の処理を割当てた後、処理割当制御部１３４は、次の頁があるか否かを判定し（ステップＳ１０７）、次頁があると判定された場合（ステップＳ１０７ＹＥＳ）は、ステップＳ１０２に戻り、以後、該ステップＳ１０２〜Ｓ１０５、Ｓ２００、または、ステップＳ１０２〜Ｓ１０５、Ｓ１０６、Ｓ３００、若しくは、ステップＳ１０２〜Ｓ１０５、Ｓ１０６、Ｓ４００の処理を、ステップＳ１０７において次頁がないと判定されるまで繰返し実行する。
【００７５】
この２頁目以降、最終頁までの各頁（ｉ頁目：ｉ＝２，３，…，Ｎ）について繰返し実行する上記一連の処理中、ステップＳ１０２では、処理負荷予測部１３３が、印刷頁カウンタｉの値を当該頁の値（＝ｉ）に更新し、ステップＳ１０３では、ＲＡＭ１０７から処理負荷情報中の当該ｉ頁目の整数演算負荷値（＝ＰａｇｅｉＩ）及び浮動小数点演算負荷値（＝ＰａｇｅｉＦ）を読出し、ステップＳ１０４では、該読み出したｉ頁目の整数演算負荷値（＝ＰａｇｅｉＩ）及び浮動小数点演算負荷値（＝ＰａｇｅｉＦ）と、上記ステップＳ１０１で読み出している整数演算係数（ＡＩ，ＢＩ，ＣＩ）、及び浮動小数点演算係数（ＡＦ，ＢＦ，ＣＦ）に基づき、それぞれ、上記（１）式、（２）式、（３）式を用いて、
当該ｉ頁目の高性能プロセッサの処理能力に対応した予測処理負荷値（ＬＡｉ）＝（ＰａｇｅｉＩ×ＡＩ）＋（ＰａｇｅｉＦ×ＡＦ）、
当該ｉ頁目の中性能プロセッサの処理能力に対応した予測処理負荷値（ＬＢｉ）＝（ＰａｇｅｉＩ×ＢＩ）＋（ＰａｇｅｉＦ×ＢＦ）、
及び、当該ｉ頁目の低性能プロセッサの処理能力に対応した予測処理負荷値（ＬＣｉ）＝（ＰａｇｅｉＩ×ＣＩ）＋（ＰａｇｅｉＦ×ＣＦ）
を算出する。
【００７６】
次いで、ステップＳ１０５では、低性能プロセッサにおける処理負荷値ＬＣｉと対応する処理能力の処理負荷閾値Ｃｔｈを比較し、処理負荷値ＬＣｉが処理負荷閾値Ｃｔｈよりも小さい場合（ステップＳ１０５ＮＯ）は、ステップＳ２００において、当該ｉ頁目の処理を低性能プロセッサＣへ割り当てる。
【００７７】
これに対し、処理負荷値ＬＣｉが処理負荷閾値Ｃｔｈよりも大きい場合（ステップＳ１０５ＹＥＳ）は、ステップＳ１０６で中性能プロセッサＢにおける処理負荷値ＬＢｉと対応する処理能力の処理負荷閾値Ｂｔｈを比較し、処理負荷値ＬＢｉが処理負荷閾値Ｂｔｈよりも小さい場合（ステップＳ１０６ＮＯ）は、ステップＳ３００において当該ｉ頁目の処理を中性能プロセッサＢへ割り当てる一方、処理負荷値ＬＢｉが処理負荷閾値Ｂｔｈよりも大きい場合（ステップＳ１０６ＹＥＳ）は、ステップＳ４００において当該ｉ頁目の処理を高性能プロセッサＡへ割り当てる。
【００７８】
このようにして、１頁目からＮ頁目までの各頁を、その予測処理負荷値に基づき、該予測処理負荷値に対応可能な処理能力を有するプロセッサにそれぞれ割当てた後、ステップＳ１０７において次頁がないと判定された場合（ステップＳ１０７ＹＥＳ）、一連のプロセッサ割当処理を終了する。
【００７９】
次に、図７のステップＳ２００、Ｓ３００及びＳ４００における低性能、中性能及び高性能の各プロセッサに対する割当処理について詳述する。
【００８０】
図８は、図７のステップＳ２００における低性能プロセッサ割当処理を示すフローチャートである。
【００８１】
この処理は、図７のステップＳ１０５において、処理対象のｉ頁目について、低性能プロセッサＣにおける処理負荷値ＬＣｉが処理負荷閾値Ｃｔｈよりも小さいと判定される（ステップＳ１０５ＮＯ）により開始される。
【００８２】
この低性能プロセッサＣの割り当ての処理が開始されると、処理割当制御部１３４は、まず、低性能プロセッサＣが空いているかどうかを調べ（ステップＳ２０１）、該低性能プロセッサＣが空いていれば（ステップＳ２０１ＹＥＳ）、該低性能プロセッサＣに対して当該頁の処理を割り当て（ステップＳ２１１）、その後、図７のステップＳ１０７へ移行する。
【００８３】
これに対して、低性能プロセッサＣが空いていない場合（ステップＳ２０１ＮＯ）、次いで、一段高い処理能力を有する中性能プロセッサＢが空いているかどうかを調べ（ステップＳ２０２）、該中性能プロセッサＢが空いていれば（ステップＳ２０２ＹＥＳ）、低性能プロセッサＣに代えて、該中性能プロセッサＣに対して当該頁の処理を割り当て（ステップＳ２１２）、その後、図７のステップＳ１０７へ移行する。
【００８４】
一方、中性能プロセッサＣが空いていない場合（ステップＳ２０２ＮＯ）、次いで、更に一段階高い処理能力を有する高性能プロセッサＡが空いているかどうかを調べ（ステップＳ２０３）、該高性能プロセッサＡが空いていれば（ステップＳ２０３ＹＥＳ）、該高性能プロセッサＡに対して当該頁の処理を割り当て（ステップＳ２１３）、その後、図７のステップＳ１０７へ移行する。
【００８５】
また、高性能プロセッサＡが空いていない場合（ステップＳ２０３ＮＯ）、処理割当制御部１３４は、高性能、中性能及び低性能の各プロセッサの稼動状態を監視し（ステップＳ２０４ＹＥＳ）、いずれかのプロセッサが稼動状態からアイドル状態となった（プロセッサが空いた）場合（ステップＳ２０４ＹＥＳ）、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当て（ステップＳ２０５）、該割り当て後、図７のステップＳ１０７へ移行する。
【００８６】
図９は、図７のステップＳ３００における中性能プロセッサ割当処理を示すフローチャートである。
【００８７】
この処理は、図７のステップＳ１０６において、処理対象のｉ頁目について、中性能プロセッサＢにおける処理負荷値ＬＢｉが処理負荷閾値Ｂｔｈよりも小さいと判定される（ステップＳ１０６ＮＯ）により開始される。
【００８８】
この中性能プロセッサＢの割り当ての処理が開始されると、処理割当制御部１３４は、まず、中性能プロセッサＢが空いているかどうかを調べ（ステップＳ３０１）、該中性能プロセッサＢが空いていれば（ステップＳ３０１ＹＥＳ）、該中性能プロセッサＢに対して当該頁の処理を割り当て（ステップＳ３１１）、その後、図７のステップＳ１０７へ移行する。
【００８９】
これに対して、中性能プロセッサＢが空いていない場合（ステップＳ３０１ＮＯ）、次いで、一段階高い処理能力を有する高性能プロセッサＡが空いているかどうかを調べ（ステップＳ３０２）、該高性能プロセッサＡが空いていれば（ステップＳ３０２ＹＥＳ）、中性能プロセッサＢに代えて、該高性能プロセッサＡに対して当該頁の処理を割り当て（ステップＳ３１２）、その後、図７のステップＳ１０７へ移行する。
【００９０】
一方、高性能プロセッサＡが空いていない場合（ステップＳ３０２ＮＯ）、次いで、低性能プロセッサＣが空いているかどうかを調べ（ステップＳ３０３）、該低性能プロセッサＣが空いていれば（ステップＳ３０３ＹＥＳ）、該低性能プロセッサＣに対して当該頁の処理を割り当て（ステップＳ３１３）、その後、図７のステップＳ１０７へ移行する。
【００９１】
また、低性能プロセッサＣが空いていない場合（ステップＳ３０３ＮＯ）、処理割当制御部１３４は、高性能、中性能及び低性能の各プロセッサの稼動状態を監視し（ステップＳ３０４ＹＥＳ）、いずれかのプロセッサが稼動状態からアイドル状態となった（プロセッサが空いた）場合（ステップＳ３０４ＹＥＳ）、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当て（ステップＳ３０５）、該割り当て後、図７のステップＳ１０７へ移行する。
【００９２】
図１０は、図７のステップＳ４００における高性能プロセッサ割当処理を示すフローチャートである。
【００９３】
この処理は、図７のステップＳ１０６において、処理対象のｉ頁目について、中性能プロセッサＢにおける処理負荷値ＬＢｉが処理負荷閾値Ｂｔｈよりも大きいと判定される（ステップＳ１０６ＹＥＳ）により開始される。
【００９４】
この高性能プロセッサＡの割り当ての処理が開始されると、処理割当制御部１３４は、まず、高性能プロセッサＡが空いているかどうかを調べ（ステップＳ４０１）、該高性能プロセッサＡが空いていれば（ステップＳ４０１ＹＥＳ）、該高性能プロセッサＡに対して当該頁の処理を割り当て（ステップＳ４１１）、その後、図７のステップＳ１０７へ移行する。
【００９５】
これに対して、高性能プロセッサＡが空いていない場合（ステップＳ４０１ＮＯ）、次いで、一段階低い処理能力を有する中性能プロセッサＢが空いているかどうかを調べ（ステップＳ４０２）、該中性能プロセッサＢが空いていれば（ステップＳ４０２ＹＥＳ）、該中性能プロセッサＢに対して当該頁の処理を割り当て（ステップＳ４１２）、その後、図７のステップＳ１０７へ移行する。
【００９６】
一方、中性能プロセッサＢが空いていない場合（ステップＳ４０２ＮＯ）、次いで、更に一段階低い処理能力を有する低性能プロセッサＣが空いているかどうかを調べ（ステップＳ４０３）、該低性能プロセッサＣが空いていれば（ステップＳ４０３ＹＥＳ）、該低性能プロセッサＣに対して当該頁の処理を割り当て（ステップＳ４１３）、その後、図７のステップＳ１０７へ移行する。
【００９７】
また、低性能プロセッサＣが空いていない場合（ステップＳ４０３ＮＯ）、処理割当制御部１３４は、高性能、中性能及び低性能の各プロセッサの稼動状態を監視し（ステップＳ４０４ＹＥＳ）、いずれかのプロセッサが稼動状態からアイドル状態となった（プロセッサが空いた）場合（ステップＳ４０４ＹＥＳ）、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当て（ステップＳ４０５）、該割り当て後、図７のステップＳ１０７へ移行する。
【００９８】
なお、図８、図９及び図１０に示した各性能のプロセッサに対する処理割り当てに際し、処理の割り当てが行われなかったプロセッサに対してはクロックを停止する等の省電力モードに移行させるように制御し、消費電力の低減を図る。
【００９９】
本実施例では、処理負荷の重い（大きい）頁には高性能なプロセッサを割り当て処理のスループットを向上させる一方、処理負荷の軽い（小さい）頁には低性能なプロセッサを割り当てて消費電力を抑え、かつ、半導体デバイスの発熱を抑えるようにする。
【０１００】
かかるプロセッサ割当処理によれば、画像処理能力が異なる複数のプロセッサを集積化し、半導体デバイスとして実装する画像処理装置において、全体の処理の高速化を図ることができとともに、消費電力を低減し半導体デバイスの発熱を抑えた運用が実現できる。
【実施例２】
【０１０１】
図１１は、実施例２に係わる画像処理装置１０Ｂの機能構成を示すブロック図である。
【０１０２】
本実施例の画像処理装置１０Ｂにおいて、実施例１に係わる画像処理装置１０の各機能部と同一のものには同一の符号を付している。
【０１０３】
本実施例の画像処理装置１０Ｂにおいては、画像処理部１０２ｂは、１つの高性能プロセッサ１１１と、４つの低性能プロセッサ１１３，１１４，１１５，１１６により構成される。
【０１０４】
また、画像処理装置１０Ｂにおいて、制御部１０１ｂは、図１２に示す如くの機能構成を有する。
【０１０５】
この制御部１０１ｂにおいても、実施例１に係わる制御部１０１（図４参照）の各部と同様のものについては同一の符号を付している。
【０１０６】
図１２に示す制御部１０１ｂにおいて、実施例１にはない構成として、印刷受付時状態監視部１３５が設けられる。
【０１０７】
印刷受付時状態監視部１３５は、クライアント端末３０から印刷指示（印刷ジョブ）を受け付けた際に、該印刷指示を受け付けるまでの間、当該画像処理装置１０Ｂがアイドル状態であったか否かを判定する処理機能を有する。
【０１０８】
また、制御部１０１ｂにおいて、演算係数管理部１３１ｂは、画像処理部１０２ｂ（図１１参照）における高性能プロセッサＡ、及び低性能プロセッサＣ（Ｃ１，Ｃ２，Ｃ３，Ｃ４）の２種類のプロセッサを有する構成に対応して、図１３に示す如くの演算係数管理テーブル１３１１ｂを有し、該演算係数管理テーブル１３１１ｂを用いて、高性能プロセッサＡに関する整数演算係数“ＡＩ”、及び浮動小数点演算係数“ＡＦ”と、低性能プロセッサに関する整数演算係数“ＣＩ”、及び浮動小数点演算係数“ＣＦ”を管理する。
【０１０９】
高性能プロセッサＡの整数演算係数“ＡＩ”と低高性能プロセッサＣの整数演算係数“ＣＩ”の間には、ＡＩ＜ＣＩという大小関係が成り立ち、高性能プロセッサの浮動小数点演算係数“ＡＦ”と低性能プロセッサの浮動小数点演算係数“ＣＦ”との間にはＡＦ＜ＣＦなる大小関係が成り立つ。
【０１１０】
また、この例では低性能プロセッサＣの浮動小数点演算はソフトウエアエミュレーションによって処理されるため、“ＣＦ”は“ＡＦ”に比べてかなり大きな値となる。
【０１１１】
また、制御部１０１ｂにおいて、処理負荷閾値管理部１３２ｂは、画像処理部１０２ｂ（図１１参照）における高性能プロセッサＡ、及び低性能プロセッサＣ（Ｃ１，Ｃ２，Ｃ３，Ｃ４）の２種類のプロセッサを有する構成に対応して、図１４に示す如くの処理負荷閾値管理テーブル１３２１ｂを有し、該処理負荷閾値管理テーブル１３２１ｂを用いて、高性能プロセッサＡ、低性能プロセッサＣの各処理能力に対応して、それぞれ、“Ａｔｈ”、“Ｃｔｈ”という値を有する処理負荷閾値を保持、管理する。
【０１１２】
これにより、制御部１０１ｂにおいて、処理負荷予測部１３３は、クライアント端末３０から印刷ジョブを受信すると、該印刷ジョブに含まれる各頁毎の処理負荷情報（図２参照）と、演算係数管理テーブル１３１１ｂ（図１３参照）に格納管理される演算係数とに基づき、各頁（頁番号ｉ：ｉ＝１，２，…，Ｎ）毎に、上述した（１）式を用いて、
高性能プロセッサＡでのｉ頁目の処理負荷見積り値（ＬＡｉ）  
＝（ＰａｇｅｉＩ×ＡＩ）＋（ＰａｇｅｉＦ×ＡＦ）  
を算出すると共に、上述した（３）式を用いて、  
低性能プロセッサＣでのｉ頁目の処理負荷見積り値（ＬＣｉ）  
＝（ＰａｇｅｉＩ×ＣＩ）＋（ＰａｇｅｉＦ×ＣＦ）  
を算出する。
【０１１３】
また、制御部１０１ｂにおいて、処理割当制御部１３４ｂは、処理負荷予測部１３３により算出された高性能、低性能の各プロセッサの処理能力別の予測処理負荷値（ＬＡｉ），（ＬＣｉ）と、処理負荷閾値管理部１３２ｂの処理負荷閾値管理テーブル１３２１ｂ（図１４参照）に保持される、高性能、低性能の各プロセッサの処理能力別の処理負荷閾値（Ａｔｈ），（Ｃｔｈ）をそれぞれに処理能力別に比較し、ある処理能力に関して、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁（ｉ頁目）の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁（ｉ頁目）の処理を割り当てる処理を前提としつつも、クライアント端末３０から印刷ジョブを受信した際に、印刷受付時状態監視部１３５によって、該印刷指示を受け付けるまでの間、当該画像処理装置１０Ｂがアイドル状態であったことが判定された場合は、印刷命令された画像情報の１頁目については、常に、最も高い処理能力を有するプロセッサＡに処理の割当を行う制御機能を更に有する。
【０１１４】
以下、実施例２に係わる画像処理装置１０Ｂのプロセッサ割当処理について図１５に示すフローチャートを参照して詳述する。
【０１１５】
この画像処理装置１０Ｂでは、クライアント端末３０のプリンタドライバ３４２からネットワーク５０に対して送出された印刷ジョブ（各頁のＰＤＬ情報と処理負荷情報から成る）を、ネットワークＩ／Ｆ部１０４で受信し、該受信した印刷ジョブを構成するＰＤＬ情報と処理負荷情報をＲＡＭ１０７に書き込んだうえで、図１５に示すフローチャートに沿ったプロセッサ割当処理を開始する。
【０１１６】
図１５に示すプロセッサ割当処理においては、まず、画像処理装置１０Ｂの制御部１０１ｂの処理負荷予測部１３３は、演算係数管理部１３１ｂの演算係数管理テーブル１３１１ｂから各プロセッサＡ，Ｃの処理能力別に設定されている整数演算係数（ＡＩ，ＣＩ）、及び浮動小数点演算係数（ＡＦ，ＣＦ）を読み出す（ステップＳ１２１）。
【０１１７】
次いで、処理負荷予測部１３３ｂは、処理対象頁カウンタｉの値を初期値“０”から“１”インクリメントした値に更新したうえで（ステップＳ１２２）、該処理対象頁カウンタｉの値に基づき処理対象が１頁目か否かをチェックする（ステップＳ１２３）。
【０１１８】
ここで、処理対象が１頁目であると判定された場合（ステップＳ１２３ＹＥＳ）、その旨を印刷受付時状態監視部１３５に通知する。
【０１１９】
この通知を受けると、印刷受付時状態監視部１３５は、クライアント端末３０から印刷指示（印刷ジョブ）を受け付けるまでの間、当該画像処理装置１０Ｂがアイドル状態であったか否かを判定する（ステップＳ１２４）。
【０１２０】
ここで、印刷指示を受け付けるまでアイドル状態であったと判定された場合（ステップＳ１２４ＹＥＳ）、処理割当制御部１３４ｂは、当該１頁目の処理を高性能プロセッサＡへ割り当てる（ステップＳ１７０）。
【０１２１】
これに対して、印刷指示を受け付けるまでアイドル状態でなかったと判定された場合（ステップＳ１２４ＮＯ）、処理負荷予測部１３３は、ＲＡＭ１０７に記憶されている処理負荷情報中の１頁目の整数演算負荷値（＝Ｐａｇｅ１Ｉ）及び浮動小数点演算負荷値（＝Ｐａｇｅ１Ｆ）を読出し（ステップＳ１０３）、該読み出した１頁目の整数演算負荷値（＝Ｐａｇｅ１Ｉ）及び浮動小数点演算負荷値（＝Ｐａｇｅ１Ｆ）と、上記ステップＳ１０１で読み出している整数演算係数（ＡＩ，ＣＩ）、及び浮動小数点演算係数（ＡＦ，ＣＦ）に基づき、当該頁（１頁目）のプロセッサ処理能力別の見積り値である予測処理負荷値（ＬＡ，ＬＣ）を算出する（ステップＳ１０４）。
【０１２２】
具体的には、１頁目の高性能プロセッサの処理能力に対応した予測処理負荷値（ＬＡ１）としては、上記（１）式を用い、（ＬＡ１）＝（Ｐａｇｅ１Ｉ×ＡＩ）＋（Ｐａｇｅ１Ｆ×ＡＦ）を算出する。
【０１２３】
また、当該１頁目の低性能プロセッサの処理能力に対応した予測処理負荷値（ＬＣ１）としては、上記（３）を用い、（ＬＣ１）＝（Ｐａｇｅ１Ｉ×ＣＩ）＋（Ｐａｇｅ１Ｆ×ＣＦ）を算出する。
【０１２４】
次いで、処理割当制御部１３４ｂは、処理負荷閾値管理部１３２ｂの処理負荷閾値管理テーブル１３２１ｂ（図１４参照）から、高性能、低性能の各プロセッサの処理能力別の処理負荷閾値（Ａｔｈ），（Ｃｔｈ）を読み出し、該読み出した処理負荷閾値（Ａｔｈ），（Ｃｔｈ）と、上記ステップＳ１０４で算出した高性能、低性能の各プロセッサの処理能力別の予測処理負荷値（ＬＡ１），（ＬＣ１）とをそれぞれに処理能力別に比較し、該処理能力別の予測処理負荷値と処理負荷閾値の比較の結果、ある処理能力に関して、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁（１頁目）の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該１頁目の処理を割当てる割当処理を実行する。
【０１２５】
具体的には、まず、低性能プロセッサにおける処理負荷値ＬＣ１が低性能プロセッサＣにおいて充分処理可能であるかどうかを判断するために、該処理負荷値ＬＣ１と処理負荷閾値Ｃｔｈとの比較を行う（ステップＳ１０５）。
【０１２６】
ここで、処理負荷値ＬＣ１が処理負荷閾値Ｃｔｈよりも大きい場合（ステップＳ１２７ＹＥＳ）は、該高性能プロセッサＡに対して当該１頁目の処理を割り当てる（ステップＳ１４０）。
【０１２７】
これに対し、処理負荷値ＬＣ１が処理負荷閾値Ｃｔｈよりも小さい場合（ステップＳ１２７ＮＯ）は、低性能プロセッサＣが空いているかどうかを調べ（ステップＳ１２８）、該低性能プロセッサＣが空いていれば（ステップＳ１２８ＹＥＳ）、該低性能プロセッサＣに対して当該１頁目の処理を割り当てる（ステップＳ１５０）。
【０１２８】
また、低性能プロセッサＣが空いていない場合（ステップＳ１２８ＮＯ）、更に、高性能プロセッサＡが空いているかどうかを調べ（ステップＳ１２９）、該高性能プロセッサが空いていれば（ステップＳ１２９ＹＥＳ）、低性能プロセッサＣに代えて、該高性能プロセッサＡに対して当該１頁目の処理を割り当てる（ステップＳ１６０）。
【０１２９】
一方、高性能プロセッサＡが空いていない場合（ステップＳ１２９ＮＯ）、処理割当制御部１３４ｂは、高性能、低性能の各プロセッサの稼動状態を監視し（ステップＳ１３０）、いずれかのプロセッサが稼動状態からアイドル状態となった（プロセッサが空いた）場合（ステップＳ１３０ＹＥＳ）、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当てる（ステップＳ１３１）。
【０１３０】
上記の如く、高性能、低性能のいずれかのプロセッサに対して１頁目の処理を割当てた後、処理割当制御部１３４ｂは、次の頁があるか否かを判定し（ステップＳ１３２）、次頁があると判定された場合（ステップＳ１３２ＹＥＳ）は、ステップＳ１２２に戻り、以後、該ステップＳ１２２〜Ｓ１３１までの処理を、ステップＳ１３２において次頁がないと判定されるまで繰返し実行する。
【０１３１】
この２頁目以降、最終頁までの各頁（ｉ頁目：ｉ＝２，３，…，Ｎ）について繰返し実行する上記一連の処理中、ステップＳ１２２では、処理負荷予測部１３３が、印刷頁カウンタｉの値を当該頁の値（＝ｉ）に更新し、ステップ１２３では１頁目でないと判定されて（ステップＳ１２３ＮＯ）ステップＳ１２５に進み、ＲＡＭ１０７から処理負荷情報中の当該ｉ頁目の整数演算負荷値（＝ＰａｇｅｉＩ）及び浮動小数点演算負荷値（＝ＰａｇｅｉＦ）を読出し、ステップＳ１２６では、該読み出したｉ頁目の整数演算負荷値（＝ＰａｇｅｉＩ）及び浮動小数点演算負荷値（＝ＰａｇｅｉＦ）と、上記ステップＳ１２１で読み出している整数演算係数（ＡＩ，ＣＩ）、及び浮動小数点演算係数（ＡＦ，ＣＦ）に基づき、それぞれ、上記（１）式、（３）式を用いて、  
当該ｉ頁目の高性能プロセッサの処理能力に対応した予測処理負荷値（ＬＡｉ）＝（ＰａｇｅｉＩ×ＡＩ）＋（ＰａｇｅｉＦ×ＡＦ）、  
及び、当該ｉ頁目の低性能プロセッサの処理能力に対応した予測処理負荷値（ＬＣｉ）＝（ＰａｇｅｉＩ×ＣＩ）＋（ＰａｇｅｉＦ×ＣＦ）  
を算出する。
【０１３２】
次いで、ステップＳ１２７では、低性能プロセッサＣにおける処理負荷値ＬＣｉと対応する処理能力の処理負荷閾値Ｃｔｈを比較し、処理負荷値ＬＣｉが処理負荷閾値Ｃｔｈよりも大きい場合（ステップＳ１２７ＹＥＳ）は、ステップＳ１４０において当該ｉ頁目の処理を高性能プロセッサＡへ割り当てる。
【０１３３】
また、処理負荷値ＬＣｉが処理負荷閾値Ｃｔｈよりも小さい場合（ステップＳ１２７ＮＯ）は、低性能プロセッサＣが空いている場合（ステップＳ１２８ＹＥＳ）には、該低性能プロセッサＣに当該ｉ頁目の処理を割り当てる（ステップＳ１５０）一方、低性能プロセッサＣが空いていない場合（ステップＳ１２８ＮＯ）には、更に、高性能プロセッサＡが空いているか否かを判定する（ステップＳ１２９）。
【０１３４】
ここで、高性能プロセッサＡが空いている場合（ステップＳ１２９ＹＥＳ）には、該高性能プロセッサＡに当該ｉ頁目の処理を割り当てる（ステップＳ１６０）が、高性能プロセッサＡが空いていない場合（ステップＳ１２９ＮＯ）には、その後にいずれかのプロセッサが空いた（アイドル状態となった）場合（ステップＳ１３０ＹＥＳ）に、当該アイドル状態となったプロセッサに対して当該ｉ頁目の処理を割り当てる（ステップＳ１３１）。
【０１３５】
このようにして、クライアント端末３０から印刷指示（印刷ジョブ）を受け付けた際に、印刷受付時状態監視部１３５により、それまではアイドル状態であったと判定された場合（ステップＳ１２４ＹＥＳ）は、１頁目の処理を高性能プロセッサに優先的に割り当てる一方で、２頁目から最終頁までの各頁〔印刷指示を受け付けた際にそれまではアイドル状態でなかったと判定された場合（ステップＳ１２４ＮＯ）は、１頁目から最終頁までの各頁〕について、その予測処理負荷値に基づき、該予測処理負荷値に対応可能な処理能力を有するプロセッサにそれぞれ割当てていき、ステップＳ１３２において次頁がないと判定された場合（ステップＳ１３２ＮＯ）、一連のプロセッサ割当処理を終了する。
【０１３６】
図１６は、図１５のステップＳ１４０における高性能プロセッサ割当処理を示すフローチャートである。
【０１３７】
この処理は、図１５のステップＳ１２７において、処理対象のｉ頁目について、低性能プロセッサＣにおける処理負荷値ＬＣｉが処理負荷閾値Ｃｔｈよりも大きいと判定される（ステップＳ１２７ＹＥＳ）により開始される。
【０１３８】
この高性能プロセッサＡの割り当ての処理が開始されると、処理割当制御部１３４ｂは、まず、高性能プロセッサＡが空いているかどうかを調べ（ステップＳ１４１）、該高性能プロセッサＡが空いていれば（ステップＳ１４１ＹＥＳ）、該高性能プロセッサＡに対して当該ｉ頁目の処理を割り当て（ステップＳ１４５）、その後、図１５のステップＳ１３２へ移行する。
【０１３９】
これに対して、高性能プロセッサＡが空いていない場合（ステップＳ１４１ＮＯ）、次いで、低性能プロセッサＣが空いているかどうかを調べ（ステップＳ１４２）、該低性能プロセッサＣが空いていれば（ステップＳ１４２ＹＥＳ）、高性能プロセッサＡに代えて、該低性能プロセッサＣに対して当該ｉ頁目の処理を割り当て（ステップＳ１４６）、その後、図１５のステップＳ１３２へ移行する。
【０１４０】
また、上記ステップＳ１４２において、低性能プロセッサＣが空いていない場合（ステップＳ１４２ＮＯ）、処理割当制御部１３４ｂは、高性能、低性能の各プロセッサの稼動状態を監視し（ステップＳ１４３）、いずれかのプロセッサが稼動状態からアイドル状態となった（プロセッサが空いた）場合（ステップＳ１４３ＹＥＳ）、当該アイドル状態となったプロセッサに対して当該ｉ頁目の処理を割り当て（ステップＳ１４４）、該割り当て後、図１５のステップＳ１３２へ移行する。
【０１４１】
なお、図１５及び図１６に示した各性能のプロセッサに対する処理割り当てに際し、処理の割り当てが行われなかったプロセッサに対してはクロックを停止する等の省電力モードに移行させるように制御し、消費電力の低減を図るようにしても良い。
【０１４２】
本実施例では、アイドル状態において、１頁目は最も高性能なプロセッサによって処理することにより早く印字結果を出力し、ユーザが早く結果の確認を行うことができる。
【０１４３】
２頁目以降については、処理負荷の重い（大きい）頁には高性能なプロセッサを割り当て処理のスループットを向上させる一方、処理負荷の軽い（小さい）頁には低性能なプロセッサを割り当てて消費電力を抑え、かつ、半導体デバイスの発熱を抑えるようにする。
【０１４４】
これにより、画像処理能力が異なる複数のプロセッサを集積化し、半導体デバイスとして実装する画像処理装置において、アイドル状態において、１頁目のアウトプットを高速化し、全体の処理の高速化を図ることができとともに、消費電力を低減し半導体デバイスの発熱を抑えた運用が行なえる。
【０１４５】
この他、本発明は、上記し、且つ図面に示す実施例に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【０１４６】
例えば、上記実施例では、画像情報の処理能力が異なる複数のプロセッサを用いて画像処理を行う画像処理装置に適用し、印刷対象の各頁をその処理負荷に対応可能な処理能力を有するプロセッサに割当てて分散処理する例を挙げたが、これに限らず、情報の処理能力が異なる複数のプロセッサ有し、情報の処理命令に含まれる各処理単位の情報をその処理負荷に対応可能な処理能力を有するプロセッサに割当てて分散処理する各種の情報処理装置に適用可能である。
【産業上の利用可能性】
【０１４７】
本発明は、複数のプロセッサを用いて情報を処理する各種の情報処理装置、及び、複数のプロセッサを用いて画像処理するプリンタや複合機等の画像処理装置に適用できる。
【図面の簡単な説明】
【０１４８】
【図１】本発明に係わる印刷システムの全体構成を示すブロック図。
【図２】クライアント端末からの印刷命令に含まれる処理負荷情報の一例を示す表図。
【図３】実施例１に係わる画像処理装置の機能構成を示すブロック図。
【図４】実施例１に係わる画像処理装置の制御部の機能構成を示すブロック図。
【図５】実施例１に係わるプロセッサの処理能力別の演算係数の管理形態を示す表図。
【図６】実施例１に係わるプロセッサの処理能力別の処理負荷閾値情報の管理形態を示す表図。
【図７】実施例１に係わる画像処置装置のプロセッサ割当処理を示すフローチャート。
【図８】図７のステップＳ２００での低性能プロセッサ割当処理を示すフローチャート。
【図９】図７のステップＳ３００での中性能プロセッサ割当処理を示すフローチャート。
【図１０】図７のステップＳ４００での高性能プロセッサ割当処理を示すフローチャート。
【図１１】実施例２に係わる画像処理装置の機能構成を示すブロック図。
【図１２】実施例２に係わる画像処理装置の制御部の機能構成を示すブロック図。
【図１３】実施例２に係わるプロセッサの処理能力別の演算係数の管理形態を示す表図。
【図１４】実施例２に係わるプロセッサの処理能力別の処理負荷閾値情報の管理形態を示す表図。
【図１５】実施例２に係わる画像処置装置のプロセッサ割当処理を示すフローチャート。
【図１６】図１５のステップＳ１４０での高性能プロセッサ割当処理を示すフローチャート。
【符号の説明】
【０１４９】
１０，１０Ｂ…画像処理装置、１０１，１０１ｂ…制御部、１３１，１３１ｂ…演算係数管理部、１３１１，１３１１ｂ…演算係数管理テーブル、１３２，１３２ｂ…処理負荷閾値管理部、１３２１，１３２１ｂ…処理負荷閾値管理テーブル、１３３…処理負荷予測部、１３４，１３４ｂ…処理割当制御部、１３５…印刷受付時状態監視部、１０２，１０２ｂ…画像処理部、１１１…高性能プロセッサ、１１２…中性能プロセッサ、１１３，１１４，１１５，１１６…低性能プロセッサ、１０３…外部バスインタフェース（Ｉ／Ｆ）部、１０４…ネットワークインタフェース（Ｉ／Ｆ）部、１０５…プリンタエンジンインタフェース（Ｉ／Ｆ）部、１０６…ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、１０７…ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、１０８…入力／出力（Ｉ／Ｏ）デバイス、１２１…内部バス、１２２…外部バス、２０…画像出力装置、３０…クライアント端末（ＰＣ：パーソナル・コンピュータ）、３０１…処理負荷情報、３１…入力／操作部、３２…表示部、３３…記憶部、３４…制御部、３４１…アプリケーション部、３４２…プリンタドライバ、３５…通信インタフェース（Ｉ／Ｆ）部、５０…ネットワーク（ＮＷ）
【図１】
2009230220.tif 000003
【図２】
2009230220.tif 000004
【図３】
2009230220.tif 000005
【図４】
2009230220.tif 000006
【図５】
2009230220.tif 000007
【図６】
2009230220.tif 000008
【図７】
2009230220.tif 000009
【図８】
2009230220.tif 000010
【図９】
2009230220.tif 000011
【図１０】
2009230220.tif 000012
【図１１】
2009230220.tif 000013
【図１２】
2009230220.tif 000014
【図１３】
2009230220.tif 000015
【図１４】
2009230220.tif 000016
【図１５】
2009230220.tif 000017
【図１６】
2009230220.tif 000018