JP6512902B2 - Image processing apparatus, control method thereof and control program - Google Patents
Image processing apparatus, control method thereof and control program Download PDFInfo
- Publication number
- JP6512902B2 JP6512902B2 JP2015076286A JP2015076286A JP6512902B2 JP 6512902 B2 JP6512902 B2 JP 6512902B2 JP 2015076286 A JP2015076286 A JP 2015076286A JP 2015076286 A JP2015076286 A JP 2015076286A JP 6512902 B2 JP6512902 B2 JP 6512902B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- unit
- job
- print job
- order
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
本発明は、画像処理装置、その制御方法及び制御プログラムに関するものである。 The present invention relates to an image processing apparatus, a control method thereof, and a control program.
プリンタなどに代表される画像形成装置において、印刷用データの供給が停止することがないように、印刷ジョブのラスタライズだけを行い、印刷用データを印刷前に大量にスプールしておくことがある。しかしながら、ラスタライズが必要とする時間は、印刷ジョブの内容により様々であるため、入力された順にラスタライズを行うと、印刷開始までにラスタライズが完了しないことがある。印刷前に完了すべきラスタライズが全て完了していない場合、その後の印刷効率が著しく低下してしまう。それに対して、特許文献1には、印刷ジョブデータとその関連情報から所要展開残時間及び所要印刷残時間を算出し、これらに基づいて受付した印刷ジョブと展開処理中の印刷ジョブの展開順を設定する方法が提案されている。
In an image forming apparatus typified by a printer or the like, only print job rasterization may be performed so that print data may be spooled in large quantities before printing so that supply of print data is not stopped. However, since the time required for rasterization varies depending on the content of the print job, rasterization may not be completed before the start of printing if rasterization is performed in the order of input. If all rasterization to be completed before printing has not been completed, the subsequent printing efficiency is significantly reduced. On the other hand,
また、特許文献2では、ラスタライズ自体を高速化するために、印刷ジョブの描画命令をPDL解析処理やラスタライズ処理等の複数の処理プロセス(ステージ)に分割し、分割された該処理をパイプライン化する方法が提案されている。
Further, in
特許文献1では、印刷ジョブの受付時刻、データ種類、サイズ、印刷枚数から展開時間を推定し、推定された展開時間で最も小さいものを最優先に処理するよう順序を決定する。しかしながら、ラスタライズ処理における内部処理については記載がなく、複数の処理プロセスに分割した場合に処理効率を上げることはできない。一方、特許文献2では、PDLを解析して描画に関わる各処理の処理負荷を特定し、特定された処理負荷に基づいてパイプライン処理の構成を決定することにより、印刷ジョブ毎に最適なパイプライン処理を行うことができる。しかしながら、さらに、大量のジョブ全体の効率的なラスタライズをすること求められている。
In Japanese Patent Application Laid-Open No. 2008-112118, a development time is estimated from a reception time of a print job, data type, size, and number of printed sheets, and an order is determined to process the smallest development time among the estimated development times. However, internal processing in rasterization processing is not described, and processing efficiency can not be improved when division into a plurality of processing processes is performed. On the other hand,
本発明は、上記課題に鑑みてなされたものであり、大量のジョブを印刷前にラスタライズする場合に、描画処理を複数の処理ステージに分割したパイプライン処理をより効率的に行う画像処理装置、その制御方法、及びプログラムを提供することを目的とする。 The present invention has been made in view of the above problems, and in the case of rasterizing a large number of jobs before printing, an image processing apparatus that performs pipeline processing in which drawing processing is divided into a plurality of processing stages more efficiently, It aims at providing the control method and program.
上記課題を解決するため、本発明に係る処理装置は、異なる処理プロセスを並行して実行可能であるラスタライズ部により、印刷ジョブデータに対して複数の処理プロセスを実行するための処理装置であって、複数の印刷ジョブデータを受信する受信手段と、印刷ジョブデータのジョブ設定を特定する第1特定手段と、前記第1特定手段により特定されたジョブ設定に基づいて、各印刷ジョブデータにおいて複数の処理プロセスのうち負荷の高い処理プロセスを特定する第2特定手段と、前記第2特定手段により特定された負荷の高い処理プロセスに基づいて、前記受信手段が受信した複数の印刷ジョブデータのラスタライズ処理の順序を決定する決定手段と、前記ラスタライズ部に前記決定手段により決定した順序で前記複数の処理プロセスを実行させる制御手段と、を有する。 In order to solve the above problems, a processing apparatus according to the present invention is a processing apparatus for executing a plurality of processing processes on print job data by a rasterizing unit capable of executing different processing processes in parallel. A plurality of print job data based on the job setting specified by the receiving unit for receiving the plurality of print job data, the first specifying unit for specifying the job setting of the print job data, and the first specifying unit; Rasterizing processing of a plurality of print job data received by the receiving unit on the basis of a second specifying unit for specifying a processing process having a high load among processing processes and the processing process having a high load specified by the second specifying unit Determining means for determining the order of the plurality of processing processes in the order determined by the determining means in the rasterizing unit. And a control means for executing.
本発明によれば、ラスタライズ処理をより効率的に実行することができる。 According to the present invention, rasterization processing can be performed more efficiently.
以下、添付図面を参照して本発明の好適な実施の形態を例示的に詳細に説明する。但し、この実施の形態に記載されている構成要素の相対配置、装置形状等は、あくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。 Hereinafter, preferred embodiments of the present invention will be exemplarily described in detail with reference to the accompanying drawings. However, the relative arrangement of components described in this embodiment, the device shape and the like are merely examples, and the scope of the present invention is not limited to these.
(実施形態1)
本実施形態では、画像処理装置の一例として、画像処理装置を含む画像形成装置を例に挙げて説明する。
(Embodiment 1)
In the present embodiment, an image forming apparatus including an image processing apparatus will be described as an example of the image processing apparatus.
図1は、本発明の一実施形態に係る画像形成装置100のハードウェアの構成の一例を表す図である。なお、本実施形態では、画像形成装置100として、印刷機能を有するプリンタを例に挙げて説明する。プリンタとしては、例えば、印刷機能のみを有するシングルファンクションプリンタであってもよいし、また、例えば、印刷機能、FAX機能、スキャナ機能等の複数の機能を有するマルチファンクションプリンタであってもよい。また、画像形成装置は、プリンタに限定されず、例えば、印刷機能とその他の機能を複合した複合機や、記録紙上に画像やパターンを形成する製造装置等であってもよい。
FIG. 1 is a diagram illustrating an example of a hardware configuration of an
画像形成装置100は、図1に示すように、中央処理装置(CPU)101と、ROM102と、RAM103と、操作部104と、通信部105と、記録部106と、表示部107とを有する。なお、これらはシステムバスを介して互いに接続されている。
As illustrated in FIG. 1, the
CPU101は、ROM102に記憶されているプログラムに従って、RAM103、通信部105、記録部106、操作部104及び表示部107を制御する。
The
ROM102は、CPU101が実行する各種制御プログラムや印刷装置100の各種動作に必要な固定データを格納する。例えば、印刷装置100の記録(印刷)処理を実行するプログラムを記憶する。
The
RAM103は、CPU101の作業エリアとして用いられたり、種々の受信データの一時格納領域として用いられたり、各種設定データを記憶させたりする。外部装置110から送られてくる印刷ジョブデータは、RAM103に一時的に記憶される。
The
通信部105は、外部装置と印刷装置100との通信を制御する。
A
操作部104は、電源ボタン、リセットボタンなどの各種ボタンを含み、ユーザが印刷装置100を操作する際に使用される。表示部107は、例えば、タッチパネルの液晶ディスプレイで構成され、印刷装置100の状態や各種設定を表示する。ユーザは、表示部107を介して、各種設定の入力を行うこともできる。表示部107は、操作指示の受付や装置状態の表示を行う。なお、本実施形態では、操作部104の少なくとも一部と表示部107がタッチパネルから構成され、一体となっている。
The
画像処理部108は、受信した印刷ジョブデータに対して画像処理を実行し、画像データを生成する。
The
記録部(印刷部)106は、後述するプリンタエンジン部を有する。記録部106は、画像データに基づいて記録媒体に画像を形成する。
The recording unit (printing unit) 106 has a printer engine unit described later. The
画像形成装置100は、外部装置110とネットワーク等を介して接続可能であり、例えば、外部装置110から印刷ジョブデータを含む印刷ジョブを受信する。
The
図2は、本実施形態に係る画像形成装置における画像処理部の制御構成を説明するためのブロック図である。 FIG. 2 is a block diagram for explaining a control configuration of the image processing unit in the image forming apparatus according to the present embodiment.
画像形成装置100の画像処理部は、外部装置110から入力される印刷ジョブの受信・制御を行うジョブ制御部202と、印刷用画像を生成するラスタライズ部203と、を含む。
The image processing unit of the
図15を用いて、図1に示した画像形成装置100に含まれる画像処理部の構成について説明する。本実施形態では、図15(a)に示すように、ジョブ制御部202およびラスタライズ部203はそれぞれ独立した構成とし、ジョブ制御部202がシステムバスを介して表示部107及びプリンタエンジン部105と接続されるものとする。なお、これに限定されるものではなく、例えば、図15(b)に示すように、ラスタライズ部203が、ジョブ制御部202に組み込まれた構成とし、ジョブ制御部202がシステムバスを介して表示部107及びプリンタエンジン部105と接続されていてもよい。また、本実施形態では、画像処理部は、画像形成装置が備えるものとしたが、図15(c)に示すように、ジョブ制御部202およびラスタライズ部203のみとしてもよい。例えば、画像処理装置は、外部装置110、表示部107、及びプリンタエンジン部105とは分離した構成としてもよい。
The configuration of the image processing unit included in the
ジョブ制御部202は、印刷ジョブ受信部206と、ジョブを保持するスプーラ部207と、ジョブを管理するスプーラ管理部208と、ラスタライズ部203と通信を行う通信部213と、を有する。また、ジョブ制御部202は、効率的なラスタライズ処理を行うため、ジョブ解析部209と、ジョブ調停範囲決定部210と、ジョブ処理負荷推定部211と、ジョブ調停部212を有する。
The
印刷ジョブ受信部206では、外部装置110から入力された印刷ジョブを受信し、スプーラ部207へ格納する。
The print
スプーラ部207は、受信した印刷ジョブ及びラスタライズ部203で生成されるラスタライズデータを格納する。また、印刷ジョブ内容と各処理ステージ負荷とを対応付けた負荷管理の情報を負荷管理テーブルとして格納する。負荷管理テーブルは、詳細は後述するが、各処理ステージの負荷を推定するために用いられる。また、スプーラ部207は、印刷ジョブの処理順序を決定するための調停管理情報が調停管理テーブルとして格納される。調停管理テーブルは、負荷カテゴリ毎に最適な調停方法が管理されており、詳細は後述するが、印刷ジョブの処理順序を決定するために用いられる。
The
スプーラ管理部208は、スプーラ部207に格納された印刷ジョブが即ラスタライズ処理されるものか、未ラスタライズ状態で保持されるものかを管理する。更に、スプーラ管理部208は、スプーラ部207に格納された未ラスタライズ状態の印刷ジョブの量、及び未ラスタライズ状態の印刷ジョブの量が閾値に到達したかを管理する。
The
ジョブ解析部209は、受信した印刷ジョブを解析し、PDFやJPEGといったジョブデータの種別やサイズ、ラスタライズ部203で実施される処理内容などを取得する。ジョブ調停範囲決定部210は、スプーラ管理部208で監視される未ラスタライズ状態の印刷ジョブが閾値に到達した場合に、ジョブの処理順を決定する範囲を定める。
The
ジョブ処理負荷推定部211は、ジョブ解析部209の解析結果とスプーラ部207に格納される負荷管理テーブルの情報に基づいて、印刷ジョブ毎の各処理ステージ負荷を推定する。ここで、負荷が高いとは、ラスタライズ部203における処理時間が長いものを指す。各印刷ジョブの設定内容と負荷管理テーブルの情報により、ジョブ毎に負荷タイプがカテゴライズされる。ジョブ調停部212では、ジョブ処理負荷推定部211でカテゴライズされたジョブ毎の負荷タイプと、スプーラ部207に格納される調停管理テーブルの情報によって印刷ジョブの処理順序を決定する。印刷ジョブの処理順序は、ジョブ調停範囲決定部210で定められた範囲に対して行う。
The job processing
ラスタライズ部203は、ジョブ制御部202と通信を行う通信部216と、補正処理を施す画像補正部217と、印刷用の画像データを生成するRIP部218と、印刷ジョブ設定に適合するように画像データの整形を行う回転・面付部219とを有する。通信部216、画像補正部217、RIP部218、及び回転・面付部219には、それぞれ異なるプロセッサ(CPU)215が割り当てられる。なお、画像補正部217は、例えば、赤目補正等の補正を行う。ラスタライズ部203は、通信部216を介して印刷ジョブを受信し、各印刷ジョブデータに対して実行する画像処理を複数の処理プロセスに分割し、これらの処理を順に行う。これにより、印刷ジョブデータからビットマップデータを生成する。なお、本実施形態では、ラスタライズ部203は、印刷ジョブデータに対して実行する画像処理を画像補正処理、RIP処理、回転・面付け処理に分割する。ここで、ラスタライズ部203では、分割した複数の処理プロセスをパイプライン処理する。ラスタライズ部203におけるパイプライン処理とは、それぞれ重複しない処理プロセスを同時に(並行して)実行する処理方式であり、各処理プロセスにおける処理対象のページは、互いに異なるページである。具体的には、画像補正処理中の3ページ目と、RIP処理中の2ページ目と、回転・面付け処理中の1ページ目を並行して処理する。なお、同じページに対して異なる処理プロセスを実行(例えば1ページ目の画像補正処理と、1ページ目のRIP処理を同時に実行)することはできない。
The
図3を用いて、図1に示すラスタライズ部203が実行可能な処理形態について説明する。ここでは、画像データの描画処理(画像処理)が、処理1、処理2、処理3の3ステージに分割された場合、逐次処理及びパイプライン処理それぞれについて処理の流れを説明する。
A processing form that can be executed by the
図3(a)は、逐次処理について示している。逐次処理では1ページ目の全処理を完了してから2ページ目、3ページ目と処理を行う。図3(b)はパイプライン処理について示している。1ページ目の処理1が完了後、1ページ目の処理2が始まると並列して2ページ目の処理1を処理する。同様に、2ページ目の処理1が完了後、3ページ目の処理1を処理する。なお、パイプライン処理では、各処理がそれぞれ別のプロセスとして動作するため複数のプロセッサを必要とする。本実施形態では、ラスタライズ部203は、逐次処理も可能であるが、高速化のためにパイプライン処理を行う。
FIG. 3A shows sequential processing. In sequential processing, processing is performed on the second page and the third page after all processing on the first page is completed. FIG. 3 (b) shows pipeline processing. After the
図5を用いて、ラスタライズ部203において実行する処理について具体例を挙げて説明する。ここでは、図5(a)に示す3つの印刷ジョブ500が入力された場合について説明する。図5(a)に示す印刷ジョブ500は、それぞれジョブA、ジョブB、ジョブCとする。ジョブA及びジョブBは画像補正を行う印刷ジョブであり、ジョブCは画像補正を行わない印刷ジョブである。図5(b)にラスタライズ部203の構成の一例を示す。ラスタライズ部203は、描画処理を複数の処理ステージに分割して実行する。具体的には受信処理、画像補正処理、RIP処理、回転・面付け処理、送信処理の5つを行う。受信処理501及び送信処理505は、通信部216が行う。画像補正処理502は画像補正部217、RIP処理503はRIP部218、回転・面付け処理504は回転・面付け部219がそれぞれ実行する。各処理部の前後にはそれぞれバッファ506が設けられ、次の処理部の処理対象となるデータが格納される。各処理部はバッファ506を介して処理対象となるデータの受け渡しを行う。バッファ506は、格納されたものから順にデータ処理が開始されるデータ構造(キュー)となっている。ここで、受信処理501の後で且つ画像補正処理502の前に設けられるバッファ506を用いて、バッファ506内の領域について説明する。バッファ506のうち、画像補正処理502に最も近い領域を先頭領域、受信処理501に最も近い領域を末尾領域、先頭領域及び末尾領域以外が中間領域である。先頭領域には、次の処理部である画像補正処理502で処理される直前のデータが格納され、末尾領域には、受信処理501で処理された直後のデータが格納される。各処理部は、バッファ506の先頭領域から処理対象となるデータを取得し、処理実施後、バッファ506の末尾領域へ格納する。バッファ506は、一の処理部にとっての出力バッファであり、その次の処理部にとっての入力バッファでもある。例えば、受信処理501(通信部216)の後で且つ画像補正処理502(画像補正部217)の前に設けられるバッファ506は、受信処理501で処理した処理済みデータを出力する出力バッファであり、また、画像補正処理502へ入力するデータを格納する入力バッファでもある。
A process performed by the
ここで、図4を用いて、ジョブ制御部202より入力された印刷ジョブに対するラスタライズ部203の処理の流れについて説明する。
Here, the flow of processing of the
ラスタライズ部203は、ジョブ制御部202から入力される印刷ジョブを、通信部216を介して受信し(S401)、ジョブの設定を確認する。具体的には、ジョブの設定が、画像補正ONとなっているか、すなわち、画像補正を行う設定となっているか判定する(S402)。
The
画像補正ONとなっている、すなわち、印刷ジョブに含まれる画像データに対し補正を行う設定となっている場合(S402でYes)、受信した印刷ジョブの設定に従って画像補正を行う(S403)。画像補正の完了後、RIP部218によりRIP処理を行う(S404)。
When the image correction is ON, that is, when the image data included in the print job is set to be corrected (Yes in S402), the image correction is performed according to the setting of the received print job (S403). After completion of the image correction, the
画像補正がONとなっていない、すなわち、画像データに対し補正が不要の設定となっている場合(S402でNo)、そのままRIP部218によりRIP処理を行う(S404)。
If the image correction is not ON, that is, if the image data is not required to be corrected (S402: No), the
RIP処理後に生成されたデータに、印刷ジョブの設定に基づいて回転・面付け部219により回転・面付け処理を行う(S405)。すなわち、回転・面付け部219は、印刷ジョブに設定された内容に適合するように回転・面付け処理を行う(S405)。これにより、印刷用データを生成する。
The rotation /
生成されたデータは、通信部216を介してジョブ制御部202に送信する(S406)。
The generated data is transmitted to the
図5(c)に、図5(a)に示す印刷ジョブ500がラスタライズ部203で処理される場合の処理状況の推移を示す。ラスタライズ部203は、パイプライン化されており、かつ処理ステージの実施順は決まっている。また、ラスタライズ部203の処理部(画像補正部217、RIP部218、回転・面付け部219)毎にプロセッサが割り当てられている。プロセッサ数によるが、同じ処理ステージは並列して実行できないため、他のジョブまたはページで実行したい処理が実施されていればその処理が完了するまで、処理待機状態507が発生する。例えば、ジョブAの1ページの画像補正処理502が始まるとジョブBの1ページ目や2ページ目は、画像補正処理502を並列動作できない。そのため、ジョブAの1ページ目の画像補正処理が完了するまで、ジョブBの1ページ目は処理待機状態となる。一方、ジョブCは、画像補正を行わないジョブであり、RIP部218は、動作していないため、ジョブCの1ページ目のRIP処理503は開始可能である。したがって、RIP部218は、ジョブCの1ページ目のRIP処理503を実施する。ジョブAの画像補正処理が完了するより前に、ジョブCの2ページ目のRIP処理が登録され、ジョブCの1ページ目の後は、ジョブCの2ページ目のRIP処理が実施される。その後、ジョブCの2ページ目のRIP処理が完了すると、RIP部218は、ジョブAの1ページ目のRIP処理を開始する。
FIG. 5C shows the transition of the processing status when the
ラスタライズ部203への印刷ジョブは、ジョブAの1ページ目、ジョブBの1ページ目、2ページ目、ジョブCの1ページ目、2ページ目の順序で入力される。しかしながら、RIP処理は、ジョブCの1ページ目、2ページ目、ジョブA、ジョブBの1ページ目、2ページ目と処理される。
Print jobs to the
ここで、図6を用いて、本実施形態に係る画像処理の流れの一例について詳細に説明する。なお、CPU101は、ROM102に格納されているプログラムをRAM103にロードし、それを実行することにより、図6に示すフローチャートを実行する。外部装置110から印刷ジョブが入力されると、印刷ジョブ受信部206が入力された印刷ジョブを受信する(S601)。受信した印刷ジョブは、スプーラ部207へ格納する。
Here, an example of the flow of the image processing according to the present embodiment will be described in detail with reference to FIG. The
スプーラ部207に格納された印刷ジョブに対して、スプーラ管理部208がラスタライズ処理を開始するかを判定する(S602)。詳細は後述するが、所定の開始条件を満たしている場合は、ラスタライズ処理を開始すると判定する。
For the print job stored in the
ラスタライズ処理を開始すると判定した場合(S602でNo)、印刷データをラスタライズ部203に入力しラスタライズを行う(S612)。
If it is determined that the rasterization process is to be started (No in S602), the print data is input to the
ラスタライズ処理を開始しないと判定した場合(S602でYes)、スプーラ部207に十分な印刷ジョブがあるか判定する(S603)。具体的には、スプーラ部207にスプールされている印刷ジョブの量(以下、スプール量ともいう)が所定量以上であるか判定する。なお、本実施形態では、スプール量は、スプーラ部207にスプールされた印刷ジョブ数とし、閾値は100とする。ただし、スプール量及び閾値はこれに限定されるものではなく、例えば、スプール量は印刷ジョブのデータサイズで判定してもよい。
When it is determined that the rasterization process is not started (Yes in S602), it is determined whether there is a sufficient print job in the spooler unit 207 (S603). Specifically, it is determined whether the amount of print jobs spooled in the spooler unit 207 (hereinafter, also referred to as a spool amount) is equal to or greater than a predetermined amount. In the present embodiment, the spool amount is the number of print jobs spooled by the
スプーラ部207に十分な印刷ジョブがないと判定した場合、すなわち、スプール量が閾値未満である場合(S603でNo)、ユーザインタフェース部107から入力される設定値に従い、ラスタライズを開始するか判定する(S604)。具体的には、ラスタライズを開始すると判定した場合(S604でYes)、ラスタライズ処理を実行する(S612)。一方、ラスタライズを開始しないと判定した場合(S604でNo)、S603へ戻る。
If it is determined that the
スプーラ部207に十分な印刷ジョブがあると判定した場合、すなわち、スプール量が閾値以上である場合(S603でYes)、ジョブ解析部209によりスプールされている印刷ジョブを解析する(S605)。
If it is determined that there is a sufficient print job in the
また、スプーラ部207にスプールされた印刷ジョブのスプール量に基づいて、ジョブの調停範囲決定部210において、スプーラ部207にスプールされた印刷ジョブのうちラスタライズ部203に投入する投入順序を変更する範囲を決定する(S606)。本実施形態では、ユーザインタフェース部204から入力される設定値に従い、調停範囲は50ジョブに決定し、スプーラ部207にスプールされたジョブについて先頭から50ジョブずつジョブ調停を行う。なお、スプーラ部207にスプールされているジョブ数が調停範囲の設定値以下である場合、スプーラ部207にスプールされている全てのジョブにジョブ調停を行う。調停範囲は、所定のジョブ数としてもよいし、一定時間内にスプーラ部207に投入された範囲のジョブとしてもよい。
Further, based on the spool amount of the print job spooled in the
なお、S605のジョブ解析は、印刷ジョブを受信した直後に実施してもよいし、調停範囲が定まった後で解析を実施してもよいし、S605のジョブ解析及びS606の決定は、並行して実行してもよい。 The job analysis in step S605 may be performed immediately after the print job is received, or analysis may be performed after the arbitration range is determined, and the job analysis in step S605 and the determination in step S606 may be performed in parallel. It may be executed.
ジョブの調停範囲決定部210において定められた範囲内の印刷ジョブについて、ジョブ解析結果を元に、ジョブ設定が全て同じであるか判定する(S607)。ここで判定に用いるジョブの設定としては、処理対象のジョブの種類(例えば、JPEG、PDF等のフォーマットの種類)、赤目補正や美肌補正等の画像補正処理の有無、レイアウト(例えば、1in1、2in1等の出力レイアウト)、A3やA4等の出力用紙サイズが挙げられる。 Based on the job analysis result, it is determined whether the job settings are all the same for print jobs within the range defined by the job arbitration range determination unit 210 (S607). Here, the setting of the job used for the determination includes the type of job to be processed (for example, the type of format such as JPEG and PDF), the presence or absence of image correction processing such as red eye correction and skin care correction, layout (for example, 1 in 1, 2 in 1 Etc., and output sheet sizes such as A3 and A4.
調停範囲内のジョブについて、処理対象ジョブの種類やレイアウトなどのジョブ設定が全て同一であれば(S607でYes)、ラスタライズ部203への投入順を変更しない(S611)。すなわち、ラスタライズ部203への投入順は、スプーラ部207への投入順そのままとする。これにより、ラスタライズ部203はスプーラ部207へ投入された順序で処理を行う(S612)。
If the job settings such as the type and layout of the processing target job are all the same for the jobs within the arbitration range (Yes in S607), the order of submission to the
調停範囲内のジョブについて、ジョブ設定が全て同一ではない場合、すなわち、ジョブ設定が異なった場合(S607でNo)、それぞれのジョブに対して、ジョブ処理負荷推定部211は、各ジョブの処理負荷を推定する(S608)。各ジョブの処理負荷は、スプーラ部207に格納される負荷管理テーブル情報とS605で解析した解析結果とを用いて推定する。言い換えれば、スプーラ部207に格納される負荷管理テーブル情報及びS605で解析した解析結果に基づいて、各ジョブの負荷カテゴリを特定する。なお、負荷カテゴリについては、詳細は後述する。
If the job settings are not all the same for the jobs in the arbitration range, that is, if the job settings differ (No in S607), the job processing
負荷設定後、調停対象範囲内の印刷ジョブが全て同じ負荷タイプにカテゴライズされたか判定する(S609)。 After setting the load, it is determined whether all print jobs within the arbitration target range are categorized into the same load type (S609).
印刷ジョブの負荷カテゴリが全て同一カテゴリとなった場合(S609でYes)、投入順序の調停を行わない、すなわち、ラスタライズ部203への投入順を変更しない(S611)。すなわち、ラスタライズ部203への投入順は、スプーラ部207への投入順そのままとする。これにより、ラスタライズ部203は、投入された順にラスタライズ処理を行う(S612)。
If all load categories of the print job become the same category (Yes in S609), the arbitration of the order of submission is not performed, that is, the order of submission to the
印刷ジョブの負荷カテゴリが異なった場合(S609でNo)、ジョブ調停部212において設定された負荷カテゴリを利用してジョブの調停を行い、処理順序を決定する(S610)。本実施形態では、ラスタライズ部203は、投入された順に印刷ジョブデータに対して処理を行うため、言い換えれば、印刷ジョブデータの投入順を決定する。ジョブの調停は、スプーラ部207に格納された調停管理テーブルを用いて行う。詳細は後述するが、調停管理テーブルに設定された負荷カテゴリの調停方法に基づいて、ジョブの調停を行う。ジョブの調停が完了した後、ラスタライズ部203にジョブの調停により決定した順に印刷ジョブの印刷データを投入し、ラスタライズ部203は、投入された順にラスタライズ処理を開始する(S612)。すなわち、ラスタライズ部203は、ジョブの調停により決定された処理順序で処理を実行する。
When the load category of the print job is different (No in S609), the job arbitration is performed using the load category set in the
図7を用いて、ラスタライズ部203における各処理ステージ負荷と印刷ジョブの負荷タイプの設定の関係について説明する。ラスタライズ処理は、図4で説明した通り、受信、画像補正、RIP、回転・面付け、送信の順で実施され、画像補正のみ実施可否がジョブに設定できる。
The relationship between each processing stage load and the setting of the load type of the print job in the
図7(a)は、画像補正がONの場合と画像補正がOFFの場合の処理負荷の違いを示す図である。画像補正を実施するジョブ700は、画像補正を実施しないジョブ701と比べて、画像補正の処理ステージ702があるため処理負荷が大きくなる。
FIG. 7A is a diagram showing the difference in processing load when the image correction is ON and when the image correction is OFF. The job 700 for performing the image correction has a processing load greater than that of the
図7(b)は、印刷ジョブのフォーマットの種類による違いを示す図である。PDFジョブ704は、JPEGジョブ703に比べ、RIP処理ステージ705の処理負荷が大きくなる。
FIG. 7B is a diagram showing a difference depending on the type of print job format. The
図7(c)は、最終的な印刷データの出力レイアウトによる違いを示す図である。1in1印刷ジョブ705は、画像707のように、1枚で1枚の画像を確認できるようにレイアウトされる。2in2印刷ジョブ706は、中綴じ製本後に見開き状態で1枚の画像が確認できるように、画像708のように左右別々のデータをレイアウトされる。2in2印刷ジョブ706は、画像データが2枚必要となるため、1in1印刷ジョブ705に比べてRIPステージ709及び回転面付処理ステージ710の負荷が大きくなる。また、出力レイアウトが同じ1in1でも、最終的な出力用紙サイズが異なる場合、例えばA3とA4では、A3の方がRIP709及び回転面付処理710の負荷が大きくなる。
FIG. 7C is a diagram showing the difference depending on the final output layout of print data. The 1-in-1
また、図8にジョブ解析部209が解析した印刷ジョブの解析結果の例を示す図である。ジョブ解析部209は、ジョブ解析部209でスプールされた印刷ジョブを解析し、印刷ジョブ毎に解析結果800を得る。図7に示したように、ジョブの設定は各処理ステージの負荷に影響する。ジョブ解析部209は、解析結果800として、負荷に影響を与える情報を取得する。具体的には、例えば、ジョブ管理のためのジョブID801、ジョブの種類802、出力サイズ802、画像補正の実施の有無804、出力レイアウト805等の各種ジョブ設定情報を取得する。本実施形態では、印刷ジョブデータに含まれるジョブ設定情報を解析して解析結果800を得る。これにより、ジョブ解析を高速化することができる。なお、印刷ジョブのジョブ設定の解析方法は、これに限定されず、ラスタライズ対象に含まれる描画命令をより詳細に解析してもよい。
FIG. 8 is a diagram showing an example of the analysis result of the print job analyzed by the
図9は、ユーザインタフェース部107に表示される表示画面の一例を示す図である。ユーザインタフェース部107で設定された内容により図7に示す処理の流れが決定される。
FIG. 9 is a view showing an example of a display screen displayed on the
図9に示す表示画面は、画像処理部の処理条件の設定や画像処理部の状態確認を行うことができる画面であり、例えば、ユーザがユーザインタフェース部107の表示画面において、画像処理部の設定等を選択することにより、表示される。
The display screen shown in FIG. 9 is a screen on which setting of processing conditions of the image processing unit and status confirmation of the image processing unit can be performed. For example, in the display screen of the
表示画面は、ラスタライズ部に格納するかを設定する設定部901と、解析開始条件を設定する設定部902と、調停設定条件を設定する設定部903と、待機条件を設定する設定部904と、調停範囲を設定する設定部905と、を有する。また、表示画面は、調停開始条件を設定する設定部906と、調停モードを設定する設定部907と、管理テーブル情報の更新を設定する設定部907と、スプーラモニタ909と、ジョブステータスモニタ910と、を有する。
The display screen sets a
設定部901は、受信したジョブをRIP待機状態でスプーラ部207に格納するか、受信したジョブをすぐにラスタライズ処理を行うかを設定できる。図9に示す設定部901においてONのチェックボックスが選択されている場合、受信したジョブをRIP待機状態でスプーラ部207に格納する。一方、図9に示す設定部901においてOFFのチェックボックスが選択されている場合、受信したジョブをRIP待機状態でスプーラ部207に格納する。
The
設定部902は、受信したジョブのジョブ解析部209による解析開始タイミングを設定することができる。図9に示す設定部902において、解析開始条件としてジョブ受信のチェックボックスが選択されている場合、ジョブを受信したタイミングでジョブ解析部209が解析を開始する。図9に示す設定部902において、解析開始条件として調停開始のチェックボックスが選択されている場合、調停を開始したタイミングでジョブ解析部209が解析を開始する。
The
設定部903は、調停設定条件を設定することができる。最短解のチェックボックスが選択されている場合、ラスタライズ処理が最短で終了するように調停を行い、最適解のチェックボックスが選択されている場合、負荷タイプに応じた最適なラスタライズ処理を実行するように調停を行う。最適なラスタライズ処理が選択された場合は、調停管理テーブルに基づいて調停を行う。ここで、「ラスタライズ処理が最短」とは、例えば、複数の印刷ジョブデータの処理時間の合計が短くなることを指す。
The
設定部904は、RIP待機状態ジョブとして扱うかどうかを設定することができる。具体的には、設定部904で選択されたジョブについては、RIP待機をしないように設定することができる。割込みジョブのチェックボックスが選択されている場合、割込みジョブはRIP待機をせず、再印刷ジョブのチェックボックスが選択されている場合、再印刷ジョブはRIP待機をしない。なお、「常に」のチェックボックスが選択されている場合、全ての印刷ジョブは、RIP待機をせずに、すぐにラスタライズ処理を実行するようにする。すなわち、図9の場合、割り込みジョブや再印刷ジョブが入力された場合、それらのジョブはすぐにラスタライズを開始する。
The
設定部906は、ジョブ調停を開始する条件を設定することができる。設定部906で設定された条件は、スプーラ管理部208でスプールされた印刷ジョブのスプール量が閾値以上かの判定で使用される。設定部906において、RIP待機ジョブのチェックボックスが選択されている場合、スプーラ部207にスプールされた印刷ジョブの数がプルダウンメニューにより設定されたRIP数以上となった場合、調停を開始する。本実施形態では、スプーラ部207にスプールされたジョブ数が100以上となった場合に、調停が開始される。なお、本実施形態では閾値を100と設定しているため、例えば、スプーラ部207にスプールされたジョブ数が10の場合は、調停を開始せず、スプールされたジョブ数が100以上となった場合に調停を開始する。なお、ここでは閾値を設定したが、スプール可能な空き容量によっては、閾値に到達する前に調停を開始する。例えば、調停開始条件がジョブ数で、閾値が100の場合について説明する。ジョブを30スプールした時点でスプーラの空き容量が0となると、閾値100に到達できないため、調停を開始する。その際、調停開始条件のジョブ数の閾値を100で維持するか、開始した値とするかを、ユーザが判断する。また、開始条件を自動で変えてもよい。一方、経過時間のチェックボックスが選択されている場合、スプーラ部207にスプールされてからの経過時間がプルダウンメニューにより設定された経過時間以上となった場合、調停を開始する。
The
スプーラモニタ909は、スプーラ管理部208で管理している情報を表示する。ここでは、スプーラ利用率と、ラスタライズ(RIP)が完了したジョブ数と、ラスタライズ(RIP)を待機しているジョブ数と、が表示される。
The spooler monitor 909 displays the information managed by the
設定部905は、調停範囲を設定することができ、ジョブの調停範囲決定部210は、設定部905で設定された調停範囲に従って調停範囲を決定する。言い換えれば、ジョブの調停範囲決定部210は、設定部905の設定を取得し、取得した設定に基づいてジョブの調停範囲を決定する。ジョブ数のチェックボックスが選択されている場合、プルダウンメニューにより設定されたジョブ数を調停範囲とする。例えば、図9に示す例では50ジョブ単位で調停を行う。ジョブ設定のチェックボックスが選択されている場合、プルダウンメニューにより設定されたジョブ設定のジョブを調停範囲とする。図9に示す例では、レイアウト設定により調停範囲を決定する。合計処理時間のチェックボックスが選択されている場合、各ジョブのRIP処理時間の合計がプルダウンメニューにより設定された合計処理時間となるジョブまでを調停範囲とする。
The
設定部907は、調停を実施する単位を設定することができる。調停なしのチェックボックスが選択されている場合、調停は実行されない。ジョブ単位のチェックボックスが選択されている場合、ジョブ単位で調停が実行され、ページ単位のチェックボックスが選択されている場合、ページ単位で調停が実行される。
The
設定部908は、管理テーブルの更新設定を行うことができる。具体的には、スプーラ部207に格納された負荷管理テーブル及び調停管理テーブルのそれぞれについて、ラスタライズ処理が進む過程に従って更新するか否かを設定することができる。チェックボックスが選択されたテーブルについては、ラスタライズ処理が進む過程に従って更新される。
The
ジョブステータスモニタは、画像形成装置100に入力された印刷ジョブの設定および処理状態を表示する。図9では、各ジョブのジョブID、解析情報、処理ステータス、調停ステータスを表示する。解析情報としては、各ジョブの種類、各ジョブの出力サイズ、画像補正を行うか否か、各ジョブの出力レイアウトが表示される。処理ステータスとしては、「印刷済み」、「RIP中」、「RIP完了」、「RIP待機」等が挙げられる。調停ステータスは、「調停済」、「調停中」、「調停未実施」が挙げられる。
The job status monitor displays the setting and processing status of the print job input to the
図10に、スプーラ部207に格納される管理情報の一例を示す。スプーラ部207に格納される管理情報としては、印刷ジョブの処理開始前に予め生成された管理テーブルと、印刷ジョブ処理開始後に生成される管理情報とが挙げられる。
FIG. 10 shows an example of management information stored in the
図10(a)は、印刷ジョブの処理開始前に予め生成された管理情報の一例を示す図である。本実施形態では、予め生成される管理情報は、負荷カテゴライズテーブル1000、ステージ処理負荷テーブル1001、及び調停管理テーブル1002である。 FIG. 10A is a diagram showing an example of management information generated in advance before the start of print job processing. In the present embodiment, the management information generated in advance is the load categorization table 1000, the stage processing load table 1001, and the arbitration management table 1002.
負荷カテゴライズテーブル1000は、ジョブの種類やジョブのサイズ等のジョブ設定に基づいて分類した処理負荷のタイプ(以下、負荷カテゴリともいう)を管理する。負荷カテゴリは、ラスタライズ部203において律速要因となる処理負荷の高い処理ステージを分類するための情報である。本実施形態では、律速要因となり得るラスタライズ部203の処理ステージは、画像補正、RIP、及び回転面付のいずれかとする。図7で示すように、印刷ジョブの種類、印刷ジョブのサイズ、赤目補正や美肌補正などの画像補正処理の実施有無、出力レイアウトにより各処理ステージにおける律速要因となる処理ステージを特定し、それにより負荷カテゴリを分類している。負荷カテゴライズテーブル1000は、ジョブの処理負荷推定部211で印刷ジョブ毎の負荷分類を設定する際に参照される。なお、負荷カテゴライズテーブル1000は処理開始前に予め生成されたものを使用してもよいし、処理結果情報を学習させて更新したものを使用してもよい。本実施形態では、各処理ステージのうち画像補正処理が律速要因となるものをType−Aとし、出力サイズによりRIP処理と回転面付処理が律速要因となるものをType−Bとする。また、レイアウトによりRIP処理と回転面付処理が律速要因となるものをType−C、フォーマットによりRIP処理が律速要因となるものをType−Dとする。
The load categorization table 1000 manages processing load types (hereinafter also referred to as load categories) classified based on job settings such as job types and job sizes. The load category is information for classifying a processing stage having a high processing load, which is a rate limiting factor in the
ステージ処理負荷テーブル1001は、負荷カテゴリの情報に基づいて推定した各処理ステージの処理時間を管理する。 The stage processing load table 1001 manages the processing time of each processing stage estimated based on the information of the load category.
調停管理テーブル1002は、負荷カテゴリ付けされた印刷ジョブに対する最適処理を管理する。すなわち、各印刷ジョブの最も処理効率が上がる調停順序を管理する。各印刷ジョブに設定可能な調停順序は複数存在するが、本実施形態では、最も高速に処理され且つ調停対象となる負荷カテゴリ毎に律速要因とされる処理ステージがより重複している調停順序を設定する。なお、ここでは、調停管理テーブル1002は、調停範囲内の印刷ジョブの情報を管理する。調停管理テーブル1002はジョブ調停部212で参照される。
The arbitration management table 1002 manages optimum processing for print jobs with load categories. That is, it manages the arbitration order in which the processing efficiency of each print job is the highest. Although there are a plurality of arbitration orders that can be set for each print job, in the present embodiment, the arbitration order in which the processing stages regarded as the speed-limiting factors overlap for each load category that is processed at the highest speed and is the arbitration target is more Set Here, the arbitration management table 1002 manages information of print jobs within the arbitration range. The arbitration management table 1002 is referred to by the
図10(b)は、印刷ジョブ処理を開始した後に作成される管理情報を示す図である。処理を開始した後に作成される管理情報としては、印刷ジョブ毎のジョブ解析結果1003、1004、1005と、負荷推定結果1006が挙げられる。ジョブ解析結果1003、1004、1005は、ジョブ解析部209で生成され、負荷推定結果1006はジョブ処理負荷推定部211で生成される。ジョブ解析結果1003、1004、1005は、印刷ジョブ本体に付随する(付加された)印刷ジョブ設定情報から抽出して生成する。ここで抽出される情報としては、ジョブ種別、画像補正実施の有無、平綴じ/中綴じ等の処理負荷の推定に用いられる情報である。
FIG. 10B is a diagram showing management information created after the start of print job processing. As management information created after the process is started, job analysis results 1003, 1004, and 1005 for each print job and a
負荷推定結果1006は、ジョブ毎に生成されたジョブ解析結果と負荷カテゴライズテーブル1000とに基づいて、ジョブ毎に負荷カテゴリ分類された情報である。すなわち、負荷推定結果1006は、印刷ジョブと負荷カテゴリを関連付けた情報である。例えば、Job11は、ジョブの種類がJPEG、サイズが4×6、画像補正がON、レイアウトが1in1というジョブ設定であるため、負荷カテゴライズテーブルの1行目に相当する。したがって、Job11は、負荷カテゴリがType−Aであると特定されて、負荷推定結果として記憶される。Job12及びJob13についても同様に、ジョブ設定に基づいて負荷カテゴライズテーブルから負荷カテゴリが特定される。
The
図14を用いて、調停管理テーブル1002におけるルール設定ついて説明する。図14(a)は、調停管理テーブル1002における各調停順序を設定するための処理の流れを示す図である。なお、CPU101は、ROM102に格納されているプログラムをRAM103にロードし、それを実行することにより、図14(a)に示すフローチャートを実行する。図14(b)は、図14(a)に示した処理の流れに従い調停順序を決定する際に使用される処理状況を可視化した例を示す図である。本実施形態では、各印刷ジョブの負荷カテゴリがType−A、Type−C、Type−Dの場合におけるルール設定について説明する。また、それぞれの印刷ジョブは1ページずつとする。
Rule setting in the arbitration management table 1002 will be described with reference to FIG. FIG. 14A is a diagram showing a flow of processing for setting each arbitration order in the arbitration management table 1002. The
負荷カテゴリに応じて印刷ジョブの処理順序の候補を特定する(S1401)。本実施形態では、処理順序の候補は、ACD、ADC、CAD、CDA、DAC、DCAの6種類となる。処理順序の候補は、調停順序のルール設定を行う印刷ジョブの負荷カテゴリの種類により変動する。 Candidates for the print job processing order are identified according to the load category (S1401). In the present embodiment, there are six types of processing order candidates: ACD, ADC, CAD, CDA, DAC, and DCA. The candidates for the processing order vary depending on the type of load category of the print job for which the arbitration order rule setting is performed.
次に、処理順序の候補が複数存在するか判定する(S1402)。処理順序候補は6種類なので複数存在すると判定し(S1402でYes)、処理順序候補毎にラスタライズ部203における各処理ステージの処理時間を特定する(S1403)。図14(b)は、各処理順序候補の処理時間の模式図である。なお、図4(b)は、第1印刷ジョブがTypeA、第2印刷ジョブがTypeC、第3印刷ジョブがTypeDの場合の処理推移の予測を示す図である。1408は、ACDの順に処理を行った場合の各処理ステージの処理推移の予測である。1409は、ADCの処理順序順、1410はCADの処理順序、1411はCDAの処理順序順、1412はDACの処理順序、1413はDCAの処理順序で処理を行った場合の各処理ステージの処推移の予測である。
Next, it is determined whether there are a plurality of processing order candidates (S1402). Since there are six types of processing order candidates, it is determined that a plurality of processing order candidates exist (Yes in S1402), and the processing time of each processing stage in the
図14(b)に示された各処理順序候補のうち、処理が最短で完了する処理順序をルール候補に設定する(S1404)。図14(b)の場合、1410と1411の2つと判断され、CADとCDAの2つの処理順序が調停管理テーブルに設定されるルール候補となる。 Among the processing order candidates shown in FIG. 14B, the processing order that completes the process in the shortest time is set as a rule candidate (S1404). In the case of FIG. 14B, it is determined that there are two, 1410 and 1411, and two processing orders of CAD and CDA become rule candidates set in the arbitration management table.
ルールとなる処理順序候補が複数あるか判定する(S1405)。設定されたルール候補が1つの場合(S1405でNo)、その処理順序が調停管理テーブルに設定される調停ルールとなり(S1407)、処理を終了する。 It is determined whether there are a plurality of processing order candidates that become rules (S1405). If there is one rule candidate set (No in S1405), the processing order becomes an arbitration rule set in the arbitration management table (S1407), and the processing ends.
ルール候補が2つ以上ある場合(S1405でYes)、そのルール候補に対して、所定の選択基準に基づき、処理順序を1つ選択する(S1406)。本実施形態では、負荷カテゴリ毎に律速要因とされる処理ステージが重なっている時間が最も長い処理順序候補を選択する。各ジョブにおける律速要因となる処理ステージが並列処理されることにより、リソース使用率を向上することができる。なお、負荷カテゴリType−Aは各処理ステージのうち画像補正処理が律速要因であり、Type−CはRIP処理と回転面付処理が律速要因であり、Type−DはRIP処理が律速要因である。したがって、本実施形態における選択基準は、Type−Aの画像補正処理と、Type−CのRIP処理または回転面付処理と、Type−DのRIP処理とが、より長い時間重複する処理順序を選択することになる。1410と1411は共に1414に示すように異なる3処理が重複する部分が存在する。ここで、Type−AのRIP処理及びType−Dの画像補正処理は、それぞれの負荷カテゴリに対する律速要因ではない。したがって、1411、すなわち、CDAの処理順序がルールとして選択される。なお、選択基準はこれに限定されるものではなく、例えば、各処理ステージ間の隙間が少ないものを選択するようにしてもよい。S1406で選択したルール(処理順序)を調停管理テーブルに設定する(S1407)。 If there are two or more rule candidates (Yes in S1405), one processing order is selected for the rule candidates based on a predetermined selection criterion (S1406). In the present embodiment, a process order candidate is selected which has the longest time in which the process stages considered as rate-limiting factors overlap for each load category. The resource usage rate can be improved by parallel processing of processing stages that become rate-limiting factors in each job. Of the processing stages in the load category Type-A, the image correction process is the rate-limiting factor, the Type-C is the RIP process and the rotational imposition process is the rate-limiting factor, and the Type-D is the RIP process is the rate-limiting factor . Therefore, as the selection criteria in the present embodiment, a processing order in which the Type-A image correction processing, Type-C RIP processing or rotational imposition processing, and Type-D RIP processing overlap for a longer time is selected. It will be done. As shown in 1414 for both 1410 and 1411, there are portions where three different processes overlap. Here, the RIP process of Type-A and the image correction process of Type-D are not rate-limiting factors for each load category. Therefore, 1411, that is, the processing order of CDA is selected as a rule. The selection criterion is not limited to this, and, for example, one having a small gap between the processing stages may be selected. The rule (processing order) selected in S1406 is set in the arbitration management table (S1407).
上述した方法により、負荷の組み合わせがACDの場合は、処理順序をCDAとすることが決定される。 By the above-described method, when the combination of loads is ACD, it is determined that the processing order is CDA.
ここで、具体例を挙げて、本実施形態に係る印刷ジョブの調停方法について説明する。図11は、本実施形態に係るジョブ調停の一例を示す。印刷ジョブ1101、印刷ジョブ1102、印刷ジョブ1103の順序でスプーラ部207に投入された場合について説明する。本実施形態では、印刷ジョブは先頭のページから順番に1ページずつ、ジョブ単位で処理されていくものとする。すなわち、1ジョブ目の1ページ目から最終ページまで順に処理された後に2ジョブ目の1ページ目の処理を行うものとする。ジョブ毎の処理負荷分類は、負荷カテゴライズテーブル1104に従うものとし、調停範囲内の印刷ジョブの処理順序は、調停管理テーブル1105に設定されたルールに従うものとする。各印刷ジョブ(印刷ジョブ1101、1102、1103)、負荷カテゴライズテーブル1104、及び調停管理テーブル1105は、スプーラ部207に格納済みであるとする。また、調停範囲は、印刷ジョブ1101、1102、1103の3ジョブとする。
Here, the print job arbitration method according to the present embodiment will be described by taking a specific example. FIG. 11 shows an example of job arbitration according to the present embodiment. A case where the
図11(a)は、各印刷ジョブに基づく画像のイメージ図である。図11(a)に示すように、各印刷ジョブ(印刷ジョブ1101、1102、110)はそれぞれ2ページで構成され、印刷ジョブ1101は、印刷ジョブ1102及び1103とは出力サイズが異なる。
FIG. 11A is an image diagram of an image based on each print job. As shown in FIG. 11A, each print job (
図11(b)は、本実施形態で用いる負荷カテゴライズテーブル1104及び調停管理テーブル1105と、印刷ジョブ1101のジョブ解析結果1006と、負荷推定結果1108と、調停前後の印刷ジョブの処理順序1109とを示す。
FIG. 11B shows the load categorization table 1104 and the arbitration management table 1105 used in the present embodiment, the
調停が開始されると、CPU101は、ジョブ解析部209に印刷ジョブ1101の設定情を解析させ、解析結果1106をスプーラ部207に格納させる。解析結果1106には、ジョブ種別、ジョブの総ページ数、出力設定、補正設定等が記述される。印刷ジョブ1102、1103についても同様に解析を行う。
When the arbitration is started, the
次に、CPU101は、ジョブ処理負荷推定部211に解析結果1106を取得させ、負荷推定結果を生成させる。負荷推定とは、負荷カテゴライズテーブル1104と解析結果1106に基づいて、処理負荷分類を行うことである。本実施形態では、ジョブ種別、サイズ、補正設定、レイアウト設定により処理負荷を分類する。解析結果1106から処理負荷を分類するために必要な参照情報1107を取得し、負荷カテゴライズテーブル1104と照合する。参照情報1107は、負荷カテゴライズテーブル1104の1行目と適合する。したがって、印刷ジョブ1101は、負荷カテゴリがType−Aと判別される。同様に印刷ジョブ1102、1103について負荷カテゴリを判別し、印刷ジョブと判定結果を関連付けた負荷推定結果1108をスプーラ部207に生成する。
Next, the
その後、CPU101は、ジョブ調停部212に負荷推定結果1108と調停管理テーブル1105により調停順序を決定させる。ジョブ調停部212は、調停管理テーブル1105を参照することで、負荷推定結果1108に存在する負荷カテゴリの組合せをどのような順序に調停されるかを決定する。負荷推定結果1108に存在する負荷カテゴリはACDであり、負荷の組み合わせは調停管理テーブル1105の2行目と適合する。調停管理テーブル1105のルールに従い、負荷カテゴリCDAの順で処理することを決定する。すなわち、印刷ジョブ1102、1103、1101の順序で処理するよう調停する。
Thereafter, the
図11(c)は、ジョブ調停が未実施の場合のラスタライズ部203における各処理ステージの処理推移の予測と、ジョブ調停を実施した場合のラスタライズ部203における各処理ステージの処理推移の予想を示す図である。ジョブ調停が未実施の場合、印刷ジョブのスプーラ部207への投入順、すなわち、印刷ジョブ1101の1ページ目、2ページ目、印刷ジョブ1102の1ページ目、2ページ目、印刷ジョブ1103の1ページ目、2ページ目の順でラスタライズ処理される。これに対し、ジョブ調停を実施した場合、印刷ジョブ1102の1ページ目、2ページ目、印刷ジョブ1103の1ページ目、2ページ目、印刷ジョブ1101の1ページ目、2ページ目の順でラスタライズ処理される。これにより、ジョブ調停を未実施の場合の処理推移1110と比べ、ジョブ調停を実施することでラスタライズ処理に要する時間が短縮され、処理効率が向上する。さらに、各ジョブにおける律速要因となる処理ステージ1112が並列処理されるようになり、リソース使用率も向上する。
FIG. 11C shows the prediction of the processing transition of each processing stage in the
以上のように、描画処理を複数の処理ステージに分割し、それぞれ並列処理可能なパイプライン化されたラスタライズ処理において、各処理ステージの負荷を推定しジョブ調停を行うことにより、効率的なラスタライズ処理が実施可能となる。具体的には、複数の印刷ジョブデータの処理時間の合計が短くなるように順序を決定する。 As described above, the drawing process is divided into a plurality of processing stages, and in the pipelined rasterization process capable of parallel processing respectively, the load on each processing stage is estimated and job arbitration is performed to perform efficient rasterization process. Can be implemented. Specifically, the order is determined such that the total processing time of the plurality of print job data is short.
さらに、本実施形態では、最も処理負荷の高い処理ステージが並列処理されるように、印刷ジョブが調停されるため、リソースの使用効率が向上する。 Furthermore, in the present embodiment, since the print job is arbitrated so that the processing stages with the highest processing load are processed in parallel, the resource use efficiency is improved.
また、複数の印刷ジョブデータのラスタライズ処理の実行時間を短縮することができるため、省電力やメンテナンス効率を向上させることもできる。 Further, since the execution time of rasterization processing of a plurality of print job data can be shortened, power saving and maintenance efficiency can be improved.
(実施形態2)
実施例1では、ジョブの調停をジョブ単位で実行していたのに対し、本実施形態では、ジョブの調停をページ単位で実行する。
Second Embodiment
In the first embodiment, job arbitration is performed on a job basis, whereas in this embodiment, job arbitration is performed on a page basis.
図12を用いて、本実施形態に係る処理の流れの一例について詳細に説明する。なお、CPU101は、ROM102に格納されているプログラムをRAM103にロードし、それを実行することにより、図12に示すフローチャートを実行する。
An example of the flow of processing according to the present embodiment will be described in detail using FIG. The
S1201〜S1209は、図6のS601〜609と同様であるため説明を省略する。なお、調停範囲内のジョブの設定が全て同じ場合(S1207でYes)、S1216へ進み、投入順序の調停を行なわず(投入順を変更せず)、ラスタライズ処理を開始する(S1217)。 S1201 to S1209 are the same as S601 to 609 in FIG. If all the settings of the jobs within the arbitration range are the same (Yes in S1207), the process advances to S1216 to start rasterization processing without performing arbitration of the submission order (without changing the submission order) (S1217).
印刷ジョブの負荷タイプの負荷カテゴリが異なった場合(S1209でNo)、ジョブ調停部212において、調停範囲内の印刷ジョブについて負荷カテゴリ毎の総ページ数を取得する(S1210)。取得された各負荷カテゴリの総ページ数が同じか判定する(S1211)。なお、ここではページ数が同じか判定するものとしたが、これに限定されず、例えば、負荷カテゴリのばらつきが許容できるか判定するようにしてもよい。具体的には、ページ数の差が所定の範囲内か判定するようにしてもよい。
If the load category of the print job load type is different (No in S1209), the
各負荷カテゴリの総ページ数が同じ場合(S1211でYes)、ジョブ調停部212において設定された負荷カテゴライズテーブルを利用して処理ページ順序の調停を行い(S1215)、ラスタライズ処理を開始する(1217)。 If the total number of pages in each load category is the same (Yes in S1211), the processing page order is arbitrated using the load categorization table set in the job arbitration unit 212 (S1215), and rasterization processing is started (1217) .
各負荷カテゴリの総ページ数が異なる場合(S1211でNo)、まず、取得した処理対象となる各印刷ジョブデータの総ページ数を比較する。そして、処理対象となる各印刷ジョブデータのそれぞれを所定ページ数分、具体的には、処理対象となる印刷ジョブデータのなかにおける最小のページ数と同じページ数分の処理ページ順序の調停を行う(S1212)。次に、調停が実施されなかった残りのページに対して、処理ページ内容を解析して負荷カテゴリを再設定するか判定する(S1213)。未調停ページに対する負荷カテゴリの再設定の判定については、ユーザインタフェース部107に表示された表示画面における設定に従う。再設定を行わない場合(S1213でNo)、未調停ページの負荷カテゴリに対して調停管理テーブルを参照し、処理ページ順序の調停を行う(S1215)。未調停ページに対して再設定する場合(S1213でYes)、ページ単位で負荷カテゴリを再設定し(S1214)。負荷カテゴリの再設定は、ページを詳細に解析して行ってもよいし、データサイズや画像枚数のような簡易解析に基づいて行ってもよい。再設定後、再度負荷カテゴリ毎のページ数を比較し(S1211)、処理ページ順序の調停を行う。
When the total number of pages of each load category is different (No in S1211), first, the total number of pages of the acquired print job data to be processed is compared. Then, arbitrate the processing page order for each print job data to be processed by a predetermined number of pages, specifically, by the same number of pages as the minimum number of pages in the print job data to be processed (S1212). Next, for the remaining pages for which arbitration has not been performed, it is determined whether the processing page contents are analyzed and the load category is to be reset (S1213). The determination of resetting of the load category for the unarbitrated page follows the setting on the display screen displayed on the
図13を用いて、図12で示したフローチャートによるジョブ調停について具体例を挙げて説明する。 The job arbitration according to the flowchart shown in FIG. 12 will be described using a specific example with reference to FIG.
図13(a)は、各ジョブに含まれるページ数が同じ場合の説明図である。負荷推定結果情報1301は、ジョブ処理負荷推定部211が生成する。負荷推定結果情報1301には、ジョブIDと、負荷カテゴリと、各ジョブの総ページ数とを含む。負荷推定結果情報1301から負荷カテゴリが3種類でいずれも5ページずつであることを特定することができる。図12における処理において、図13(a)に示す場合、各負荷カテゴリはページ数が同じであるため(S1211でYes)、1302に示す範囲のページ、すなわち、各印刷ジョブデータの全てのページについてジョブ調停を行う。負荷カテゴリの組み合わせがABCであるため調停管理テーブル情報に従い、CBAの順で処理するように調停する。すなわち、ジョブ22の1ページ目、ジョブ21の1ページ目、ジョブ20の1ページ目の順序で処理されるように調停する。ジョブの調停を実行せずにジョブを処理した場合の各処理ステージの処理推移1303と、ジョブの調停を実施した場合の各処理ステージの処理推移1304とを比較すると、ジョブの調停を実施することにより処理時間が短くなることがわかる。
FIG. 13A is an explanatory diagram of the case where the number of pages included in each job is the same. The job processing
図13(b)は、各ジョブに含まれるページ数が異なる場合の説明図である。負荷推定結果情報1305は、ジョブ処理負荷推定部211生成する。負荷推定結果情報1305から負荷カテゴリが3種類で総ページ数がそれぞれ異なることを特定することができる。図12における処理において、図13(b)に示す場合、各負荷カテゴリはページ数が異なるため(S1211でNo)、処理対象となる印刷ジョブのなかにおいて最小ページ数(ジョブID025の3ページ)分のジョブ調停を行う(S1212)。すなわち、1306に示す範囲についてジョブ調停を行う。これにより、各印刷ジョブの3ページ目まで順序が決定する。具体的には、ジョブ25の1ページ目、ジョブ24の1ページ目、ジョブ23の1ページ目の順序で処理される。次に、未調停ページ1307について負荷カテゴリの再設定を行うか判定する(S1213)。本実施形態では未調停ページ1307について負荷カテゴリの再設定は行わない。未調停ページ1307は、調停によりジョブ24の4ページ目、ジョブ23の4ページ目、5ページ目の順序で処理される。ジョブの調停を実施せずにジョブを処理した場合の各処理ステージの処理推移1308と、ジョブの調停を実施した場合の各処理ステージの処理推移1304とを比較すると、ジョブの調停を実施することにより処理時間が短くなることがわかる。
FIG. 13B is an explanatory diagram when the number of pages included in each job is different. The load
本実施形態では、ジョブの処理の開始は、例えば、未調停ページ1307が調停完了後とするが、これに限定されるものではない。例えば、調停対象ページ1306の処理完了までに未調停ページ1307の調停を完了できる場合は、調停済みページの処理を開始するようにしてもよい。
In the present embodiment, the start of job processing is, for example, after the completion of arbitration of the
以上のように、各処理ステージの負荷を推定して、ページ単位でジョブ調停を行うことで、より効率的なラスタライズ処理が実施可能となる。ページ数が膨大な場合は、ジョブ単位で調停を行う場合よりもさらに効率的にラスタライズ処理を実行することができる。さらに、本実施形態では、最も処理負荷の高い処理ステージを並列処理するように調停されるため、リソースの使用効率が向上する。 As described above, by estimating the load of each processing stage and performing job arbitration on a page basis, more efficient rasterization processing can be performed. When the number of pages is large, rasterization processing can be executed more efficiently than when arbitration is performed on a job basis. Furthermore, in the present embodiment, since the processing stage with the highest processing load is arbitrated in parallel processing, resource use efficiency is improved.
(他の実施形態)
本発明は上述した実施形態に限定されるものではない。例えば、上述した実施形態では、画像処理部が負荷の組み合わせを決定できるようにしたが、調停管理テーブルの結果を他の処理部や外部装置から取得するようにしてもよい。
(Other embodiments)
The present invention is not limited to the embodiments described above. For example, in the above-described embodiment, the image processing unit can determine the combination of loads, but the result of the arbitration management table may be acquired from another processing unit or an external device.
また、上述した実施形態では、画像処理装置が有する画像処理部において、ジョブの調停を行うようにしたが、これに限定されるものではない。例えば、ジョブ調停範囲決定部210及びジョブ調停部212が実行する処理を他の処理部やPC等の他の外部装置が実行するようにしてもよい。
In the embodiment described above, the job processing is performed in the image processing unit of the image processing apparatus. However, the present invention is not limited to this. For example, the processing performed by the job arbitration
また、上述した実施形態では、負荷カテゴリを決定するために、ジョブ設定として、ジョブの種類、補正の実行の有無、レイアウトを判定するものとしたが、これに限定されるものではない。例えば、ジョブの種類、補正の実行の有無、及びレイアウトのうち1又は2つの設定に基づいて負荷カテゴリを決定してもよいし、他の設定をさらに考慮して負荷カテゴリを決定してもよい。 Further, in the embodiment described above, in order to determine the load category, the type of job, the presence or absence of execution of correction, and the layout are determined as job settings, but the present invention is not limited to this. For example, the load category may be determined based on one or two settings of the type of job, the presence or absence of correction execution, and the layout, or the load category may be determined in consideration of other settings. .
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしてもよい。 The embodiment described above is also realized by performing the following processing. That is, software (program) for realizing the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (CPU, MPU, etc.) of the system or apparatus reads and executes the program. Processing. Also, the program may be executed by one computer or may be executed by interlocking a plurality of computers. Moreover, it is not necessary to realize all of the above-described processes by software, and some or all of the processes may be realized by hardware such as an ASIC. Also, the CPU is not limited to the one performing all the processing with one CPU, and a plurality of CPUs may perform the processing while appropriately coordinating.
100 画像形成装置
101 CPU
102 ROM
103 RAM
202 ジョブ制御部
203 ラスタライズ部
100
102 ROM
103 RAM
202
Claims (15)
複数の印刷ジョブデータを受信する受信手段と、
印刷ジョブデータのジョブ設定を特定する第1特定手段と、前記第1特定手段により特定されたジョブ設定に基づいて、各印刷ジョブデータにおいて複数の処理プロセスのうち負荷の高い処理プロセスを特定する第2特定手段と、
前記第2特定手段により特定された負荷の高い処理プロセスに基づいて、前記受信手段が受信した複数の印刷ジョブデータのラスタライズ処理の順序を決定する決定手段と、
前記ラスタライズ部に前記決定手段により決定した順序で前記複数の処理プロセスを実行させる制御手段と、
を有することを特徴とする処理装置。 A processing apparatus for executing a plurality of processing processes on print job data by a rasterizing unit capable of executing different processing processes in parallel,
Receiving means for receiving a plurality of print job data;
A first identifying unit for identifying job settings of print job data, and a processing process having a high load among a plurality of processing processes in each print job data based on the job settings identified by the first identifying unit 2 Identifying means,
A determination unit that determines an order of rasterization processing of a plurality of print job data received by the reception unit based on the processing process with high load specified by the second specification unit;
Control means for causing the rasterization unit to execute the plurality of processing processes in the order determined by the determination means;
Processing equipment characterized by having.
前記決定手段は、前記設定手段により設定された範囲の印刷ジョブデータの順序を決定することを特徴とする請求項1〜3のいずれか1項に記載の処理装置。 The printing apparatus further comprises setting means for setting a range for determining the order among the print job data received by the receiving means,
The processing apparatus according to any one of claims 1 to 3, wherein the determination unit determines the order of the print job data in the range set by the setting unit.
前記ラスタライズ部は、前記複数の処理プロセスを実行することにより、印刷ジョブデータからビットマップデータを生成することを特徴とする請求項1〜3のいずれか1項に記載の処理装置。 It further comprises the rasterization unit,
The processing apparatus according to any one of claims 1 to 3, wherein the rasterizing unit generates bitmap data from print job data by executing the plurality of processing processes.
複数の印刷ジョブデータを受信する受信工程と、
印刷ジョブデータのジョブ設定を特定する第1特定工程と、
前記第1特定工程により特定されたジョブ設定に基づいて、各印刷ジョブデータにおいて複数の処理プロセスのうち負荷の高い処理プロセスを特定する第2特定工程と、
前記第2特定工程において特定された負荷の高い処理プロセスに基づいて、前記受信工程において受信した複数の印刷ジョブデータのラスタライズ処理の順序を決定する決定工程と、
前記ラスタライズ部に前記決定工程において決定した順序で前記複数の処理プロセスを実行させる実行工程と、
を有することを特徴とする処理方法。 A processing method for executing a plurality of processing processes on print job data by a rasterizing unit capable of executing different processing processes in parallel,
A receiving step of receiving a plurality of print job data;
A first identification step of identifying job settings of print job data;
A second identification step of identifying a processing process with a high load among a plurality of processing processes in each print job data based on the job setting identified by the first identification step;
A determining step of determining an order of rasterization processing of a plurality of print job data received in the receiving step based on the processing process with high load specified in the second specifying step;
An execution step of causing the rasterization unit to execute the plurality of processing processes in the order determined in the determination step;
Processing method characterized by having.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015076286A JP6512902B2 (en) | 2015-04-02 | 2015-04-02 | Image processing apparatus, control method thereof and control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015076286A JP6512902B2 (en) | 2015-04-02 | 2015-04-02 | Image processing apparatus, control method thereof and control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016196111A JP2016196111A (en) | 2016-11-24 |
JP6512902B2 true JP6512902B2 (en) | 2019-05-15 |
Family
ID=57357531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015076286A Active JP6512902B2 (en) | 2015-04-02 | 2015-04-02 | Image processing apparatus, control method thereof and control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6512902B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018059757A (en) | 2016-10-04 | 2018-04-12 | オムロンオートモーティブエレクトロニクス株式会社 | Light projection optical system and object detector |
JP2021002243A (en) * | 2019-06-24 | 2021-01-07 | コニカミノルタ株式会社 | Information processor, image formation system, print control method and program |
JP7384032B2 (en) | 2019-12-27 | 2023-11-21 | ブラザー工業株式会社 | Printing device, control method, and control program |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3175620B2 (en) * | 1996-06-21 | 2001-06-11 | セイコーエプソン株式会社 | Printing equipment |
AUPQ772300A0 (en) * | 2000-05-24 | 2000-06-15 | Canon Kabushiki Kaisha | Highly pipelined printing system architecture |
JP2003335005A (en) * | 2002-05-22 | 2003-11-25 | Canon Inc | Data processing circuit and recording device using the circuit |
JP2013028012A (en) * | 2011-07-27 | 2013-02-07 | Canon Inc | Printing device, information processing device, printing system, printing control method, and program |
-
2015
- 2015-04-02 JP JP2015076286A patent/JP6512902B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016196111A (en) | 2016-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8564810B2 (en) | Job management apparatus, job management method, and storage medium for using information of a post-processing apparatus to manage a print job | |
US9715358B2 (en) | Information processing apparatus, information processing method, and recording medium | |
US20120086970A1 (en) | Division of rendering block in image forming apparatus | |
JP6512902B2 (en) | Image processing apparatus, control method thereof and control program | |
US8767247B2 (en) | Print data generation device, print data generation method and computer-readable medium for controlling rasterization processing | |
US8941852B2 (en) | Print data processing system, print data processing method, and non-transitory computer readable medium | |
JP5099594B2 (en) | Image processing apparatus, image processing system, and image processing program | |
JP4696748B2 (en) | Image forming system, interrupt processing method, and printing apparatus | |
JP6541389B2 (en) | Printer and method for predicting print time of print job | |
JP6992496B2 (en) | Control program and information processing device | |
JP2006209508A (en) | Print system, its control method, and print management program | |
JP2006195531A (en) | Image recording system | |
JP2011201146A (en) | Image processing device and image processing program | |
JP4095581B2 (en) | Information processing apparatus and control method thereof | |
JP2010069672A (en) | Printer | |
JP2012126024A (en) | Print job processing apparatus, program for the same, and print job processing method | |
JP2017065128A (en) | Printer, control method thereof, and program | |
JP2015168132A (en) | Image formation system and print data drawing expansion method for image formation system | |
JP2011143576A (en) | Print data generator, image forming apparatus and program | |
US11656823B2 (en) | Information processing apparatus, printing apparatus, and information processing system | |
JP6836310B2 (en) | Printing device, its control method, and program | |
US9477910B2 (en) | Image editing apparatus, image editing method, and non-transitory storage medium | |
JP6344145B2 (en) | Image forming apparatus and image forming program | |
JP2016018534A (en) | Server, job management system, job management method, and program | |
JP2016162244A (en) | Image processing system, image formation and output control apparatus, and image processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180329 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190215 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190312 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190409 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6512902 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |