JP2009230220A - Information processor and image processor - Google Patents
Information processor and image processor Download PDFInfo
- Publication number
- JP2009230220A JP2009230220A JP2008071790A JP2008071790A JP2009230220A JP 2009230220 A JP2009230220 A JP 2009230220A JP 2008071790 A JP2008071790 A JP 2008071790A JP 2008071790 A JP2008071790 A JP 2008071790A JP 2009230220 A JP2009230220 A JP 2009230220A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- processor
- processing load
- page
- information
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 596
- 238000000034 method Methods 0.000 claims description 96
- 230000010365 information processing Effects 0.000 claims description 23
- 239000004065 semiconductor Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000020169 heat generation Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 2
- 208000019901 Anxiety disease Diseases 0.000 description 1
- 230000036506 anxiety Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Image Processing (AREA)
Abstract
Description
本発明は、情報処理装置、及び画像処理装置に関する。 The present invention relates to an information processing apparatus and an image processing apparatus.
プロセッサを用いる各種の情報処理装置において、プロセッサによる情報処理効率を高める種々の技術が提案されている。 In various information processing apparatuses using a processor, various techniques for improving information processing efficiency by the processor have been proposed.
プリンタや複合機等の画像情報処理装置においても、例えば、ホスト端末から印刷指示された文書情報に基づき印刷データを生成する画像処理機能をプロセッサシステムにより実現している。 In an image information processing apparatus such as a printer or a multifunction peripheral, for example, an image processing function for generating print data based on document information instructed to be printed from a host terminal is realized by a processor system.
この種の画像情報処理装置へのプロセッサシステムの適用例について、下記特許文献1には、非対称なマルチプロセッサを、仕事量の予測可能な複数のジョブをプロセッサに割り振る画像処理システムが開示されている。
Regarding an application example of a processor system to this type of image information processing apparatus,
特許文献1記載の画像処理システムでは、それぞれのプロセッサの命令セットは基本命令セットおよび該基本命令セットのサブセットを有しており、該基本命令及びサブの各セットに基づき、処理を割り振るプロセッサを排他的に選択している。
本発明は、処理対象の情報を、各処理単位毎にその処理負荷に対応可能な処理能力を有するプロセッサに割当てて処理することにより、省電力化を図りながら処理効率を高めることが可能な情報処理装置、及び画像処理装置を提供することを目的とする。 The present invention assigns and processes information to be processed to a processor having a processing capability capable of handling the processing load for each processing unit, thereby enabling to improve processing efficiency while saving power. It is an object of the present invention to provide a processing device and an image processing device.
上記目的を達成するために、請求項1記載の情報処理装置の発明は、情報の処理能力が異なる複数のプロセッサと、前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、情報の処理命令に含まれる各処理単位の情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記処理単位の情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、前記処理単位の情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該処理単位の情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該処理単位の情報の処理を割当てる処理割当手段とを具備する。
In order to achieve the above object, an information processing apparatus according to
請求項2記載の画像処理装置の発明は、画像情報の処理能力が異なる複数のプロセッサと、前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、画像情報の印刷命令に含まれる各頁の画像情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記各頁の画像情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、前記各頁の画像情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の画像情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の画像情報の処理を割当てる処理割当手段とを具備する。 The image processing apparatus according to claim 2 includes a plurality of processors having different processing capabilities of image information, arithmetic coefficient management means for managing arithmetic coefficients corresponding to the processing capacity according to the processing capacity of the processor, and the processor. Threshold management means for managing each processing load threshold corresponding to the processing capability for each processing capability, processing load information indicating the processing load value of the image information of each page included in the print command of the image information, and the calculation coefficient management Calculation means for calculating a prediction processing load value for each processing capacity for each image information of each page based on the calculation coefficient for each processing capacity managed by the means, and for each image information of each page, the calculation It is determined for each processing capability of the processor whether the predicted processing load value calculated by the means is greater than or equal to the processing load threshold managed by the threshold management means, and the predicted processing load value is determined by the processing capacity. If it is determined that the load threshold is exceeded, the processing of the image information of the page is assigned to a processor having a processing capability exceeding the processing capability, and the predicted processing load value is determined to be less than the processing load threshold. In some cases, the image processing apparatus includes processing allocation means for allocating processing of image information on the page to a processor having the processing capability.
請求項3記載の発明は、上記請求項2記載の発明において、前記処理負荷情報は、整数演算処理に係わる整数演算処理負荷値と、浮動小数点演算処理に係わる浮動小数点演算処理負荷値とを含み、前記演算係数管理手段は、整数演算処理に係わる整数演算係数と、浮動小数点演算処理に係わる浮動小数点演算係数とで成る前記演算係数を管理し、前記算出手段は、前記各頁の画像情報毎に、前記整数演算処理負荷値に前記整数演算係数を乗じた値に、前記浮動小数点演算処理負荷値に前記浮動小数点演算係数を乗じた値を加算した予測処理負荷値を算出する。 The invention according to claim 3 is the invention according to claim 2, wherein the processing load information includes an integer arithmetic processing load value related to integer arithmetic processing and a floating point arithmetic processing load value related to floating point arithmetic processing. The arithmetic coefficient management means manages the arithmetic coefficients composed of integer arithmetic coefficients related to integer arithmetic processing and floating point arithmetic coefficients related to floating point arithmetic processing, and the calculating means manages each image information on each page. A predicted processing load value is calculated by adding a value obtained by multiplying the integer arithmetic processing load value by the integer arithmetic coefficient to a value obtained by multiplying the floating point arithmetic processing load value by the floating point arithmetic coefficient.
請求項4記載の発明は、上記請求項2または3記載の発明において、前記処理割当手段は、前記処理の割当先のプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段高い処理能力を有するプロセッサに当該処理を代替割当する。 According to a fourth aspect of the present invention, in the invention according to the second or third aspect, when the processor to which the process is assigned cannot accept the process, the process assigning means sequentially until there is a processor that can accept the process. Then, the processing is substituted and assigned to a processor having a higher processing capability.
請求項5記載の発明は、上記請求項2または3記載の発明において、前記処理割当手段は、前記処理の割当先である最も処理能力が高いプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段低い処理能力を有するプロセッサに当該処理を代替割当する。 The invention according to claim 5 is the processor according to claim 2 or 3, wherein the processing allocation means is a processor capable of accepting a process when a processor having the highest processing capability to which the process is assigned cannot accept the process. Until there exists, the process is sequentially assigned to a processor having a lower processing capacity.
請求項6記載の発明は、上記請求項2乃至5のいずれか記載の発明において、前記処理割当手段は、前記処理の割当先及び代替割当先の全てのプロセッサが処理受付不能の場合、当該各プロセッサの稼動状態を監視し、稼動状態からアイドル状態になったプロセッサに当該処理を代替割当する。 According to a sixth aspect of the present invention, in the invention according to any one of the second to fifth aspects, the process allocating unit is configured such that when all processors of the process allocation destination and the alternative allocation destination cannot accept the process, The operating state of the processor is monitored, and the process is substituted and assigned to the processor that has changed from the operating state to the idle state.
請求項7記載の発明は、上記請求項2乃至6のいずれか記載の発明において、前記印刷命令を受けた際にアイドル状態であったか否かを判別する判別手段を具備し、前記処理割当手段は、前記判別手段により、前記印刷命令を受けた際にアイドル状態にあったと判別された場合、印刷命令された前記画像情報の1頁目の処理を最も高い処理能力を有するプロセッサに割当てる。 According to a seventh aspect of the present invention, in the invention according to any one of the second to sixth aspects, the apparatus includes a determination unit that determines whether the print command is in an idle state when the print command is received. If the determination means determines that the print command is in an idle state, the first page of the image information for which the print command has been issued is assigned to the processor having the highest processing capability.
請求項1記載の情報処理装置の発明によれば、処理負荷が大きい処理単位の情報には高性能なプロセッサを割り当てて処理のスループットを向上させる一方で、処理負荷が小さい処理単位の情報には低性能なプロセッサを割り当てて消費電力を抑えつつ、全体の処理の高速化、及び低消費電流化が図れる。 According to the invention of the information processing apparatus according to the first aspect, a high-performance processor is allocated to information on a processing unit having a large processing load to improve processing throughput, while information on a processing unit having a low processing load is While allocating a low-performance processor to reduce power consumption, the overall processing speed can be increased and the current consumption can be reduced.
請求項2記載の画像処理装置の発明によれば、画像情報の処理に際し、処理負荷が大きい頁には高性能なプロセッサを割り当てて処理のスループットを向上させる一方で、処理負荷が小さい頁には低性能なプロセッサを割り当てて消費電力を抑えつつ、全体の処理の高速化、及び低消費電流化が図れる。 According to the invention of the image processing apparatus of the second aspect, when processing image information, a high-performance processor is assigned to a page with a large processing load to improve the processing throughput, while a page with a low processing load is assigned to the page. While allocating a low-performance processor to reduce power consumption, the overall processing speed can be increased and the current consumption can be reduced.
請求項3記載の発明は、上記請求項2記載の発明において、各頁の画像情報が、整数演算対象情報と浮動小数点演算対象情報から構成される場合でも、各頁の画像情報をその処理負荷に対応可能な処理能力を有するプロセッサに割当てて分散処理し、省電力化を図りながら画像情報の処理効率を高めることができる。 According to the third aspect of the present invention, in the invention of the second aspect, even when the image information of each page is composed of integer operation target information and floating point operation target information, the image information of each page is processed as a processing load. It is possible to increase the processing efficiency of image information while reducing power consumption by allocating to a processor having a processing capability that can handle the above.
請求項4記載の発明は、上記請求項2または3記載の発明において、高性能、中性能及び低性能の各プロセッサのうち、処理負荷に応じて該当する頁の画像情報処理を割当てた、例えば、中性能プロセッサが空いておらず、高性能プロセッサが空いている場合は該高性能プロセッサにより該頁の画像情報処理が行える。 The invention according to claim 4 assigns image information processing of the corresponding page according to the processing load among the high performance, medium performance and low performance processors in the invention of claim 2 or 3, for example, If the medium performance processor is not available and the high performance processor is available, the high performance processor can perform image information processing on the page.
請求項5記載の発明は、上記請求項2または3記載の発明において、高性能、中性能及び低性能の各プロセッサのうちの高性能プロセッサにある頁の画像情報の処理を割り当てようとし、該高性能プロセッサが空いておらず、中性能プロセッサが空いている場合は該中性能プロセッサにより該頁の画像情報処理が行える。 According to a fifth aspect of the present invention, in the invention of the second or third aspect, the image information processing of the page in the high performance processor among the high performance, medium performance and low performance processors is assigned, When the high-performance processor is not available and the medium-performance processor is available, the intermediate-performance processor can perform image information processing on the page.
請求項6記載の発明は、上記請求項2乃至5のいずれか記載の発明において、ある頁の画像情報処理を高性能プロセッサに割当てようとする際に、高性能、中性能、低性能のいずれのプロセッサも空いていない場合、その後に、例えば、中性能プロセッサが空いた時に、該中性能プロセッサで当該頁の画像情報処理が行える。 The invention according to claim 6 is the invention according to any one of claims 2 to 5, wherein any one of high performance, medium performance, and low performance is assigned when an image information processing of a page is assigned to the high performance processor. If the processor is not available, then, for example, when the medium performance processor is available, the image processing of the page can be performed by the medium performance processor.
請求項7記載の発明は、上記請求項2乃至6記載の発明において、アイドル状態で印刷指示を受けた際に、1頁目の画像情報を高性能プロセッサで処理して迅速に画像出力し、印刷指示した利用者の画像出力開始までの待ち時間による不安感を和らげることができる。 The invention according to claim 7 is the invention according to any one of claims 2 to 6, wherein when a print instruction is received in an idle state, the image information of the first page is processed by a high-performance processor and the image is quickly output. It is possible to relieve the anxiety caused by the waiting time until the image output of the user who has instructed printing starts.
以下、本発明の実施形態について添付図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
図1は、本発明に係わる印刷システムの全体構成を示すブロック図である。 FIG. 1 is a block diagram showing the overall configuration of a printing system according to the present invention.
この印刷システムは、クライアント端末30と、クライアント端末30からの印刷指示に基づき印刷対象の文書等の画像情報を画像処理して画像出力装置20に送出する印刷データを生成する画像処理機能を有する画像処理装置10とをLAN(Local Area Network)等の通信ネットワーク50を介して接続して構成される。
The printing system has an image processing function for generating image data to be processed and image data to be sent to the
クライアント端末30は、例えば、PC(パーソナル・コンピュータ)により実現され、図1に示すように、キーボードやマウス等の入力デバイスから成る入力/操作部31、操作ガイダンスや動作状態等の各種情報を表示する表示部32、動作プログラム等の各種情報を記憶する記憶部33、装置全体の制御を行う制御部34、ネットワーク50を介して画像処理装置10と通信(印刷ジョブ等のデータの送受)する際の通信インタフェースを司る通信インタフェース(I/F)部35を備えて構成される。
The
クライアント端末10において、制御部34には、入力/操作部31での所定の操作に応じて文書情報(文書ファイル)などの操作、保存、表示、編集、印刷指示操作などの処理を行うアプリケーション部341、入力/操作部31での所定の文書ファイルの印刷指示操作に基づき該文書ファイルの描画命令であるPDL(Page Description Language)情報と、該文書ファイルの各頁毎の処理負荷値を示す処理負荷情報から成る印刷ジョブを生成して画像処理装置10に送出するプリンタドライバ342が設けられる。
In the
図2は、クライアント端末30のプリンタドライバ342が印刷対象の文書ファイルのPDL情報に付加する処理負荷情報の一例を示す表図である。
FIG. 2 is a table showing an example of processing load information added to the PDL information of the document file to be printed by the
図2に示す表図において、ページ数(例えば、iとする)は1〜Nまであり、PageiIはi頁目の整数演算(I)負荷の値、PageiFはi頁目の浮動小数点演算(F)負荷の値を表している。 In the table shown in FIG. 2, the number of pages (for example, i) is 1 to N, PageiI is an integer operation (I) load value of the i-th page, and PageiF is a floating-point operation (F) of the i-th page. ) Represents the load value.
図2に示すように、プリンタドライバ342は、N頁の文書ファイルの印刷ジョブの生成に際しては、1〜Nの各頁毎に、整数演算処理に係わる整数演算処理負荷値(Page1I,Page2I,…,PageNI)と、浮動小数点演算処理に係わる浮動小数点演算処理負荷値(Page1F,Page2F,…,PageNF)を算出し、該各頁の整数演算処理負荷値と浮動小数点演算処理負荷値とから成る処理負荷情報をPDL情報に付加して画像処理装置10に印刷指示する。
As shown in FIG. 2, the
一方、本発明に係わる画像処理装置10は、例えば、高性能、中性能、低性能というように、段階的に処理能力が異なる複数のプロセッサで実現される画像処理部を有し、クライアント端末30からネットワーク50を介して受信した上記印刷ジョブから各頁毎に処理負荷情報を抽出し、該抽出した処理負荷情報を用いて各頁毎に処理負荷の見積り値(予測処理負荷)を算出する一方で、各頁の処理を、該算出した予測負荷値に基づき、該予測負荷値に対応可能な処理能力を有するプロセッサに割当てる処理機能を有する。
On the other hand, the
以下、本発明に係わる画像処理装置10に適用するプロセッサシステムの構成及び処理動作について各実施例を挙げて詳細に説明する。
Hereinafter, the configuration and processing operation of a processor system applied to the
図3は、実施例1に係わる画像処理装置10の機能構成を示すブロック図である。
FIG. 3 is a block diagram illustrating a functional configuration of the
この画像処理装置10は、装置全体の制御を行なう制御部101、制御部101の制御の下に、クライアント端末30から受信した印刷ジョブに基づき、印刷対象の画像データに対する画像処理を行う画像処理部102、クライアント端末30からのネットワーク50を介して印刷ジョブを受信する際のネットワーク50とのインタフェース処理を行うネットワークインタフェース(I/F)部104、画像処理部102による画像処理後のデータ(印刷データ)をプリンタエンジン部である画像出力装置20に出力する際のインタフェースを司るプリンタエンジンインタフェース(I/F)部105、動作プログラム等の情報を記憶するROM(Read Only Memory)106、クライアント端末30から受信した印刷ジョブ等の各種情報の一時記憶手段として用いられるRAM(Random Access Memory)107、各種入出力装置とのの通信インタフェースを司る入力/出力(I/O)デバイス108を具備して構成される。
The
制御部101、画像処理部102、ネットワークI/F部104、プリンタエンジンI/F部105は、1つの半導体デバイスで構成される。
The
この半導体デバイス内には、上記各機能部間の情報伝送経路である内部バス121と、これら各機能部と該半導体デバイス外のROM106、RAM107等の機能部との間で外部バス122を介して通信する外部バスI/F部103が更に設けられる。
In this semiconductor device, an
また、この半導体デバイス内の構成要素である画像情報処理部102は、それぞれが、多種類の処理能力(高性能、中性能、低性能等の各段階の処理能力)のうちの1つの処理能力を有する複数のマイクロプロセッサ(超小型処理装置:以下、プロセッサ)から構成される。
In addition, each of the image
本実施例では、1つの高性能プロセッサ111(プロセッサA)と、該高性能プロセッサAの次に高い(一段低い)処理能力を有する1つの中性能プロセッサ112(プロセッサB)と、該中性能プロセッサBの次に高い(一段低い)処理能力を有する3つの低性能プロセッサ113,114,115,116〔プロセッサC(C1,C2,C3)〕を備えて構成される。
In this embodiment, one high-performance processor 111 (processor A), one medium-performance processor 112 (processor B) having the next highest (one step lower) processing capability of the high-performance processor A, and the medium-performance processor Three low-
制御部101もプロセッサで構成され、プリンタドライバ342から入力された印刷ジョブ(PDLと処理負荷情報を含む)中の処理負荷情報に基づき印刷指示された文書ファイルの各頁の処理負荷の見積もりを行い、3種類(高性能、中性能、低性能)のプロセッサA,B,C1〜C3に対する処理の割り当てを行う機能を有する。
The
内部バス121は半導体デバイス内部のバスであり、上記各プロセッサA,B,C1〜C3と該半導体デバイスの外部にある構成要素との接続インタフェースのモジュールである外部バスI/F部103が接続されている。
The
外部バスI/F部130は内部バス121と外部のデバイスが接続された外部バス122のデータの受け渡しを行うインターフェースモジュールである。
The external bus I / F unit 130 is an interface module that transfers data of the
外部バス122にはROM106、RAM107、I/Oデバイス108が接続されている。
A
ネットワークI/F部104は、クライアント端末30のプリンタドライバ342から情報を受け取るためのLANインタフェースであり、ネットワーク50に接続されている。
The network I /
プリンタエンジンI/F部105は、画像を印刷する画像出力装置20に接続されている。
The printer engine I /
図4は、本実施例に係わる画像処理装置10(図3参照)の制御部101の機能構成を示すブロック図である。
FIG. 4 is a block diagram illustrating a functional configuration of the
画像処理装置10において、制御部101は、上記3種類のプロセッサA,B,Cの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理部131、上記3種類のプロセッサA,B,Cの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する処理負荷閾値管理部132、クライアント端末30からの印刷ジョブ(印刷命令)に含まれる各頁の情報の処理負荷値を示す処理負荷情報と、演算係数管理部131で管理されているプロセッサA,B,Cに対応する処理能力別の演算係数とに基づき、各頁の情報毎に処理能力別の処理負荷の見積り値を予測(算出)する処理負荷予測部133、処理対象情報の各頁の情報毎に、処理負荷予測部133により算出された処理負荷見積り値(予測処理負荷値)が処理負荷閾値管理部132が管理する処理負荷閾値以上か否かを3種類のプロセッサA,B,Cの処理能力別に判定し、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の情報の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の情報の処理を割当てる処理割当制御部134を具備して構成される。
In the
図5は、本実施例の画像処理装置10における制御部101の演算係数管理部131による各プロセッサの処理能力別の演算係数の管理形態を示す表図である。
FIG. 5 is a table showing a management form of calculation coefficients for each processing capability of each processor by the calculation
図5において、高性能プロセッサAに関しては、その整数演算係数を“AI”、浮動小数点演算係数を“AF”と表す。 In FIG. 5, for the high-performance processor A, the integer arithmetic coefficient is represented as “AI” and the floating-point arithmetic coefficient is represented as “AF”.
中性能プロセッサBに関しては、その整数演算係数を“BI”、浮動小数点演算係数を“BF”と表す。 For the medium performance processor B, the integer arithmetic coefficient is represented by “BI” and the floating point arithmetic coefficient is represented by “BF”.
低性能プロセッサCに関しては、その整数演算係数を“CI”、浮動小数点演算係数を“CF”と表す。 For the low-performance processor C, the integer arithmetic coefficient is represented by “CI” and the floating-point arithmetic coefficient is represented by “CF”.
この演算係数は、処理能力が高ければ小さく、処理能力が低ければ大きくなる。従がって、(AI<BI<CI)、及び(AF<BF<CF)という大小関係が成り立つ。 The calculation coefficient is small when the processing capability is high, and is large when the processing capability is low. Accordingly, the magnitude relationship of (AI <BI <CI) and (AF <BF <CF) is established.
また、この例では低性能プロセッサCの浮動小数点演算はソフトウエアエミュレーションによって処理されることを前提にしており、“CF”は“BF”に比べてかなり大きな値となる。 In this example, it is assumed that the floating-point arithmetic of the low-performance processor C is processed by software emulation, and “CF” is a considerably larger value than “BF”.
このように、本実施例の画像処理装置10において、演算係数管理部131は、図5に示す如くの演算係数管理テーブル1311(例えば、演算係数管理部131内に設けられる)を用いて、高性能プロセッサA、中性能プロセッサB、低性能プロセッサCの各処理能力に対応して、それぞれ、整数演算係数と浮動小数点演算係数から成る演算係数を保持、管理している。
As described above, in the
図5に示す演算係数管理テーブル1311を用いて管理される演算係数は、制御部101(図4参照)の処理負荷予測部133における処理負荷予測(算出)処理に用いられる。
The calculation coefficient managed using the calculation coefficient management table 1311 shown in FIG. 5 is used for the processing load prediction (calculation) process in the processing
すなわち、画像処理装置10の制御部101において、処理負荷予測部133は、クライアント端末30から印刷ジョブを受信すると、該印刷ジョブに含まれる各頁毎の処理負荷値と、演算係数管理テーブル1311に格納管理される演算係数とに基づき、下式(1)〜(3)を用いて、各頁毎に、各種別のプロセッサA,B,Cの処理能力別の処理負荷見積り値(予測処理負荷値)を算出する。
That is, in the
高性能プロセッサAでのi頁目の処理負荷見積り値(LAi)
=(PageiI×AI)+(PageiF×AF) … (1)
中性能プロセッサBでのi頁目の処理負荷見積り値(LBi)
=(PageiI×BI)+(PageiF×BF) … (2)
低性能プロセッサCでのi頁目の処理負荷見積り値(LCi)
=(PageiI×CI)+(PageiF×CF) … (3)
上記(1)〜(3)式によれば、処理負荷予測部133は、クライアント端末30から印刷指示された文書ファイルの各頁毎の整数演算処理負荷とプロセッサの処理能力別の整数演算係数の積に、各頁毎の浮動小数点演算処理負荷とプロセッサの処理能力別の浮動小数点演算係数の積を合算して処理負荷見積もり値(予測処理負荷値)を算出する。
Estimated processing load of page i in high-performance processor A (LAi)
= (PageiI × AI) + (PageiF × AF) (1)
Estimated processing load on page i in medium performance processor B (LBi)
= (PageiI × BI) + (PageiF × BF) (2)
Estimated processing load of page i in low-performance processor C (LCi)
= (PageiI × CI) + (PageiF × CF) (3)
According to the above formulas (1) to (3), the processing
図6は、本実施例の画像処理装置10における制御部101の処理負荷閾値管理部132による各プロセッサの処理能力別の処理負荷閾値の管理形態を示す表図である。
FIG. 6 is a table showing a management form of the processing load threshold value according to the processing capability of each processor by the processing load threshold
処理負荷閾値管理部132は、図6に示す処理負荷閾値管理テーブル1321(例えば、処理負荷閾値管理部132内に設けられる)を用いて、高性能プロセッサA、中性能プロセッサB、低性能プロセッサCの各処理能力に対応して、それぞれ、“Ath”、“Bth”、“Cth”なる値を有する処理負荷閾値を保持、管理している。
The processing load threshold
図6に示す処理負荷閾値管理テーブル1321を用いて管理される処理負荷閾値は、処理負荷予測部133により算出された各頁の予測処理負荷値と各処理能力別に比較され、該比較結果に基づく当該頁の処理の各プロセッサへの割当判定に用いられる。
The processing load threshold managed using the processing load threshold management table 1321 shown in FIG. 6 is compared with the predicted processing load value of each page calculated by the processing
すなわち、本実施例の画像処理装置10の制御部101(図4参照)において、処理割当制御部134は、クライアント端末30から印刷指示された文書ファイルの各頁毎に、処理負荷予測部133により算出された予測処理負荷値が処理負荷閾値管理部132が管理する処理負荷閾値以上か否かをプロセッサの処理能力別に判定し、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の処理を割当てる処理割当制御を行う。
That is, in the control unit 101 (see FIG. 4) of the
以下、本実施例に係わる画像処理装置10のプロセッサ割当処理について図7に示すフローチャートを参照して詳述する。
Hereinafter, the processor allocation processing of the
このプロセッサ割当処理に先立ち、クライアント端末30では、ユーザの印刷指示操作により、プリンタドライバ342がPDL情報と処理負荷情報から成る印刷ジョブを生成し、該印刷ジョブを、通信I/F部35を通じ、画像処理装置10宛てにネットワーク50へと送信する。
Prior to this processor allocation process, in the
画像処理装置10では、クライアント端末30のプリンタドライバ342からネットワーク50に対して送出された印刷ジョブを、ネットワークI/F部104で受信する。
In the
そして、該受信した印刷ジョブを構成するPDL情報と処理負荷情報をRAM107に書き込んだうえで、図7に示すフローチャートに沿ったプロセッサ割当処理を開始する。
Then, the PDL information and the processing load information constituting the received print job are written in the
図7に示すプロセッサ割当処理においては、まず、画像処理装置10の制御部101の処理負荷予測部133は、演算係数管理部131の演算係数管理テーブル1311から各プロセッサA,B,Cの処理能力別に設定されている整数演算係数(AI,BI,CI)、及び浮動小数点演算係数(AF,BF,CF)を読み出す(ステップS101)。
In the processor allocation process shown in FIG. 7, first, the processing
次いで、処理負荷予測部133は、印刷頁カウンタiの値を初期値“0”から“1”インクリメントした値に更新したうえで(ステップS102)、RAM107に記憶されている処理負荷情報(クライアント端末30からPDL情報と共に受信した情報)中の1頁目の整数演算負荷値(=Page1I)及び浮動小数点演算負荷値(=Page1F)を読出し(ステップS103)、該読み出した1頁目の整数演算負荷値(=Page1I)及び浮動小数点演算負荷値(=Page1F)と、上記ステップS101で読み出している整数演算係数(AI,BI,CI)、及び浮動小数点演算係数(AF,BF,CF)に基づき、当該頁(1頁目)のプロセッサ処理能力別の見積り値である予測処理負荷値(LA,LB,LC)を算出する(ステップS104)。
Next, the processing
具体的には、1頁目の高性能プロセッサの処理能力に対応した予測処理負荷値(LA1)としては、上記(1)式を用い、(LA1)=(Page1I×AI)+(Page1F×AF)を算出する。 Specifically, as the predicted processing load value (LA1) corresponding to the processing capability of the high-performance processor on the first page, the above equation (1) is used, and (LA1) = (Page1I × AI) + (Page1F × AF) ) Is calculated.
また、当該1頁目の中性能プロセッサの処理能力に対応した予測処理負荷値(LB1)としては、上記(2)式を用い、(LB1)=(Page1I×BI)+(Page1F×BF)を算出する。 Further, as the predicted processing load value (LB1) corresponding to the processing capability of the medium performance processor on the first page, the above formula (2) is used, and (LB1) = (Page1I × BI) + (Page1F × BF). calculate.
更に、当該1頁目の低性能プロセッサの処理能力に対応した予測処理負荷値(LC1)としては、上記(3)を用い、(LC1)=(Page1I×CI)+(Page1F×CF)を算出する。 Further, as the predicted processing load value (LC1) corresponding to the processing capability of the low-performance processor on the first page, (LC1) = (Page1I × CI) + (Page1F × CF) is calculated using (3) above. To do.
次いで、処理割当制御部134は、処理負荷閾値管理部132の処理負荷閾値管理テーブル1321(図6参照)から、高性能、中性能、低性能の各プロセッサの処理能力別の処理負荷閾値(Ath),(Bth),(Cth)を読み出し、該読み出した処理負荷閾値(Ath),(Bth),(Cth)と、上記ステップS104で算出した高性能、中性能、低性能の各プロセッサの処理能力別の予測処理負荷値(LA1),(LB1),(LC1)とをそれぞれに処理能力別に比較し、該処理能力別の予測処理負荷値と処理負荷閾値の比較の結果、ある処理能力に関して、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁(1頁目)の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該1頁目の処理を割当てる割当処理を実行する。
Next, the processing
具体的には、まず、低性能プロセッサCにおける処理負荷値LC1が低性能プロセッサCにおいて充分処理可能であるかどうかを判断するために、該処理負荷値LC1と処理負荷閾値Cthとの比較を行う(ステップS105)。 Specifically, first, in order to determine whether or not the processing load value LC1 in the low performance processor C can be processed sufficiently in the low performance processor C, the processing load value LC1 is compared with the processing load threshold Cth. (Step S105).
ここで、処理負荷値LC1が処理負荷閾値Cthよりも小さい場合(ステップS105NO)は、低性能プロセッサCによる処理で充分であると判断して、当該1頁の処理を低性能プロセッサCへ割り当てる(ステップS200)。 Here, when the processing load value LC1 is smaller than the processing load threshold Cth (NO in step S105), it is determined that the processing by the low performance processor C is sufficient, and the processing of the one page is assigned to the low performance processor C ( Step S200).
これに対し、処理負荷値LC1が処理負荷閾値Cthよりも大きい場合(ステップS105YES)は、低性能プロセッサCによる処理では不十分であるため、中性能プロセッサBにおける処理負荷値LB1が中性能プロセッサBにおいて充分処理可能であるかどうかを判断するために、該処理負荷値LB1と処理負荷閾値Bthとの比較を行う(ステップS106)。 On the other hand, when the processing load value LC1 is larger than the processing load threshold value Cth (YES in step S105), the processing by the low performance processor C is insufficient, so the processing load value LB1 in the medium performance processor B is the medium performance processor B. In step S106, the processing load value LB1 is compared with the processing load threshold value Bth.
ここで、処理負荷値LB1が処理負荷閾値Bthよりも小さい場合(ステップS106NO)は、中性能プロセッサによる処理で充分であると判断して、当該1頁の処理を中性能プロセッサBへ割り当てる(ステップS300)。 Here, when the processing load value LB1 is smaller than the processing load threshold Bth (NO in step S106), it is determined that the processing by the medium performance processor is sufficient, and the processing of the one page is assigned to the medium performance processor B (step S106). S300).
これに対し、処理負荷値LB1が処理負荷閾値Bthよりも大きい場合(ステップS106YES)は、中性能プロセッサBによる処理でも不十分であるため、当該1頁の処理を高性能プロセッサAへ割り当てる(ステップS400)。 On the other hand, when the processing load value LB1 is larger than the processing load threshold Bth (step S106 YES), the processing by the medium performance processor B is not sufficient, and therefore the processing of the one page is assigned to the high performance processor A (step S400).
上記の如く、高性能、中性能、低性能のいずれかのプロセッサに対して1頁の処理を割当てた後、処理割当制御部134は、次の頁があるか否かを判定し(ステップS107)、次頁があると判定された場合(ステップS107YES)は、ステップS102に戻り、以後、該ステップS102〜S105、S200、または、ステップS102〜S105、S106、S300、若しくは、ステップS102〜S105、S106、S400の処理を、ステップS107において次頁がないと判定されるまで繰返し実行する。
As described above, after assigning one page of processing to any of the high performance, medium performance, and low performance processors, the processing
この2頁目以降、最終頁までの各頁(i頁目:i=2,3,…,N)について繰返し実行する上記一連の処理中、ステップS102では、処理負荷予測部133が、印刷頁カウンタiの値を当該頁の値(=i)に更新し、ステップS103では、RAM107から処理負荷情報中の当該i頁目の整数演算負荷値(=PageiI)及び浮動小数点演算負荷値(=PageiF)を読出し、ステップS104では、該読み出したi頁目の整数演算負荷値(=PageiI)及び浮動小数点演算負荷値(=PageiF)と、上記ステップS101で読み出している整数演算係数(AI,BI,CI)、及び浮動小数点演算係数(AF,BF,CF)に基づき、それぞれ、上記(1)式、(2)式、(3)式を用いて、
当該i頁目の高性能プロセッサの処理能力に対応した予測処理負荷値(LAi)=(PageiI×AI)+(PageiF×AF)、
当該i頁目の中性能プロセッサの処理能力に対応した予測処理負荷値(LBi)=(PageiI×BI)+(PageiF×BF)、
及び、当該i頁目の低性能プロセッサの処理能力に対応した予測処理負荷値(LCi)=(PageiI×CI)+(PageiF×CF)
を算出する。
During the series of processes repeatedly executed for each page from the second page to the last page (i-th page: i = 2, 3,..., N), in step S102, the processing
Predictive processing load value (LAi) = (PageiI × AI) + (PageiF × AF) corresponding to the processing capability of the high-performance processor of the i-th page,
Predictive processing load value (LBi) = (PageiI × BI) + (PageiF × BF) corresponding to the processing capability of the medium performance processor of the i-th page,
And the predicted processing load value (LCi) = (PageiI × CI) + (PageiF × CF) corresponding to the processing capability of the low-performance processor of the i-th page.
Is calculated.
次いで、ステップS105では、低性能プロセッサにおける処理負荷値LCiと対応する処理能力の処理負荷閾値Cthを比較し、処理負荷値LCiが処理負荷閾値Cthよりも小さい場合(ステップS105NO)は、ステップS200において、当該i頁目の処理を低性能プロセッサCへ割り当てる。 Next, in step S105, the processing load value LCi in the low performance processor is compared with the processing load threshold Cth of the corresponding processing capability. If the processing load value LCi is smaller than the processing load threshold Cth (NO in step S105), in step S200. The process of the i-th page is assigned to the low-performance processor C.
これに対し、処理負荷値LCiが処理負荷閾値Cthよりも大きい場合(ステップS105YES)は、ステップS106で中性能プロセッサBにおける処理負荷値LBiと対応する処理能力の処理負荷閾値Bthを比較し、処理負荷値LBiが処理負荷閾値Bthよりも小さい場合(ステップS106NO)は、ステップS300において当該i頁目の処理を中性能プロセッサBへ割り当てる一方、処理負荷値LBiが処理負荷閾値Bthよりも大きい場合(ステップS106YES)は、ステップS400において当該i頁目の処理を高性能プロセッサAへ割り当てる。 On the other hand, when the processing load value LCi is larger than the processing load threshold value Cth (YES in step S105), the processing load value LBi in the medium performance processor B is compared with the processing load threshold value Bth of the processing capability corresponding to the processing load threshold value Bth in step S106. When the load value LBi is smaller than the processing load threshold value Bth (NO in step S106), the processing of the i-th page is assigned to the medium performance processor B in step S300, while the processing load value LBi is larger than the processing load threshold value Bth ( In step S106, the processing of the i-th page is assigned to the high-performance processor A in step S400.
このようにして、1頁目からN頁目までの各頁を、その予測処理負荷値に基づき、該予測処理負荷値に対応可能な処理能力を有するプロセッサにそれぞれ割当てた後、ステップS107において次頁がないと判定された場合(ステップS107YES)、一連のプロセッサ割当処理を終了する。 In this manner, after assigning each page from the first page to the Nth page to a processor having a processing capability corresponding to the predicted processing load value based on the predicted processing load value, the next page is performed in step S107. If it is determined that there is no page (YES in step S107), the series of processor allocation processes is terminated.
次に、図7のステップS200、S300及びS400における低性能、中性能及び高性能の各プロセッサに対する割当処理について詳述する。 Next, allocation processing for each of the low performance, medium performance, and high performance processors in steps S200, S300, and S400 of FIG. 7 will be described in detail.
図8は、図7のステップS200における低性能プロセッサ割当処理を示すフローチャートである。 FIG. 8 is a flowchart showing the low performance processor allocation processing in step S200 of FIG.
この処理は、図7のステップS105において、処理対象のi頁目について、低性能プロセッサCにおける処理負荷値LCiが処理負荷閾値Cthよりも小さいと判定される(ステップS105NO)により開始される。 This process is started in step S105 of FIG. 7 when it is determined that the processing load value LCi in the low performance processor C is smaller than the processing load threshold Cth for the i-th page to be processed (step S105 NO).
この低性能プロセッサCの割り当ての処理が開始されると、処理割当制御部134は、まず、低性能プロセッサCが空いているかどうかを調べ(ステップS201)、該低性能プロセッサCが空いていれば(ステップS201YES)、該低性能プロセッサCに対して当該頁の処理を割り当て(ステップS211)、その後、図7のステップS107へ移行する。
When the allocation process of the low performance processor C is started, the process
これに対して、低性能プロセッサCが空いていない場合(ステップS201NO)、次いで、一段高い処理能力を有する中性能プロセッサBが空いているかどうかを調べ(ステップS202)、該中性能プロセッサBが空いていれば(ステップS202YES)、低性能プロセッサCに代えて、該中性能プロセッサCに対して当該頁の処理を割り当て(ステップS212)、その後、図7のステップS107へ移行する。 On the other hand, when the low performance processor C is not available (step S201 NO), it is then checked whether the medium performance processor B having a higher processing capability is available (step S202), and the medium performance processor B is available. If so (YES in step S202), instead of the low-performance processor C, the process of the page is assigned to the medium-performance processor C (step S212), and then the process proceeds to step S107 in FIG.
一方、中性能プロセッサCが空いていない場合(ステップS202NO)、次いで、更に一段階高い処理能力を有する高性能プロセッサAが空いているかどうかを調べ(ステップS203)、該高性能プロセッサAが空いていれば(ステップS203YES)、該高性能プロセッサAに対して当該頁の処理を割り当て(ステップS213)、その後、図7のステップS107へ移行する。 On the other hand, if the medium performance processor C is not available (step S202 NO), then it is checked whether or not the high performance processor A having a further higher processing capacity is available (step S203), and the high performance processor A is available. If so (YES in step S203), the processing of the page is assigned to the high-performance processor A (step S213), and then the process proceeds to step S107 in FIG.
また、高性能プロセッサAが空いていない場合(ステップS203NO)、処理割当制御部134は、高性能、中性能及び低性能の各プロセッサの稼動状態を監視し(ステップS204YES)、いずれかのプロセッサが稼動状態からアイドル状態となった(プロセッサが空いた)場合(ステップS204YES)、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当て(ステップS205)、該割り当て後、図7のステップS107へ移行する。
If the high-performance processor A is not available (step S203 NO), the process
図9は、図7のステップS300における中性能プロセッサ割当処理を示すフローチャートである。 FIG. 9 is a flowchart showing the medium performance processor allocation processing in step S300 of FIG.
この処理は、図7のステップS106において、処理対象のi頁目について、中性能プロセッサBにおける処理負荷値LBiが処理負荷閾値Bthよりも小さいと判定される(ステップS106NO)により開始される。 This processing is started in step S106 of FIG. 7 when it is determined that the processing load value LBi in the medium performance processor B is smaller than the processing load threshold Bth for the i-th page to be processed (NO in step S106).
この中性能プロセッサBの割り当ての処理が開始されると、処理割当制御部134は、まず、中性能プロセッサBが空いているかどうかを調べ(ステップS301)、該中性能プロセッサBが空いていれば(ステップS301YES)、該中性能プロセッサBに対して当該頁の処理を割り当て(ステップS311)、その後、図7のステップS107へ移行する。
When the allocation process of the medium performance processor B is started, the process
これに対して、中性能プロセッサBが空いていない場合(ステップS301NO)、次いで、一段階高い処理能力を有する高性能プロセッサAが空いているかどうかを調べ(ステップS302)、該高性能プロセッサAが空いていれば(ステップS302YES)、中性能プロセッサBに代えて、該高性能プロセッサAに対して当該頁の処理を割り当て(ステップS312)、その後、図7のステップS107へ移行する。 On the other hand, if the medium performance processor B is not free (NO in step S301), then, it is checked whether or not the high performance processor A having one step higher processing capability is available (step S302). If it is vacant (YES in step S302), the processing of the page is assigned to the high-performance processor A instead of the medium-performance processor B (step S312), and then the process proceeds to step S107 in FIG.
一方、高性能プロセッサAが空いていない場合(ステップS302NO)、次いで、低性能プロセッサCが空いているかどうかを調べ(ステップS303)、該低性能プロセッサCが空いていれば(ステップS303YES)、該低性能プロセッサCに対して当該頁の処理を割り当て(ステップS313)、その後、図7のステップS107へ移行する。 On the other hand, if the high-performance processor A is not free (step S302 NO), then it is checked whether the low-performance processor C is free (step S303). If the low-performance processor C is free (step S303 YES), the The processing of the page is assigned to the low performance processor C (step S313), and then the process proceeds to step S107 in FIG.
また、低性能プロセッサCが空いていない場合(ステップS303NO)、処理割当制御部134は、高性能、中性能及び低性能の各プロセッサの稼動状態を監視し(ステップS304YES)、いずれかのプロセッサが稼動状態からアイドル状態となった(プロセッサが空いた)場合(ステップS304YES)、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当て(ステップS305)、該割り当て後、図7のステップS107へ移行する。
If the low-performance processor C is not available (NO in step S303), the process
図10は、図7のステップS400における高性能プロセッサ割当処理を示すフローチャートである。 FIG. 10 is a flowchart showing the high-performance processor allocation process in step S400 of FIG.
この処理は、図7のステップS106において、処理対象のi頁目について、中性能プロセッサBにおける処理負荷値LBiが処理負荷閾値Bthよりも大きいと判定される(ステップS106YES)により開始される。 This processing is started in step S106 of FIG. 7 when it is determined that the processing load value LBi in the medium performance processor B is larger than the processing load threshold Bth for the i-th page to be processed (step S106 YES).
この高性能プロセッサAの割り当ての処理が開始されると、処理割当制御部134は、まず、高性能プロセッサAが空いているかどうかを調べ(ステップS401)、該高性能プロセッサAが空いていれば(ステップS401YES)、該高性能プロセッサAに対して当該頁の処理を割り当て(ステップS411)、その後、図7のステップS107へ移行する。
When the allocation process for the high-performance processor A is started, the process
これに対して、高性能プロセッサAが空いていない場合(ステップS401NO)、次いで、一段階低い処理能力を有する中性能プロセッサBが空いているかどうかを調べ(ステップS402)、該中性能プロセッサBが空いていれば(ステップS402YES)、該中性能プロセッサBに対して当該頁の処理を割り当て(ステップS412)、その後、図7のステップS107へ移行する。 On the other hand, if the high performance processor A is not available (NO in step S401), then, it is checked whether or not the medium performance processor B having the processing capability one step lower is available (step S402). If it is vacant (YES in step S402), the process of the page is assigned to the medium performance processor B (step S412), and then the process proceeds to step S107 in FIG.
一方、中性能プロセッサBが空いていない場合(ステップS402NO)、次いで、更に一段階低い処理能力を有する低性能プロセッサCが空いているかどうかを調べ(ステップS403)、該低性能プロセッサCが空いていれば(ステップS403YES)、該低性能プロセッサCに対して当該頁の処理を割り当て(ステップS413)、その後、図7のステップS107へ移行する。 On the other hand, if the medium performance processor B is not available (step S402 NO), then it is checked whether or not the low performance processor C having a further lower processing capability is available (step S403), and the low performance processor C is available. If so (YES in step S403), the processing of the page is assigned to the low-performance processor C (step S413), and then the process proceeds to step S107 in FIG.
また、低性能プロセッサCが空いていない場合(ステップS403NO)、処理割当制御部134は、高性能、中性能及び低性能の各プロセッサの稼動状態を監視し(ステップS404YES)、いずれかのプロセッサが稼動状態からアイドル状態となった(プロセッサが空いた)場合(ステップS404YES)、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当て(ステップS405)、該割り当て後、図7のステップS107へ移行する。
If the low-performance processor C is not available (NO in step S403), the process
なお、図8、図9及び図10に示した各性能のプロセッサに対する処理割り当てに際し、処理の割り当てが行われなかったプロセッサに対してはクロックを停止する等の省電力モードに移行させるように制御し、消費電力の低減を図る。 In addition, when assigning processes to the processors having the respective performances shown in FIGS. 8, 9, and 10, control is performed so as to shift to a power saving mode such as stopping the clock for the processors to which the processes are not assigned. And reduce power consumption.
本実施例では、処理負荷の重い(大きい)頁には高性能なプロセッサを割り当て処理のスループットを向上させる一方、処理負荷の軽い(小さい)頁には低性能なプロセッサを割り当てて消費電力を抑え、かつ、半導体デバイスの発熱を抑えるようにする。 In this embodiment, high-performance processors are allocated to pages with heavy (large) processing loads, and the throughput of processing is improved, while low-performance processors are allocated to pages with light (small) processing loads to reduce power consumption. In addition, heat generation of the semiconductor device is suppressed.
かかるプロセッサ割当処理によれば、画像処理能力が異なる複数のプロセッサを集積化し、半導体デバイスとして実装する画像処理装置において、全体の処理の高速化を図ることができとともに、消費電力を低減し半導体デバイスの発熱を抑えた運用が実現できる。 According to such processor allocation processing, in an image processing apparatus in which a plurality of processors having different image processing capabilities are integrated and mounted as a semiconductor device, the overall processing speed can be increased, and power consumption is reduced and the semiconductor device is reduced. Operation with reduced heat generation can be realized.
図11は、実施例2に係わる画像処理装置10Bの機能構成を示すブロック図である。
FIG. 11 is a block diagram illustrating a functional configuration of the
本実施例の画像処理装置10Bにおいて、実施例1に係わる画像処理装置10の各機能部と同一のものには同一の符号を付している。
In the
本実施例の画像処理装置10Bにおいては、画像処理部102bは、1つの高性能プロセッサ111と、4つの低性能プロセッサ113,114,115,116により構成される。
In the
また、画像処理装置10Bにおいて、制御部101bは、図12に示す如くの機能構成を有する。
In the
この制御部101bにおいても、実施例1に係わる制御部101(図4参照)の各部と同様のものについては同一の符号を付している。
Also in the
図12に示す制御部101bにおいて、実施例1にはない構成として、印刷受付時状態監視部135が設けられる。
In the
印刷受付時状態監視部135は、クライアント端末30から印刷指示(印刷ジョブ)を受け付けた際に、該印刷指示を受け付けるまでの間、当該画像処理装置10Bがアイドル状態であったか否かを判定する処理機能を有する。
When receiving a print instruction (print job) from the
また、制御部101bにおいて、演算係数管理部131bは、画像処理部102b(図11参照)における高性能プロセッサA、及び低性能プロセッサC(C1,C2,C3,C4)の2種類のプロセッサを有する構成に対応して、図13に示す如くの演算係数管理テーブル1311bを有し、該演算係数管理テーブル1311bを用いて、高性能プロセッサAに関する整数演算係数“AI”、及び浮動小数点演算係数“AF”と、低性能プロセッサに関する整数演算係数“CI”、及び浮動小数点演算係数“CF”を管理する。
In the
高性能プロセッサAの整数演算係数“AI”と低高性能プロセッサCの整数演算係数“CI”の間には、AI<CIという大小関係が成り立ち、高性能プロセッサの浮動小数点演算係数“AF”と低性能プロセッサの浮動小数点演算係数“CF”との間にはAF<CFなる大小関係が成り立つ。 A relation of AI <CI is established between the integer arithmetic coefficient “AI” of the high-performance processor A and the integer arithmetic coefficient “CI” of the low-performance processor C, and the floating-point arithmetic coefficient “AF” of the high-performance processor A relationship of AF <CF is established with the floating-point arithmetic coefficient “CF” of the low-performance processor.
また、この例では低性能プロセッサCの浮動小数点演算はソフトウエアエミュレーションによって処理されるため、“CF”は“AF”に比べてかなり大きな値となる。 In this example, since the floating-point operation of the low-performance processor C is processed by software emulation, “CF” is a considerably larger value than “AF”.
また、制御部101bにおいて、処理負荷閾値管理部132bは、画像処理部102b(図11参照)における高性能プロセッサA、及び低性能プロセッサC(C1,C2,C3,C4)の2種類のプロセッサを有する構成に対応して、図14に示す如くの処理負荷閾値管理テーブル1321bを有し、該処理負荷閾値管理テーブル1321bを用いて、高性能プロセッサA、低性能プロセッサCの各処理能力に対応して、それぞれ、“Ath”、“Cth”という値を有する処理負荷閾値を保持、管理する。
In the
これにより、制御部101bにおいて、処理負荷予測部133は、クライアント端末30から印刷ジョブを受信すると、該印刷ジョブに含まれる各頁毎の処理負荷情報(図2参照)と、演算係数管理テーブル1311b(図13参照)に格納管理される演算係数とに基づき、各頁(頁番号i:i=1,2,…,N)毎に、上述した(1)式を用いて、
高性能プロセッサAでのi頁目の処理負荷見積り値(LAi)
=(PageiI×AI)+(PageiF×AF)
を算出すると共に、上述した(3)式を用いて、
低性能プロセッサCでのi頁目の処理負荷見積り値(LCi)
=(PageiI×CI)+(PageiF×CF)
を算出する。
Thereby, in the
Estimated processing load of page i in high-performance processor A (LAi)
= (PageiI × AI) + (PageiF × AF)
And calculating the above equation (3),
Estimated processing load of page i in low-performance processor C (LCi)
= (PageiI × CI) + (PageiF × CF)
Is calculated.
また、制御部101bにおいて、処理割当制御部134bは、処理負荷予測部133により算出された高性能、低性能の各プロセッサの処理能力別の予測処理負荷値(LAi),(LCi)と、処理負荷閾値管理部132bの処理負荷閾値管理テーブル1321b(図14参照)に保持される、高性能、低性能の各プロセッサの処理能力別の処理負荷閾値(Ath),(Cth)をそれぞれに処理能力別に比較し、ある処理能力に関して、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁(i頁目)の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁(i頁目)の処理を割り当てる処理を前提としつつも、クライアント端末30から印刷ジョブを受信した際に、印刷受付時状態監視部135によって、該印刷指示を受け付けるまでの間、当該画像処理装置10Bがアイドル状態であったことが判定された場合は、印刷命令された画像情報の1頁目については、常に、最も高い処理能力を有するプロセッサAに処理の割当を行う制御機能を更に有する。
Further, in the
以下、実施例2に係わる画像処理装置10Bのプロセッサ割当処理について図15に示すフローチャートを参照して詳述する。
Hereinafter, the processor assignment processing of the
この画像処理装置10Bでは、クライアント端末30のプリンタドライバ342からネットワーク50に対して送出された印刷ジョブ(各頁のPDL情報と処理負荷情報から成る)を、ネットワークI/F部104で受信し、該受信した印刷ジョブを構成するPDL情報と処理負荷情報をRAM107に書き込んだうえで、図15に示すフローチャートに沿ったプロセッサ割当処理を開始する。
In this
図15に示すプロセッサ割当処理においては、まず、画像処理装置10Bの制御部101bの処理負荷予測部133は、演算係数管理部131bの演算係数管理テーブル1311bから各プロセッサA,Cの処理能力別に設定されている整数演算係数(AI,CI)、及び浮動小数点演算係数(AF,CF)を読み出す(ステップS121)。
In the processor assignment process shown in FIG. 15, first, the processing
次いで、処理負荷予測部133bは、処理対象頁カウンタiの値を初期値“0”から“1”インクリメントした値に更新したうえで(ステップS122)、該処理対象頁カウンタiの値に基づき処理対象が1頁目か否かをチェックする(ステップS123)。 Next, the processing load prediction unit 133b updates the value of the processing target page counter i to a value obtained by incrementing the initial value “0” by “1” (step S122), and performs processing based on the value of the processing target page counter i. It is checked whether or not the target is the first page (step S123).
ここで、処理対象が1頁目であると判定された場合(ステップS123YES)、その旨を印刷受付時状態監視部135に通知する。
Here, when it is determined that the processing target is the first page (YES in step S123), the fact is notified to the print acceptance
この通知を受けると、印刷受付時状態監視部135は、クライアント端末30から印刷指示(印刷ジョブ)を受け付けるまでの間、当該画像処理装置10Bがアイドル状態であったか否かを判定する(ステップS124)。
Upon receiving this notification, the print reception
ここで、印刷指示を受け付けるまでアイドル状態であったと判定された場合(ステップS124YES)、処理割当制御部134bは、当該1頁目の処理を高性能プロセッサAへ割り当てる(ステップS170)。
If it is determined that the printer is in the idle state until a print instruction is accepted (YES in step S124), the process
これに対して、印刷指示を受け付けるまでアイドル状態でなかったと判定された場合(ステップS124NO)、処理負荷予測部133は、RAM107に記憶されている処理負荷情報中の1頁目の整数演算負荷値(=Page1I)及び浮動小数点演算負荷値(=Page1F)を読出し(ステップS103)、該読み出した1頁目の整数演算負荷値(=Page1I)及び浮動小数点演算負荷値(=Page1F)と、上記ステップS101で読み出している整数演算係数(AI,CI)、及び浮動小数点演算係数(AF,CF)に基づき、当該頁(1頁目)のプロセッサ処理能力別の見積り値である予測処理負荷値(LA,LC)を算出する(ステップS104)。
On the other hand, when it is determined that the idle state has not been received until the print instruction is received (NO in step S124), the processing
具体的には、1頁目の高性能プロセッサの処理能力に対応した予測処理負荷値(LA1)としては、上記(1)式を用い、(LA1)=(Page1I×AI)+(Page1F×AF)を算出する。 Specifically, as the predicted processing load value (LA1) corresponding to the processing capability of the high-performance processor on the first page, the above equation (1) is used, and (LA1) = (Page1I × AI) + (Page1F × AF) ) Is calculated.
また、当該1頁目の低性能プロセッサの処理能力に対応した予測処理負荷値(LC1)としては、上記(3)を用い、(LC1)=(Page1I×CI)+(Page1F×CF)を算出する。 Further, as the predicted processing load value (LC1) corresponding to the processing capability of the low-performance processor on the first page, (LC1) = (Page1I × CI) + (Page1F × CF) is calculated using (3) above. To do.
次いで、処理割当制御部134bは、処理負荷閾値管理部132bの処理負荷閾値管理テーブル1321b(図14参照)から、高性能、低性能の各プロセッサの処理能力別の処理負荷閾値(Ath),(Cth)を読み出し、該読み出した処理負荷閾値(Ath),(Cth)と、上記ステップS104で算出した高性能、低性能の各プロセッサの処理能力別の予測処理負荷値(LA1),(LC1)とをそれぞれに処理能力別に比較し、該処理能力別の予測処理負荷値と処理負荷閾値の比較の結果、ある処理能力に関して、予測処理負荷値が処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁(1頁目)の処理を割当て、予測処理負荷値が処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該1頁目の処理を割当てる割当処理を実行する。
Next, the processing
具体的には、まず、低性能プロセッサにおける処理負荷値LC1が低性能プロセッサCにおいて充分処理可能であるかどうかを判断するために、該処理負荷値LC1と処理負荷閾値Cthとの比較を行う(ステップS105)。 Specifically, first, in order to determine whether or not the processing load value LC1 in the low performance processor can be sufficiently processed in the low performance processor C, the processing load value LC1 is compared with the processing load threshold Cth ( Step S105).
ここで、処理負荷値LC1が処理負荷閾値Cthよりも大きい場合(ステップS127YES)は、該高性能プロセッサAに対して当該1頁目の処理を割り当てる(ステップS140)。 Here, when the processing load value LC1 is larger than the processing load threshold Cth (step S127 YES), the processing of the first page is assigned to the high-performance processor A (step S140).
これに対し、処理負荷値LC1が処理負荷閾値Cthよりも小さい場合(ステップS127NO)は、低性能プロセッサCが空いているかどうかを調べ(ステップS128)、該低性能プロセッサCが空いていれば(ステップS128YES)、該低性能プロセッサCに対して当該1頁目の処理を割り当てる(ステップS150)。 On the other hand, when the processing load value LC1 is smaller than the processing load threshold Cth (step S127 NO), it is checked whether or not the low performance processor C is free (step S128), and if the low performance processor C is free (step S128). In step S128, the process for the first page is assigned to the low-performance processor C (step S150).
また、低性能プロセッサCが空いていない場合(ステップS128NO)、更に、高性能プロセッサAが空いているかどうかを調べ(ステップS129)、該高性能プロセッサが空いていれば(ステップS129YES)、低性能プロセッサCに代えて、該高性能プロセッサAに対して当該1頁目の処理を割り当てる(ステップS160)。 If the low-performance processor C is not available (NO in step S128), it is further checked whether or not the high-performance processor A is available (step S129). If the high-performance processor is available (step S129 YES), the low performance processor C is checked. Instead of the processor C, the processing of the first page is assigned to the high-performance processor A (step S160).
一方、高性能プロセッサAが空いていない場合(ステップS129NO)、処理割当制御部134bは、高性能、低性能の各プロセッサの稼動状態を監視し(ステップS130)、いずれかのプロセッサが稼動状態からアイドル状態となった(プロセッサが空いた)場合(ステップS130YES)、当該アイドル状態となったプロセッサに対して当該頁の処理を割り当てる(ステップS131)。
On the other hand, when the high-performance processor A is not free (NO in step S129), the process
上記の如く、高性能、低性能のいずれかのプロセッサに対して1頁目の処理を割当てた後、処理割当制御部134bは、次の頁があるか否かを判定し(ステップS132)、次頁があると判定された場合(ステップS132YES)は、ステップS122に戻り、以後、該ステップS122〜S131までの処理を、ステップS132において次頁がないと判定されるまで繰返し実行する。
As described above, after assigning the processing of the first page to either the high-performance or low-performance processor, the processing
この2頁目以降、最終頁までの各頁(i頁目:i=2,3,…,N)について繰返し実行する上記一連の処理中、ステップS122では、処理負荷予測部133が、印刷頁カウンタiの値を当該頁の値(=i)に更新し、ステップ123では1頁目でないと判定されて(ステップS123NO)ステップS125に進み、RAM107から処理負荷情報中の当該i頁目の整数演算負荷値(=PageiI)及び浮動小数点演算負荷値(=PageiF)を読出し、ステップS126では、該読み出したi頁目の整数演算負荷値(=PageiI)及び浮動小数点演算負荷値(=PageiF)と、上記ステップS121で読み出している整数演算係数(AI,CI)、及び浮動小数点演算係数(AF,CF)に基づき、それぞれ、上記(1)式、(3)式を用いて、
当該i頁目の高性能プロセッサの処理能力に対応した予測処理負荷値(LAi)=(PageiI×AI)+(PageiF×AF)、
及び、当該i頁目の低性能プロセッサの処理能力に対応した予測処理負荷値(LCi)=(PageiI×CI)+(PageiF×CF)
を算出する。
During the series of processes repeatedly executed for each page from the second page to the last page (i-th page: i = 2, 3,..., N), in step S122, the processing
Predictive processing load value (LAi) = (PageiI × AI) + (PageiF × AF) corresponding to the processing capability of the high-performance processor of the i-th page,
And the predicted processing load value (LCi) = (PageiI × CI) + (PageiF × CF) corresponding to the processing capability of the low-performance processor of the i-th page.
Is calculated.
次いで、ステップS127では、低性能プロセッサCにおける処理負荷値LCiと対応する処理能力の処理負荷閾値Cthを比較し、処理負荷値LCiが処理負荷閾値Cthよりも大きい場合(ステップS127YES)は、ステップS140において当該i頁目の処理を高性能プロセッサAへ割り当てる。 Next, in step S127, the processing load value LCi in the low-performance processor C is compared with the processing load threshold value Cth of the corresponding processing capability. If the processing load value LCi is greater than the processing load threshold value Cth (YES in step S127), step S140 is performed. The processing of the i-th page is assigned to the high-performance processor A.
また、処理負荷値LCiが処理負荷閾値Cthよりも小さい場合(ステップS127NO)は、低性能プロセッサCが空いている場合(ステップS128YES)には、該低性能プロセッサCに当該i頁目の処理を割り当てる(ステップS150)一方、低性能プロセッサCが空いていない場合(ステップS128NO)には、更に、高性能プロセッサAが空いているか否かを判定する(ステップS129)。 Further, when the processing load value LCi is smaller than the processing load threshold Cth (NO in step S127), if the low performance processor C is vacant (YES in step S128), the low performance processor C performs the process for the i-th page. On the other hand, if the low-performance processor C is not available (step S128 NO), it is further determined whether or not the high-performance processor A is available (step S129).
ここで、高性能プロセッサAが空いている場合(ステップS129YES)には、該高性能プロセッサAに当該i頁目の処理を割り当てる(ステップS160)が、高性能プロセッサAが空いていない場合(ステップS129NO)には、その後にいずれかのプロセッサが空いた(アイドル状態となった)場合(ステップS130YES)に、当該アイドル状態となったプロセッサに対して当該i頁目の処理を割り当てる(ステップS131)。 Here, if the high-performance processor A is free (YES in step S129), the processing of the i-th page is assigned to the high-performance processor A (step S160), but if the high-performance processor A is not free (step S160). In step S129, if any processor becomes free (becomes idle) after that (YES in step S130), the i-th page processing is assigned to the processor in the idle state (step S131). .
このようにして、クライアント端末30から印刷指示(印刷ジョブ)を受け付けた際に、印刷受付時状態監視部135により、それまではアイドル状態であったと判定された場合(ステップS124YES)は、1頁目の処理を高性能プロセッサに優先的に割り当てる一方で、2頁目から最終頁までの各頁〔印刷指示を受け付けた際にそれまではアイドル状態でなかったと判定された場合(ステップS124NO)は、1頁目から最終頁までの各頁〕について、その予測処理負荷値に基づき、該予測処理負荷値に対応可能な処理能力を有するプロセッサにそれぞれ割当てていき、ステップS132において次頁がないと判定された場合(ステップS132NO)、一連のプロセッサ割当処理を終了する。
In this way, when a print instruction (print job) is received from the
図16は、図15のステップS140における高性能プロセッサ割当処理を示すフローチャートである。 FIG. 16 is a flowchart showing the high-performance processor allocation process in step S140 of FIG.
この処理は、図15のステップS127において、処理対象のi頁目について、低性能プロセッサCにおける処理負荷値LCiが処理負荷閾値Cthよりも大きいと判定される(ステップS127YES)により開始される。 This process is started in step S127 of FIG. 15 when it is determined that the processing load value LCi in the low performance processor C is larger than the processing load threshold Cth for the i-th page to be processed (step S127 YES).
この高性能プロセッサAの割り当ての処理が開始されると、処理割当制御部134bは、まず、高性能プロセッサAが空いているかどうかを調べ(ステップS141)、該高性能プロセッサAが空いていれば(ステップS141YES)、該高性能プロセッサAに対して当該i頁目の処理を割り当て(ステップS145)、その後、図15のステップS132へ移行する。
When the allocation process of the high-performance processor A is started, the process
これに対して、高性能プロセッサAが空いていない場合(ステップS141NO)、次いで、低性能プロセッサCが空いているかどうかを調べ(ステップS142)、該低性能プロセッサCが空いていれば(ステップS142YES)、高性能プロセッサAに代えて、該低性能プロセッサCに対して当該i頁目の処理を割り当て(ステップS146)、その後、図15のステップS132へ移行する。 On the other hand, if the high-performance processor A is not free (NO in step S141), it is then checked whether the low-performance processor C is free (step S142). If the low-performance processor C is free (step S142 YES) However, instead of the high-performance processor A, the processing of the i-th page is assigned to the low-performance processor C (step S146), and then the process proceeds to step S132 in FIG.
また、上記ステップS142において、低性能プロセッサCが空いていない場合(ステップS142NO)、処理割当制御部134bは、高性能、低性能の各プロセッサの稼動状態を監視し(ステップS143)、いずれかのプロセッサが稼動状態からアイドル状態となった(プロセッサが空いた)場合(ステップS143YES)、当該アイドル状態となったプロセッサに対して当該i頁目の処理を割り当て(ステップS144)、該割り当て後、図15のステップS132へ移行する。
If the low-performance processor C is not available in step S142 (step S142 NO), the process
なお、図15及び図16に示した各性能のプロセッサに対する処理割り当てに際し、処理の割り当てが行われなかったプロセッサに対してはクロックを停止する等の省電力モードに移行させるように制御し、消費電力の低減を図るようにしても良い。 When processing is assigned to the processors having the respective performances shown in FIG. 15 and FIG. 16, control is performed so that the processor to which processing is not assigned is shifted to a power saving mode such as stopping the clock. Electric power may be reduced.
本実施例では、アイドル状態において、1頁目は最も高性能なプロセッサによって処理することにより早く印字結果を出力し、ユーザが早く結果の確認を行うことができる。 In this embodiment, in the idle state, the first page is processed by the most powerful processor so that the print result can be output quickly, and the user can confirm the result quickly.
2頁目以降については、処理負荷の重い(大きい)頁には高性能なプロセッサを割り当て処理のスループットを向上させる一方、処理負荷の軽い(小さい)頁には低性能なプロセッサを割り当てて消費電力を抑え、かつ、半導体デバイスの発熱を抑えるようにする。 For the second and subsequent pages, high-performance processors are allocated to pages with heavy (large) processing loads to improve processing throughput, while low-performance processors are allocated to pages with light (small) processing loads. And to suppress the heat generation of the semiconductor device.
これにより、画像処理能力が異なる複数のプロセッサを集積化し、半導体デバイスとして実装する画像処理装置において、アイドル状態において、1頁目のアウトプットを高速化し、全体の処理の高速化を図ることができとともに、消費電力を低減し半導体デバイスの発熱を抑えた運用が行なえる。 As a result, in an image processing apparatus in which a plurality of processors having different image processing capabilities are integrated and mounted as a semiconductor device, the output of the first page can be speeded up in the idle state, and the overall processing speed can be increased. At the same time, it can be operated with reduced power consumption and reduced heat generation of semiconductor devices.
この他、本発明は、上記し、且つ図面に示す実施例に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。 In addition, the present invention is not limited to the embodiment described above and shown in the drawings, and can be implemented by being appropriately modified within a range not changing the gist thereof.
例えば、上記実施例では、画像情報の処理能力が異なる複数のプロセッサを用いて画像処理を行う画像処理装置に適用し、印刷対象の各頁をその処理負荷に対応可能な処理能力を有するプロセッサに割当てて分散処理する例を挙げたが、これに限らず、情報の処理能力が異なる複数のプロセッサ有し、情報の処理命令に含まれる各処理単位の情報をその処理負荷に対応可能な処理能力を有するプロセッサに割当てて分散処理する各種の情報処理装置に適用可能である。 For example, in the above-described embodiment, the present invention is applied to an image processing apparatus that performs image processing using a plurality of processors having different image information processing capabilities, and a processor having a processing capability capable of handling each page to be printed corresponds to its processing load. An example of allocating and performing distributed processing has been given. However, the present invention is not limited to this, and there are a plurality of processors having different information processing capabilities, and the processing capability capable of handling the information of each processing unit included in the information processing instruction according to the processing load. The present invention can be applied to various information processing apparatuses that perform distributed processing by assigning to processors having
本発明は、複数のプロセッサを用いて情報を処理する各種の情報処理装置、及び、複数のプロセッサを用いて画像処理するプリンタや複合機等の画像処理装置に適用できる。 The present invention can be applied to various information processing apparatuses that process information using a plurality of processors, and image processing apparatuses such as printers and multifunction peripherals that perform image processing using a plurality of processors.
10,10B…画像処理装置、101,101b…制御部、131,131b…演算係数管理部、1311,1311b…演算係数管理テーブル、132,132b…処理負荷閾値管理部、1321,1321b…処理負荷閾値管理テーブル、133…処理負荷予測部、134,134b…処理割当制御部、135…印刷受付時状態監視部、102,102b…画像処理部、111…高性能プロセッサ、112…中性能プロセッサ、113,114,115,116…低性能プロセッサ、103…外部バスインタフェース(I/F)部、104…ネットワークインタフェース(I/F)部、105…プリンタエンジンインタフェース(I/F)部、106…ROM(Read Only Memory)、107…RAM(Random Access Memory)、108…入力/出力(I/O)デバイス、121…内部バス、122…外部バス、20…画像出力装置、30…クライアント端末(PC:パーソナル・コンピュータ)、301…処理負荷情報、31…入力/操作部、32…表示部、33…記憶部、34…制御部、341…アプリケーション部、342…プリンタドライバ、35…通信インタフェース(I/F)部、50…ネットワーク(NW)
DESCRIPTION OF
Claims (7)
前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、
前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、
情報の処理命令に含まれる各処理単位の情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記処理単位の情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、
前記処理単位の情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該処理単位の情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該処理単位の情報の処理を割当てる処理割当手段と
を具備する情報処理装置。 Multiple processors with different information processing capabilities;
Arithmetic coefficient management means for managing arithmetic coefficients corresponding to the processing capacity according to the processing capacity of the processor;
Threshold management means for managing each processing load threshold corresponding to the processing capacity according to the processing capacity of the processor;
Based on the processing load information indicating the processing load value of the information of each processing unit included in the processing instruction of information, and the calculation coefficient for each processing capability managed by the calculation coefficient management means, for each information of the processing unit A calculation means for calculating a predicted processing load value for each processing capacity;
For each piece of processing unit information, it is determined for each processing capability of the processor whether or not the predicted processing load value calculated by the calculating means is greater than or equal to the processing load threshold managed by the threshold management means, and the predicted processing load value is If it is determined that the processing load threshold value is greater than or equal to the processing load threshold value, processing of information of the processing unit is assigned to a processor having a processing capability exceeding the processing capability, and the predicted processing load value is determined to be less than the processing load threshold value An information processing apparatus comprising: a processing allocation unit that allocates the processing of the information of the processing unit to a processor having the processing capability when the processing is performed.
前記プロセッサの処理能力別に該処理能力に対応する演算係数をそれぞれ管理する演算係数管理手段と、
前記プロセッサの処理能力別に該処理能力に対応する処理負荷閾値をそれぞれ管理する閾値管理手段と、
画像情報の印刷命令に含まれる各頁の画像情報の処理負荷値を示す処理負荷情報と、前記演算係数管理手段が管理する前記処理能力別の演算係数とに基づき、前記各頁の画像情報毎に前記処理能力別の予測処理負荷値を算出する算出手段と、
前記各頁の画像情報毎に、前記算出手段により算出された予測処理負荷値が前記閾値管理手段が管理する処理負荷閾値以上か否かを前記プロセッサの処理能力別に判定し、前記予測処理負荷値が前記処理負荷閾値以上であると判定された場合には該処理能力を超える処理能力を有するプロセッサに当該頁の画像情報の処理を割当て、前記予測処理負荷値が前記処理負荷閾値未満であると判定された場合には該処理能力を有するプロセッサに当該頁の画像情報の処理を割当てる処理割当手段と
を具備する画像処理装置。 A plurality of processors having different image information processing capabilities;
Arithmetic coefficient management means for managing arithmetic coefficients corresponding to the processing capacity according to the processing capacity of the processor;
Threshold management means for managing each processing load threshold corresponding to the processing capacity according to the processing capacity of the processor;
Based on the processing load information indicating the processing load value of the image information of each page included in the print command of the image information and the calculation coefficient for each processing capability managed by the calculation coefficient management unit, the image information for each page Calculating means for calculating a predicted processing load value for each processing capacity;
For each image information of each page, it is determined for each processing capability of the processor whether the predicted processing load value calculated by the calculating unit is equal to or greater than the processing load threshold managed by the threshold management unit, and the predicted processing load value Is determined to be equal to or greater than the processing load threshold, the processing of the image information of the page is assigned to a processor having a processing capability exceeding the processing capability, and the predicted processing load value is less than the processing load threshold. An image processing apparatus comprising: a processing allocation unit that allocates the processing of the image information of the page to a processor having the processing capability when determined.
前記演算係数管理手段は、
整数演算処理に係わる整数演算係数と、浮動小数点演算処理に係わる浮動小数点演算係数とで成る前記演算係数を管理し、
前記算出手段は、
前記各頁の画像情報毎に、前記整数演算処理負荷値に前記整数演算係数を乗じた値に、前記浮動小数点演算処理負荷値に前記浮動小数点演算係数を乗じた値を加算した予測処理負荷値を算出する
請求項2記載の画像処理装置。 The processing load information includes an integer arithmetic processing load value related to integer arithmetic processing and a floating point arithmetic processing load value related to floating point arithmetic processing,
The calculation coefficient management means includes:
Managing the arithmetic coefficient consisting of integer arithmetic coefficients related to integer arithmetic processing and floating point arithmetic coefficients related to floating point arithmetic processing;
The calculating means includes
A predicted processing load value obtained by adding a value obtained by multiplying the integer arithmetic processing load value by the integer arithmetic coefficient and a value obtained by multiplying the floating point arithmetic processing load value by the floating point arithmetic coefficient for each image information of each page. The image processing apparatus according to claim 2.
前記処理の割当先のプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段高い処理能力を有するプロセッサに当該処理を代替割当する
請求項2または3記載の画像処理装置。 The process assigning means includes
The image processing apparatus according to claim 2 or 3, wherein when a processor to which the process is assigned cannot accept a process, the process is alternately assigned to a processor having a higher processing capability until a processor that can accept the process exists. .
前記処理の割当先である最も処理能力が高いプロセッサが処理受付不能の場合、処理受付可能なプロセッサが存在するまで、順次、一段低い処理能力を有するプロセッサに当該処理を代替割当する
請求項2または3記載の画像処理装置。 The process assigning means includes
3. If a processor having the highest processing capacity, which is the allocation destination of the process, cannot accept a process, the process is alternatively assigned to a processor having a lower processing capacity one by one until there is a processor that can accept the process. 3. The image processing apparatus according to 3.
前記処理の割当先及び代替割当先の全てのプロセッサが処理受付不能の場合、当該各プロセッサの稼動状態を監視し、稼動状態からアイドル状態になったプロセッサに当該処理を代替割当する
請求項2乃至5のいずれか記載の画像処理装置。 The process assigning means includes
3. When all the processors of the allocation destination and the alternative allocation destination of the process cannot accept the process, the operating state of each processor is monitored, and the process is substituted and allocated to the processor that has changed from the operating state to the idle state. The image processing apparatus according to any one of 5.
を具備し、
前記処理割当手段は、
前記判別手段により、前記印刷命令を受けた際にアイドル状態にあったと判別された場合、印刷命令された前記画像情報の1頁目の処理を最も高い処理能力を有するプロセッサに割当てる
請求項2乃至6のいずれか記載の画像処理装置。 A determination means for determining whether or not the engine is in an idle state when receiving the print command;
The process assigning means includes
3. If the determination unit determines that the print command is in an idle state when receiving the print command, the processing of the first page of the image information for which the print command has been issued is assigned to a processor having the highest processing capability. 7. The image processing device according to any one of 6.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008071790A JP2009230220A (en) | 2008-03-19 | 2008-03-19 | Information processor and image processor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008071790A JP2009230220A (en) | 2008-03-19 | 2008-03-19 | Information processor and image processor |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2009230220A true JP2009230220A (en) | 2009-10-08 |
Family
ID=41245582
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008071790A Pending JP2009230220A (en) | 2008-03-19 | 2008-03-19 | Information processor and image processor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2009230220A (en) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102693106A (en) * | 2011-03-25 | 2012-09-26 | 柯尼卡美能达商用科技株式会社 | Image processing system and image processing control apparatus |
| JP2012216058A (en) * | 2011-03-31 | 2012-11-08 | Fujitsu Ltd | Assignment method, assignment device, and assignment program |
| JP2012256308A (en) * | 2011-06-08 | 2012-12-27 | Shijin Kogyo Sakushinkai | Heterogeneous computer system operation method |
| JP2013008085A (en) * | 2011-06-22 | 2013-01-10 | Fujitsu Ltd | Computer system and operation method of computer system |
| JP2016091137A (en) * | 2014-10-31 | 2016-05-23 | コニカミノルタ株式会社 | Image forming apparatus, specific processing execution method, and computer program |
| JPWO2014188561A1 (en) * | 2013-05-23 | 2017-02-23 | ルネサスエレクトロニクス株式会社 | Multi-CPU system and scaling method for multi-CPU system |
| JP2017050767A (en) * | 2015-09-03 | 2017-03-09 | コニカミノルタ株式会社 | Image forming apparatus, task control method and task control program in the same |
| JP2017049663A (en) * | 2015-08-31 | 2017-03-09 | コニカミノルタ株式会社 | Image forming apparatus, task control method and task control program in the same |
-
2008
- 2008-03-19 JP JP2008071790A patent/JP2009230220A/en active Pending
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102693106B (en) * | 2011-03-25 | 2015-04-01 | 柯尼卡美能达商用科技株式会社 | Image processing system and image processing control apparatus |
| JP2012203717A (en) * | 2011-03-25 | 2012-10-22 | Konica Minolta Business Technologies Inc | Image processing system and image processing control device |
| CN102693106A (en) * | 2011-03-25 | 2012-09-26 | 柯尼卡美能达商用科技株式会社 | Image processing system and image processing control apparatus |
| JP2012216058A (en) * | 2011-03-31 | 2012-11-08 | Fujitsu Ltd | Assignment method, assignment device, and assignment program |
| US9098287B2 (en) | 2011-06-08 | 2015-08-04 | Institute For Information Industry | Super operating system for a heterogeneous computer system |
| JP2012256308A (en) * | 2011-06-08 | 2012-12-27 | Shijin Kogyo Sakushinkai | Heterogeneous computer system operation method |
| US9383811B2 (en) | 2011-06-08 | 2016-07-05 | Institute For Information Industry | Processor bridging in heterogeneous computer system |
| JP2013008085A (en) * | 2011-06-22 | 2013-01-10 | Fujitsu Ltd | Computer system and operation method of computer system |
| JPWO2014188561A1 (en) * | 2013-05-23 | 2017-02-23 | ルネサスエレクトロニクス株式会社 | Multi-CPU system and scaling method for multi-CPU system |
| JP2016091137A (en) * | 2014-10-31 | 2016-05-23 | コニカミノルタ株式会社 | Image forming apparatus, specific processing execution method, and computer program |
| US9781295B2 (en) | 2014-10-31 | 2017-10-03 | Konica Minolta, Inc. | Image processing apparatus, a method for performing specific process on an image processing apparatus, and a computer-readable storage medium for a program to be executed by an image processing apparatus |
| JP2017049663A (en) * | 2015-08-31 | 2017-03-09 | コニカミノルタ株式会社 | Image forming apparatus, task control method and task control program in the same |
| JP2017050767A (en) * | 2015-09-03 | 2017-03-09 | コニカミノルタ株式会社 | Image forming apparatus, task control method and task control program in the same |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2009230220A (en) | Information processor and image processor | |
| US8446605B2 (en) | Division of rendering block in image forming apparatus | |
| JP5594470B2 (en) | Printing control apparatus, printing system, and program | |
| JP5482528B2 (en) | Printed document conversion apparatus and program | |
| JP2012079124A (en) | Job distribution processing system, information processor, and program | |
| US20110273737A1 (en) | Information processing apparatus, image forming apparatus management method, and program | |
| US20110304878A1 (en) | Image processing apparatus and distributed printing system | |
| JP5482529B2 (en) | Printed document conversion apparatus and program | |
| CN100378619C (en) | Information processing apparatus and control method thereof | |
| CN103150130B (en) | print data processing system | |
| US20170060644A1 (en) | Image processing apparatus, control task allocation method, and recording medium | |
| JP2010244359A (en) | Printing device and method for parallel processing of data | |
| JP6524928B2 (en) | Image processing apparatus, memory control program and memory control method | |
| JP6465384B2 (en) | Image forming apparatus, parallel processing control program, and parallel processing control method | |
| JP5380373B2 (en) | Image forming system, image forming apparatus, and power saving printing method | |
| JP6372315B2 (en) | Image processing apparatus, parallel processing control program, and parallel processing control method | |
| JP2018039142A (en) | Printing system, printing control method, and printing control program | |
| JP2019057207A (en) | Print controller, image forming system, and image forming apparatus | |
| JP5750018B2 (en) | Image processing system, printing system, control device, image processing method and program | |
| JP5589582B2 (en) | Image processing apparatus and program | |
| JP2012008838A (en) | Print document conversion device and program | |
| US20200089454A1 (en) | Printing system, printing method and computer-readable recording medium | |
| JP2013052568A (en) | Image forming apparatus, control method and control program | |
| JP2016177481A (en) | Image processing device, image forming apparatus, and program | |
| JP5777670B2 (en) | Image forming system and power saving printing method |