JP6136020B2 - 画像形成装置及び並列処理の制御方法並びに制御プログラム - Google Patents

画像形成装置及び並列処理の制御方法並びに制御プログラム Download PDF

Info

Publication number
JP6136020B2
JP6136020B2 JP2014190076A JP2014190076A JP6136020B2 JP 6136020 B2 JP6136020 B2 JP 6136020B2 JP 2014190076 A JP2014190076 A JP 2014190076A JP 2014190076 A JP2014190076 A JP 2014190076A JP 6136020 B2 JP6136020 B2 JP 6136020B2
Authority
JP
Japan
Prior art keywords
processing
core
cores
image forming
control method
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
Application number
JP2014190076A
Other languages
English (en)
Other versions
JP2016063407A (ja
Inventor
友紀郎 渡辺
友紀郎 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2014190076A priority Critical patent/JP6136020B2/ja
Priority to CN201510581615.2A priority patent/CN105450891B/zh
Priority to US14/857,011 priority patent/US9398189B2/en
Publication of JP2016063407A publication Critical patent/JP2016063407A/ja
Application granted granted Critical
Publication of JP6136020B2 publication Critical patent/JP6136020B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32571Details of system components
    • H04N1/32587Controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00681Detecting the presence, position or size of a sheet or correcting its position before scanning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32598Bus based systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0093Facsimile machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Facsimiles In General (AREA)
  • Record Information Processing For Printing (AREA)
  • General Engineering & Computer Science (AREA)

Description

本発明は、画像形成装置及び並列処理の制御方法並びに制御プログラムに関し、特に、複数のコアで構成されるCPU(Central Processing Unit)を備える画像形成装置及び当該画像形成装置における並列処理の制御方法並びに制御プログラムに関する。
昨今、MFP(Multi Function Peripheral)などの画像形成装置に搭載されるCPUとして、コア数が1つではなく、複数のコア(マルチコア、メニーコアと呼ばれる。)が採用されてきている。複数のコアを用いて処理を実行する方法として、複数のコアを機能毎に使い分ける第1の方法と、負荷に応じて複数のコアに処理を分散させる第2の方法とがある。
複数のコアを使い分ける方法に関して、例えば、下記特許文献1には、操作に関する指示の入力を受け付けると共に各種表示を行う操作表示部と、画像情報の処理を行う画像処理部と、同種複数のコアを備えたプロセッサと、を備える情報処理装置であって、リアルタイム性を必要としない前記操作部に関連するプロセスについての制御を前記プロセッサの一方のコアで担当するよう固定し、前記プロセスと動作上連携が必要な前記画像処理部に関連するプロセスについての制御を前記プロセッサの他方のコアで担当するよう固定する技術が開示されている。
特開2010−226283号公報
上記第1の方法では、各々のコアが専用の機能の処理を実行するため、画像形成装置の動作状態によってはほとんど何も処理していないコアが生じ、複数のコアを有効に利用することができず、処理の高速化を図ることができない。一方、第2の方法では、機能に応じてコアを限定しないため、複数のコアを有効に利用することが可能であるが、各々のコアに様々な処理を実行させるため、処理の最適化が困難である。
ここで、CPUが実行する処理には、高速性が要求される処理(すなわち、センサなどの他のデバイスとの通信を行わずに実行可能な処理)と、リアルタイム性が要求される処理(すなわち、センサなどの他のデバイスとの通信を行いながら実行する処理)とがある。これらの処理が混在する場合において、高速性が要求される処理を優先した最適化を行う場合、タスクスイッチング等の処理の切り替えを行うことなく、ひたすら決められた処理を実行させることになるが、この方法では、タスクスイッチングができない状況に陥り、複合動作ができなくなる。一方、リアルタイム性が要求される処理を優先した最適化を行う場合、タスクスイッチングを行いながら処理を実行することになるが、この方法では、タスクスイッチングがOS(Operating System)のスケジューリングによって制御されるため、一連の処理が所々で停止する様な動作になってしまう。
すなわち、高速性が要求される処理とリアルタイム性が要求される処理とが混在する場合において、高速性が要求される処理を優先すると処理のリアルタイム性を確保することができなくなり、リアルタイム性が要求される処理を優先すると処理の高速性を確保することができなくなり、複数の処理の高速性とリアルタイム性を両立させることができないという問題があった。
また、特許文献1では、リアルタイム性を必要としない(高速性が要求される)プロセスについての制御を一方のコアに割り当て、動作上連携が必要な(リアルタイム性が要求される)プロセスについての制御を他方のコアに割り当てている。しかしながら、この技術では、他方のコアに、動作上連携が必要なプロセスについての制御のみを実行させており、他方のコアを十分に動作させていないため、リアルタイム性を必要としないプロセスについての制御を高速に実行することができない。
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、複数のコアを用いて並列処理を行う場合において、処理の高速性とリアルタイム性とを両立させることができる画像形成装置及び並列処理の制御方法並びに制御プログラムを提供することにある。
本発明の一側面は、複数のコアで構成されるCPUを含むプロセッサを備え、前記CPUによって処理が実行される画像形成装置であって、前記複数のコアを管理するCPUコア管理部は、前記複数のコアの内の少なくとも1つの所定のコアを、前記CPU上で動作するOSのタスクスイッチングによる処理の切り替えを行いながら動作する第1の制御方法で動作させ、前記所定のコア以外の1又は複数の他のコアを、前記タスクスイッチングによる処理の切り替えが前記第1の制御方法よりも少ない第2の制御方法で動作させ、前記プロセッサ外部のデバイスとの通信が必要な第1の処理と前記プロセッサ外部のデバイスとの通信が不要な第2の処理とを並列処理する場合に、前記第1の処理は、前記所定のコアに実行させ、前記第2の処理は、前記所定のコア及び前記他のコアに分散して実行させ、各コアで分散処理する負荷が、前記他のコアより前記所定のコアの方が小さくなる様に分散することを特徴とする。
本発明の一側面は、複数のコアで構成されるCPUを含むプロセッサを備え、前記CPUによって処理が実行される画像形成装置における並列処理の制御方法であって、前記複数のコアの内の少なくとも1つの所定のコアを、前記CPU上で動作するOSのタスクスイッチングによる処理の切り替えを行いながら動作する第1の制御方法で動作させ、前記所定のコア以外の1又は複数の他のコアを、前記タスクスイッチングによる処理の切り替えが前記第1の制御方法よりも少ない第2の制御方法で動作させ、前記プロセッサ外部のデバイスとの通信が必要な第1の処理と前記プロセッサ外部のデバイスとの通信が不要な第2の処理とを並列処理する場合に、前記第1の処理を、前記所定のコアに実行させる第1ステップと、前記第2の処理を、前記所定のコア及び前記他のコアに分散して実行させ、各コアで分散処理する負荷が、前記他のコアより前記所定のコアの方が小さくなる様に分散する第2ステップと、を実行することを特徴とする。
本発明の一側面は、複数のコアで構成されるCPUを含むプロセッサを備える装置における、いずれかのコアで動作する並列処理制御プログラムであって、前記複数のコアの内の少なくとも1つの所定のコアを、前記CPU上で動作するOSのタスクスイッチングによる処理の切り替えを行いながら動作する第1の制御方法で動作させ、前記所定のコア以外の1又は複数の他のコアを、前記タスクスイッチングによる処理の切り替えが前記第1の制御方法よりも少ない第2の制御方法で動作させ、前記プロセッサ外部のデバイスとの通信が必要な第1の処理と前記プロセッサ外部のデバイスとの通信が不要な第2の処理とを並列処理する場合に、前記装置に、前記第1の処理を、前記所定のコアに実行させる第1ステップ、前記第2の処理を、前記所定のコア及び前記他のコアに分散して実行させ、各コアで分散処理する負荷が、前記他のコアより前記所定のコアの方が小さくなる様に分散する第2ステップ、を実行させることを特徴とする。
本発明の画像形成装置及び並列処理の制御方法並びに制御プログラムによれば、複数のコアを用いて並列処理を行う場合において、処理の高速性とリアルタイム性とを両立させることができる。
その理由は、複数のコアで構成されるCPUを含むプロセッサを備える画像形成装置では、プロセッサ外部のデバイスとの通信が必要な第1の処理とプロセッサ外部のデバイスとの通信が不要な第2の処理とを並列処理する場合に、複数のコアの内の少なくとも1つの所定のコアを、処理の切り替えを相対的に多くする制御方法で動作させ、所定のコアを除く1又は複数の他のコアを、処理の切り替えを相対的に少なくする制御方法で動作させ、所定のコアには、第1の処理と第2の処理とを実行させ、他のコアには、第2の処理を実行させる制御を行うからである。すなわち、第1の処理は所定のコアに実行させ、第2の処理は所定のコアと他のコアに分散して実行させる制御を行うからである。
このように、プロセッサ外部のデバイスとの通信が不要な(すなわち、高速性が要求される)第2の処理を、プロセッサ外部のデバイスとの通信が必要な(すなわち、リアルタイム性が要求される)第1の処理を実行する所定のコアにも分散して処理させることにより、第1の処理と第2の処理とを単に別々のコアに割り当てる方法に比べて、第2の処理の高速性を確保することができる。
本発明の一実施例に係る画像形成装置の構成を示すブロック図である。 本発明の一実施例に係る画像形成装置(CPUコア管理部)の動作を示すフローチャート図である。 本発明の一実施例に係る画像形成装置における並列処理の制御方法(高速性を優先する場合の制御方法)を説明する図である。 本発明の一実施例に係る画像形成装置における並列処理の制御方法(リアルタイム性を優先する場合の制御方法)を説明する図である。 本発明の一実施例に係る画像形成装置における並列処理の制御方法の具体例を説明する図である。 複数のコアに処理を割り当てる(ページ単位のデータを割り当てる)方法を説明する図である。 複数のコアに処理を割り当てる(バンド単位のデータを割り当てる)方法を説明する図である。 複数のコアで並列処理を行う場合の処理時間を説明する図である。
背景技術で示したように、複数のコアを用いて処理を実行する方法として、複数のコアを機能毎に使い分ける第1の方法と、負荷に応じて複数のコアに処理を分散させる第2の方法とがある。
第1の方法では、複数のコアを有効に利用することができないため、処理の高速化を図ることができない。一方、第2の方法では、複数のコアを有効に利用することができるが、処理を最適化することが難しい。また、高速性が要求される処理とリアルタイム性が要求される処理とが混在する場合において、高速性が要求される処理を優先して最適化すると、タスクスイッチングができない状況に陥り複合動作ができなくなる。一方、リアルタイム性が要求される処理を優先して最適化すると、タスクスイッチングにより一連の処理が所々で停止する動作になってしまう。
また、特許文献1では、高速性が要求される処理とリアルタイム性が要求される処理とを別々のコアに割り当てているが、この方法では、リアルタイム性が要求される処理が割り当てられたコアを十分に動作させていないため、高速性が要求される処理を効率的に実行することができない。
特に、MFPなどの画像形成装置では、FAX処理やスキャン処理、画像形成処理などの、プロセッサ外部のデバイス(各種センサやモデムなど)との通信が必要な処理(すなわち、リアルタイム性が要求される処理、リアルタイム系処理などとも呼ばれる。)と、PLD(Page Description Language)データを画像データに変換する処理(PDL処理と呼ぶ。)などの、プロセッサ外部のデバイスとの通信が不要な処理(すなわち、高速性が要求される処理、非リアルタイム系処理などとも呼ばれる。)と、が混在しているため、これらの処理を効率的に実行できるようにする方法の提案が求められている。
そこで、本発明の一実施の形態では、複数のコアを使用して、プロセッサ外部のデバイスとの通信が必要な第1の処理とプロセッサ外部のデバイスとの通信が不要な第2の処理とを並行処理する際に、少なくとも1つの所定のコアを、タスクスイッチングを行いながら処理を実行する第1の制御方法で動作させ、所定のコアを除く1又は複数の他のコアを、タスクスイッチングを抑えて処理を実行する第2の制御方法で動作させ、第1の処理は所定のコアに実行させ、第2の処理は所定のコアと他のコアに分散して実行させる(すなわち、所定のコアに第1の処理のみならず第2の処理をも実行させる)。
また、所定のコアに第2の処理を実行させる場合、当該コアに分散する第2の処理のデータ量が大きくなると処理が遅延し、第2の処理の高速性を確保することができなくなることから、所定のコアには、データ量が小さい処理(例えば、PDL処理における、ページ単位のデータやページを分割したバンド単位のデータ、ページ単位又はバンド単位のデータの内のデータ量が小さいデータ)を分担させるようにする。
このように、タスクスイッチングを行いながらリアルタイム性が要求される処理を実行するコアに、高速性が要求される処理をも分散して実行させることにより、処理の高速性とリアルタイム性とを両立させることができる。
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る画像形成装置及び並列処理の制御方法並びに制御プログラムについて、図1乃至図8を参照して説明する。図1は、本実施例の画像形成装置の構成を示すブロック図であり、図2は、本実施例の画像形成装置の動作を示すフローチャート図である。また、図3乃至図5は、並列処理の制御方法を説明する図であり、図6及び図7は、複数のコアに処理を割り当てる方法を説明する図、図8は、複数のコアで並列処理を行う場合の処理時間を説明する図である。
本実施例の画像形成装置10は、MFPなどの複合機やプリンタなどであり、図1(a)に示すように、CPU11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、入出力バッファ14と、HDD(Hard Disk Drive)15と、ネットワークI/F部16と、スキャナ部17と、FAX制御部18と、画像変換部19と、画像形成部20と、操作表示部21と、CPUコア管理部22などで構成される。
CPU11とROM12及びRAM13などのメモリとでプロセッサが構成される。CPU11は、プログラムに従って演算するデータ処理装置であり、図1(b)に示すように、複数のコア(ここでは1〜NのN個のコア)で構成される。ROM12は、画像形成装置10全体の動作を制御するためのプログラム(後述する並列処理制御プログラムを含む。)、フォントデータなどを記録する。RAM13は、CPU11による制御に必要なデータ及び制御動作時に一時記憶が必要なデータなどを記憶する。なお、複数のコアは、同種の(規模や構成、処理能力が同じ)コアとしてもよいし、規模や構成、処理能力が異なるコアとしてもよい。
入出力バッファ14は、入力されたデータや出力するデータを一時的に記憶しておくためのメモリであり、例えば、スキャナ部17から出力される画像データやFAX制御部18を用いて送受信するFAX画像データなどを記憶する。
HDD15は、外部のコンピュータ装置から取得した印刷データ(PJL(Printer Job Language)やPS(PostScript)、PCL(Printer Control Language)等のページ記述言語で記述されたPDLデータ、または、PDF(Portable Document Format)データ)、印刷データから生成した中間データ(ディスプレイリスト)、ディスプレイリストから生成した画像データなどを保存する。
ネットワークI/F部16は、電話回線に接続するためのモデムや、LAN(Local Area Network)などの構内通信網に接続するためのNIC(Network Interface Card)などであり、電話回線を介して接続されるFAX装置とのFAX通信や構内通信網を介して接続されるコンピュータ装置との通信を可能にする。
スキャナ部17は、原稿台上に載置された原稿から画像データを光学的に読み取る部分であり、原稿を走査する光源と、原稿で反射された光を電気信号に変換するCCD(Charge Coupled Devices)等のイメージセンサと、電気信号をA/D変換するA/D変換器等により構成され、原稿から読み取った画像データを入出力バッファ14又は画像変換部19に出力する。
FAX制御部18は、ネットワークI/F部16を制御し、ナンバーディスプレイ応答(例えば、着信拒否判定までの処理、情報受信端末起動信号に対する一次応答信号の出力までの処理など)や通常着信処理(例えば、FAX画像データの受信前までの処理、呼接続確立までの処理、呼出信号に対する一次応答信号の出力までの処理など)、FAX画像データの送受信処理などを実行し、受信したFAX画像データを入出力バッファ14又は画像変換部19又は画像形成部20に出力する。
画像変換部19は、スキャナ部17によって読み取られた原稿の画像データや必要に応じてFAX制御部18が受信したFAX画像データに対して、エッジ強調処理やスムージング処理、色変換処理等の画像処理を行う。また、画像変換部19は、PDLで記述された印刷データを取得した場合は、印刷データに含まれる各ページをラスタライズしてページ毎の画像データを生成し、生成した画像データに対して上記画像処理を行う。そして、画像処理後の画像データを画像形成部20に出力する。
画像形成部20は、画像変換部19で画像処理を行った画像データやFAX制御部18から取得したFAX画像データに基づき、用紙への印刷処理を行う。具体的には、電子写真方式の場合は、帯電装置により帯電された感光体ドラムに、露光装置から画像に応じた光を照射して静電潜像を形成し、現像装置で帯電したトナーを付着させて現像し、そのトナー像を転写ベルトに1次転写し、転写ベルトから用紙に2次転写し、更に定着装置で用紙上のトナー像を定着させる処理を行う。
操作表示部21は、LCD(Liquid Crystal Display)等の表示部上に格子状の透明電極からなるタッチセンサなどの操作部が配置されたタッチパネル、ハードキーなどで構成され、画像形成装置の操作画面を提示し、ユーザからの操作を受け付け、操作に応じた信号をプロセッサに出力する。
CPUコア管理部22は、実行する処理に応じてコアの割り当てを決定する。また、各コアの異常判断やタイミング制御などを行う。例えば、各々のコアを、タスクスイッチングを行いながらリアルタイムに処理を実行する制御方法(第1の制御方法)で動作させるか、タスクスイッチングを抑えて高速に処理を実行する制御方法(第2の制御方法)で動作させるかを決定する。そして、プロセッサ外部のデバイスとの通信が必要な処理(リアルタイム性が要求される処理であり、第1の処理と呼ぶ。)と、プロセッサ外部のデバイスとの通信が不要な処理(高速性が要求される処理であり、第2の処理と呼ぶ。)と、を並行処理する場合に、第1の制御方法で動作させるコアには、第1の処理を実行させると共に第2の処理をも実行させ、第2の制御方法で動作させるコアには、第2の処理を実行させる。なお、プロセッサ外部のデバイスとは、スキャナ部17やFAX制御部18、画像形成部20に設けられたセンサやモデムなどのデバイスであり、プロセッサ内部のRAM13(場合によっては入出力バッファ14やHDD15)などの記憶デバイスを除く概念である。
上記CPUコア管理部22の制御について具体的に説明する。スキャン動作では、イメージセンサは移動しながら原稿をスキャンして画像データを出力するため、スキャナ部17を制御するコアは、イメージセンサの移動に合わせて画像データを受信して入出力バッファ14に保存しないと、画像データの取りこぼしが発生する。すなわち、当該コアは、イメージセンサとの通信を行いながらスキャン処理を実行することになるため、スキャン処理は、プロセッサ外部のデバイスとの通信が必要な第1の処理となる。
また、FAX処理では、ネットワークI/F部16のモデムが検出した信号に基づいてFAX画像データの送受信を実行するため、FAX制御部18を制御するコアは、モデムの動作に合わせてFAX画像データを送受信して入出力バッファ14に保存しないと、FAX画像データの取りこぼしが発生する。すなわち、当該コアは、モデムとの通信を行いながらFAX処理を実行することになるため、FAX処理は、プロセッサ外部のデバイスとの通信が必要な第1の処理となる。
また、画像形成処理では、用紙を搬送経路上で移動させながら用紙上に画像を形成するため、画像形成部20を制御するコアは、用紙の搬送系を制御するセンサから出力される信号に基づいて特定される用紙の位置に合わせて露光装置や現像装置を動作させないと、画像データに基づく画像を適切に用紙に形成することができない。また、定着装置に配置された温度センサから出力される信号に基づいて特定される温度に応じて定着装置を動作させないと、用紙に形成した画像を適切に定着させることができない。すなわち、当該コアは、用紙位置を特定するセンサや定着装置の温度を計測するセンサとの通信を行いながら画像形成処理を実行することになるため、画像形成処理は、プロセッサ外部のデバイスとの通信が必要な第1の処理となる。
一方、画像処理やPDL処理などの画像変換処理は、画像変換部19の内部で実行するため、画像変換部19を制御するコアは、処理途中で生成されるデータ(例えば、PDLデータから生成される中間データなど)をRAM13に記憶したり、RAM13から取り出したりすることはあるものの、上述したセンサやモデムなどのプロセッサ外部のデバイスとの通信を行う必要はない。すなわち、当該コアは、センサやモデムとの通信を行うことなく画像変換処理を実行することになるため、画像変換処理は、プロセッサ外部のデバイスとの通信が不要な第2の処理となる。
そして、プロセッサ外部のデバイスとの通信が必要なスキャン処理やFAX処理、画像形成処理などの第1の処理と、プロセッサ外部のデバイスとの通信が不要なPDL処理などの第2の処理と、を並列処理する場合、第1の処理及び第2の処理を各々、別のコアに割り当てることも可能であるが、第1の処理を所定のコアに割り当て、第2の処理の残りのコアに割り当てただけでは、第1の処理を割り当てた所定のコアを十分に動作させることができない。すなわち、第1の処理は、プロセッサ外部のデバイスとの通信を行いながら実行する処理であり、通信待ちの状態では所定のコアはほとんど動作していないため、所定のコアの処理能力を十分に発揮させることができない。そこで、CPUコア管理部22は、所定のコアの処理能力を十分に発揮させるために、当該所定のコアに第1の処理のみならず第2の処理も実行させるように制御する。言い換えると、CPUコア管理部22は、当該所定のコアを含む複数のコアに第2の処理を分散して実行させるように制御する。
なお、上記CPUコア管理部22はハードウェアとして構成してもよいし、プロセッサをCPUコア管理部22として機能させる並列処理制御プログラムとして構成し、当該並列処理制御プログラムをCPU11のいずれかのコアに実行させてもよい。
以下、上記構成の画像形成装置10における並列処理の制御方法について、図2を参照して説明する。CPU11は、ROM12又はHDD15に記憶した並列処理制御プログラムをRAM13に展開して実行することにより、図2のフローチャート図に示す各ステップの処理を実行する。
まず、CPUコア管理部22は、CPU11からCPU11が実行する処理の内容を受信したら(S101のYes)、CPU11のいずれかのコアが、リアルタイム性が要求される処理(FAX処理などのプロセッサ外部のデバイスとの通信が必要な処理)の実行中であるかを判断する(S102)。
CPU11のいずれかのコアが、リアルタイム性が要求される処理を実行中の場合は、コアを占有せずにタスクスイッチングが頻繁に行えるように調整した制御方法で処理を実行する(S103)。一方、CPU11のいずれのコアも、リアルタイム性が要求される処理を実行中でない場合は、コアを占有して最速で実行できるように調整した制御方法で処理を実行する(S104)。
上記制御方法について具体的に説明する。
まず、コアの割り当て方法について説明する。本実施例の制御において、各コアは機能毎に割り当てない(コアを占有させない)方が処理の高速化を図ることができるが、高い頻度で動作する特定の機能に関しては、コアを占有させた方が処理のリアルタイム性を確保することができ、画像形成装置10の使い勝手を向上させることができる。そこで、本実施例では、高い頻度で動作する特定の機能に関しては、コアを占有させる(そのコアには第2の処理を分散させない)ようにする。
例えば、CPUコア管理部22や操作表示部21は、高い頻度で動作し迅速な応答が求められることから、同じコアを専用に割り当てる。また、画像形成部20も、高い頻度で動作するため、専用にコアを割り当てる。一方、FAX制御部18やスキャナ部17は、使用頻度はそれほど高くなく、動作中もCPU11の負荷は低いため、専用にコアを割り当てて占有させるのはコアの有効利用の観点から好ましくない。従って、FAX制御部18やスキャナ部17には専用にコアを割り当てず、画像変換部19とコアを兼用するようにする。
次に、コアの制御方法について説明する。例えば、リアルタイム性が要求される処理(ここではFAX処理)を実行しているコアに、高速性が要求される処理(ここではPDL処理)を実行させる場合を想定する。図3に示すように、タスクスイッチングを抑えてコアを動作させた場合、PDL処理は短時間で終了するが、PDL処理が終わるまでFAX処理を実行することができないため、FAX処理が滞ってしまう。この制御方法は高速化に特化した制御方法(第2の制御方法)であり、リアルタイム性が要求されるFAX制御を行っているコアには適用しないようにする。一方、図4に示すように、タスクスイッチングを頻繁に行ってコアを動作させた場合、適宜FAX処理に切り替えることができるため、リアルタイム性に影響なくFAX通信を行うことができる。この制御方法はタスクスイッチングなどOSのスケジューリングを考慮した制御方法(第1の制御方法)であり、リアルタイム性が要求されるFAX制御を行っているコアに適用するようにする。
具体例を挙げて説明すると、高速性が要求される処理のみを実行する場合は、高速化に特化した第2の制御方法を用いて、使用可能なコア(CPUコア管理部22や操作表示部21に割り当てたコア、及び、画像形成部20に割り当てたコアを除く全てのコア)に処理を分散させるが、FAX処理中においては、図5に示すように、第1の制御方法はN−1個のコアに適用し、FAX処理を実行しているコア(ここではコアK)については、第2の制御方法を適用する。すなわち、CPUコア管理部22や操作表示部21、画像形成部20等に割り当てた専用のコアを除いたコアの使い方として、FAX動作中にN−1個のスレッドではなく、N個のスレッドでPDL処理を実行する。これにより、N個のコア全てを有効に活用してPDL処理を短時間に完了させることができる。
ここで、N個のスレッドでPDL処理を実行する場合、各々のスレッドのPDL処理はN個のコアで同じにしてもよいが、N個のコアが同種のコアの場合は、FAX処理を実行しているコアは他のコアに比べて負荷が大きくなる。そこで、FAX処理を実行しているコアの負荷を軽減するために、当該コアに実行させるPDL処理のデータ量を少なくすることが好ましい。
例えば、図6に示すように、FAX処理を実行しているコア(図ではコア5)に割り当てるPDL処理2のプログラムが担うデータをページ単位のデータとしたり、その中のデータ量(図のハッチングで示した領域)が少ないページデータ(図のページ3のデータ)としたりする。また、図7に示すように、FAX処理を実行しているコア(同様にコア5)に割り当てるPDL処理2のプログラムが担うデータを、一時解析が終わった後、1ページをさらにバンドに区切った単位としたり、バンド単位において、データ量(図のハッチングで示した領域)が少ないバンドデータ(図のバンド3のデータ)としたりする。
これにより、リアルタイム性が要求される処理(プロセッサ外部のデバイスとの通信が必要な処理)を実行しているコアでは、他のコアに比べて、より短いか、若しくはあまり長くならない時間で処理を完了させることができ、処理のリアルタイム性と高速性を両立させることができる。
なお、高速性が要求される処理(プロセッサ外部のデバイスとの通信が不要な処理)を分散した場合、全てのコアの処理が完了しないと次の処理に移行することができないため、リアルタイム性が要求される処理を実行しているコアにデータ量が多い処理を割り当てると、全体の処理時間が長くなってしまう。例えば、図8(a)に示すように、リアルタイム性が要求される処理を実行しているコア(コアK)にデータ量が少ない処理を割り当てた場合、全体の処理時間が長くなることはないが、図8(b)に示すように、コアKにデータ量が多い処理を割り当てた場合、他のコアよりも処理に時間がかかり、全体の処理が長くなってしまう。
これを回避するためには、CPUコア管理部22は、リアルタイム性が要求される処理を実行しているコアの負荷を算出し、その負荷に応じて当該コアに割り当てる高速性が要求される処理のデータ量を調整することが好ましい。なお、リアルタイム性が要求される処理を実行する際、コアの負荷は変動する(デバイスとの通信待ちの状態ではコアはほとんど動作しない)ため、コアの負荷は、デバイスとの通信待ち以外の状態での処理時間や当該処理を実行するためのプログラムに記述されたコマンド数などに基づいて算出することが好ましい。
このように、リアルタイム性が要求される処理(プロセッサ外部のデバイスとの通信が必要な第1の処理)と高速性が要求される処理(プロセッサ外部のデバイスとの通信が不要な第2の処理)とを並行処理する際に、少なくとも1つの所定のコアを、タスクスイッチングを行いながら処理を実行する第1の制御方法で動作させ、所定のコアを除く1又は複数の他のコアを、タスクスイッチングを抑えて処理を実行する第2の制御方法で動作させ、所定のコアに第1の処理のみならず第2の処理をも実行させ、他のコアに第2の処理を実行させることにより、処理のリアルタイム性と高速性を両立させることができる。
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、その構成や制御は適宜変更可能である。
例えば、上記実施例では、プロセッサ外部のデバイスとの通信が必要な処理として、FAX処理とスキャン処理と画像形成処理を例示し、プロセッサ外部のデバイスとの通信が不要な処理としてPDL処理を例示したが、処理はこれらに限定されない。例えば、プロセッサ外部のデバイスとの通信が必要な処理としては、画像形成部20に合わせて動作させるパンチやステープルなどの後処理、プロセッサ外部のデバイスとの通信が不要な処理としては、エッジ強調処理やスムージング処理、色変換処理等の画像処理に対しても、本発明の制御を同様に適用することができる。
また、上記実施例では、1つのコアにプロセッサ外部のデバイスとの通信が必要な処理を実行させる場合を示したが、プロセッサ外部のデバイスとの通信が必要な処理を2以上のコアに実行させたり、プロセッサ外部のデバイスとの通信が必要な複数の処理を2以上のコアの各々に実行させたりすることもできる。
また、上記実施例では、CPUコア管理部22と操作表示部21の処理を実行するコアや画像形成部20の処理を実行するコアには、プロセッサ外部のデバイスとの通信が不要な処理を分散させない(コアを占有する)ようにしたが、これらのコアの負荷が小さい場合には、これらのコアにもプロセッサ外部のデバイスとの通信が不要な処理を分散させることも可能である。
また、上記実施例では、複数のコアを同種の(規模や構成、処理能力が同じ)コアとして説明したが、複数のコアの規模や構成、処理能力が異なっていてもよく、任意のコアに、プロセッサ外部のデバイスとの通信が必要な処理とプロセッサ外部のデバイスとの通信が不要な処理の双方を実行させることができる。
また、上記実施例では、画像形成装置10における並列処理の制御方法について記載したが、複数のコアで構成されるCPUを含むプロセッサを備え、当該CPUにより、プロセッサ外部のデバイスとの通信が必要な処理とプロセッサ外部のデバイスとの通信が不要な処理との並列処理が制御される任意の装置に対して、本発明を同様に適用することができる。
本発明は、複数のコアで構成されるCPUを含むプロセッサを備える画像形成装置、及び当該画像形成装置における並列処理の制御方法、並びに当該画像形成装置で動作する並列処理制御プログラム、並びに当該並列処理制御プログラムを記録した記録媒体に利用可能である。
10 画像形成装置
11 CPU
12 ROM
13 RAM
14 入出力バッファ
15 HDD
16 ネットワークI/F部
17 スキャナ部
18 FAX制御部
19 画像変換部
20 画像形成部
21 操作表示部
22 CPUコア管理部

Claims (12)

  1. 複数のコアで構成されるCPU(Central Processing Unit)を含むプロセッサを備え、前記CPUによって処理が実行される画像形成装置であって、
    前記複数のコアを管理するCPUコア管理部は、
    前記複数のコアの内の少なくとも1つの所定のコアを、前記CPU上で動作するOS(Operating System)のタスクスイッチングによる処理の切り替えを行いながら動作する第1の制御方法で動作させ、
    前記所定のコア以外の1又は複数の他のコアを、前記タスクスイッチングによる処理の切り替えが前記第1の制御方法よりも少ない第2の制御方法で動作させ、
    前記プロセッサ外部のデバイスとの通信が必要な第1の処理と前記プロセッサ外部のデバイスとの通信が不要な第2の処理とを並列処理する場合に、
    前記第1の処理は、前記所定のコアに実行させ、
    前記第2の処理は、前記所定のコア及び前記他のコアに分散して実行させ、各コアで分散処理する負荷が、前記他のコアより前記所定のコアの方が小さくなる様に分散する、
    ことを特徴とする画像形成装置。
  2. 前記第2の処理は、PDL(Page Description Language)で記述された各ページのデータをラスタライズして画像データを生成するPDL処理であり、
    前記CPUコア管理部は、
    前記所定のコア及び前記他のコアに、ページ単位のデータ又は各ページをバンドに分割したバンド単位のデータを処理させる、
    ことを特徴とする請求項1に記載の画像形成装置。
  3. 前記CPUコア管理部は、
    前記所定のコアには、前記他のコアよりもデータ量が少ない、前記ページ単位のデータ又は前記バンド単位のデータを処理させる、
    ことを特徴とする請求項2に記載の画像形成装置。
  4. 前記第1の処理は、公衆回線に接続するためのモデムと通信しながらFAX画像データの送受信を行うFAX処理、原稿をスキャンするセンサと通信しながら画像データを取得するスキャン処理、用紙位置を特定するセンサと通信しながら用紙上に画像を形成する画像形成処理の中から選択される1以上の処理である、
    ことを特徴とする請求項1乃至3のいずれか一に記載の画像形成装置。
  5. 複数のコアで構成されるCPU(Central Processing Unit)を含むプロセッサを備え、前記CPUによって処理が実行される画像形成装置における並列処理の制御方法であって、
    前記複数のコアの内の少なくとも1つの所定のコアを、前記CPU上で動作するOS(Operating System)のタスクスイッチングによる処理の切り替えを行いながら動作する第1の制御方法で動作させ、
    前記所定のコア以外の1又は複数の他のコアを、前記タスクスイッチングによる処理の切り替えが前記第1の制御方法よりも少ない第2の制御方法で動作させ、
    前記プロセッサ外部のデバイスとの通信が必要な第1の処理と前記プロセッサ外部のデバイスとの通信が不要な第2の処理とを並列処理する場合に、
    前記第1の処理を、前記所定のコアに実行させる第1ステップと、
    前記第2の処理を、前記所定のコア及び前記他のコアに分散して実行させ、各コアで分散処理する負荷が、前記他のコアより前記所定のコアの方が小さくなる様に分散する第2ステップと、を実行する、
    ことを特徴とする並列処理の制御方法。
  6. 前記第2の処理は、PDL(Page Description Language)で記述された各ページのデータをラスタライズして画像データを生成するPDL処理であり、
    前記第2ステップでは、
    前記所定のコア及び前記他のコアに、ページ単位のデータ又は各ページをバンドに分割したバンド単位のデータを処理させる、
    ことを特徴とする請求項5に記載の並列処理の制御方法。
  7. 前記第2ステップでは、
    前記所定のコアには、前記他のコアよりもデータ量が少ない、前記ページ単位のデータ又は前記バンド単位のデータを処理させる、
    ことを特徴とする請求項6に記載の並列処理の制御方法。
  8. 前記第1の処理は、公衆回線に接続するためのモデムと通信しながらFAX画像データの送受信を行うFAX処理、原稿をスキャンするセンサと通信しながら画像データを取得するスキャン処理、用紙位置を特定するセンサと通信しながら用紙上に画像を形成する画像形成処理の中から選択される1以上の処理である、
    ことを特徴とする請求項5乃至7のいずれか一に記載の並列処理の制御方法。
  9. 複数のコアで構成されるCPU(Central Processing Unit)を含むプロセッサを備える装置における、いずれかのコアで動作する並列処理制御プログラムであって、
    前記複数のコアの内の少なくとも1つの所定のコアを、前記CPU上で動作するOS(Operating System)のタスクスイッチングによる処理の切り替えを行いながら動作する第1の制御方法で動作させ、
    前記所定のコア以外の1又は複数の他のコアを、前記タスクスイッチングによる処理の切り替えが前記第1の制御方法よりも少ない第2の制御方法で動作させ、
    前記プロセッサ外部のデバイスとの通信が必要な第1の処理と前記プロセッサ外部のデバイスとの通信が不要な第2の処理とを並列処理する場合に、
    前記装置に、
    前記第1の処理を、前記所定のコアに実行させる第1ステップ、
    前記第2の処理を、前記所定のコア及び前記他のコアに分散して実行させ、各コアで分散処理する負荷が、前記他のコアより前記所定のコアの方が小さくなる様に分散する第2ステップ、を実行させる、
    ことを特徴とする並列処理制御プログラム。
  10. 前記装置は画像形成装置であり、
    前記第2の処理は、PDL(Page Description Language)で記述された各ページのデータをラスタライズして画像データを生成するPDL処理であり、
    前記第2ステップでは、
    前記所定のコア及び前記他のコアに、ページ単位のデータ又は各ページをバンドに分割したバンド単位のデータを処理させる、
    ことを特徴とする請求項9に記載の並列処理制御プログラム。
  11. 前記第2ステップでは、
    前記所定のコアには、前記他のコアよりもデータ量が少ない、前記ページ単位のデータ又は前記バンド単位のデータを処理させる、
    ことを特徴とする請求項10に記載の並列処理制御プログラム。
  12. 前記装置は画像形成装置であり、
    前記第1の処理は、公衆回線に接続するためのモデムと通信しながらFAX画像データの送受信を行うFAX処理、原稿をスキャンするセンサと通信しながら画像データを取得するスキャン処理、用紙位置を特定するセンサと通信しながら用紙上に画像を形成する画像形成処理の中から選択される1以上の処理である、
    ことを特徴とする請求項9乃至11のいずれか一に記載の並列処理制御プログラム。
JP2014190076A 2014-09-18 2014-09-18 画像形成装置及び並列処理の制御方法並びに制御プログラム Active JP6136020B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014190076A JP6136020B2 (ja) 2014-09-18 2014-09-18 画像形成装置及び並列処理の制御方法並びに制御プログラム
CN201510581615.2A CN105450891B (zh) 2014-09-18 2015-09-14 图像形成装置以及并行处理的控制方法
US14/857,011 US9398189B2 (en) 2014-09-18 2015-09-17 Image forming apparatus, and method and program for controlling parallel processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014190076A JP6136020B2 (ja) 2014-09-18 2014-09-18 画像形成装置及び並列処理の制御方法並びに制御プログラム

Publications (2)

Publication Number Publication Date
JP2016063407A JP2016063407A (ja) 2016-04-25
JP6136020B2 true JP6136020B2 (ja) 2017-05-31

Family

ID=55526953

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014190076A Active JP6136020B2 (ja) 2014-09-18 2014-09-18 画像形成装置及び並列処理の制御方法並びに制御プログラム

Country Status (3)

Country Link
US (1) US9398189B2 (ja)
JP (1) JP6136020B2 (ja)
CN (1) CN105450891B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018026702A (ja) * 2016-08-10 2018-02-15 富士ゼロックス株式会社 画像処理装置及び画像形成装置
CN106355740B (zh) * 2016-08-19 2019-04-26 深圳怡化电脑股份有限公司 一种验钞信息处理设备及方法
JP6677131B2 (ja) * 2016-09-05 2020-04-08 コニカミノルタ株式会社 画像形成装置、方法およびプログラム
JP2018062157A (ja) * 2016-10-14 2018-04-19 富士ゼロックス株式会社 画像形成装置、情報処理装置およびプログラム
WO2018179110A1 (ja) * 2017-03-28 2018-10-04 三菱電機株式会社 リモートコントローラ、遠隔制御方法、及び、プログラム
JP7385343B2 (ja) 2017-11-08 2023-11-22 コニカミノルタ株式会社 画像形成装置
JP7172193B2 (ja) * 2018-07-02 2022-11-16 コニカミノルタ株式会社 画像形成装置およびプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010226283A (ja) * 2009-03-23 2010-10-07 Konica Minolta Business Technologies Inc 情報処理装置
JP5430319B2 (ja) * 2009-09-24 2014-02-26 キヤノン株式会社 印刷データ処理装置、印刷データ処理方法、プログラム
JP5545050B2 (ja) * 2010-06-09 2014-07-09 コニカミノルタ株式会社 画像処理装置、プログラム及び画像処理方法
JP5716367B2 (ja) * 2010-12-01 2015-05-13 コニカミノルタ株式会社 印刷データ生成装置及び印刷データ生成方法
JP2012135878A (ja) * 2010-12-24 2012-07-19 Canon Inc 画像処理装置、情報処理方法及びプログラム
JP5516551B2 (ja) * 2011-11-16 2014-06-11 コニカミノルタ株式会社 画像形成システム及び画像形成制御方法

Also Published As

Publication number Publication date
US20160088183A1 (en) 2016-03-24
JP2016063407A (ja) 2016-04-25
US9398189B2 (en) 2016-07-19
CN105450891A (zh) 2016-03-30
CN105450891B (zh) 2019-03-22

Similar Documents

Publication Publication Date Title
JP6136020B2 (ja) 画像形成装置及び並列処理の制御方法並びに制御プログラム
JP5482528B2 (ja) 印刷文書変換装置及びプログラム
JP2011158951A (ja) 画像処理装置、プログラム及び画像処理方法
JP5482529B2 (ja) 印刷文書変換装置及びプログラム
US20170060644A1 (en) Image processing apparatus, control task allocation method, and recording medium
JP6465384B2 (ja) 画像形成装置及び並列処理制御プログラム並びに並列処理制御方法
US8767247B2 (en) Print data generation device, print data generation method and computer-readable medium for controlling rasterization processing
JP5850880B2 (ja) 画像形成装置及び画像形成システム
JP6524928B2 (ja) 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法
JP5391980B2 (ja) 画像形成装置、画像形成装置の制御方法及び制御プログラム
JP2016096414A (ja) 画像形成装置、同装置におけるマルチコアプロセッサの制御処理の割り当て方法およびプログラム
US8614822B2 (en) Print data processing apparatus, print data processing method, and storage medium
US10382637B2 (en) Print controller, image forming system, and image forming apparatus
JP6372315B2 (ja) 画像処理装置及び並列処理制御プログラム並びに並列処理制御方法
JP2012111210A (ja) 印刷データ生成装置、印刷データ生成方法及びプログラム
US10754407B2 (en) Image forming apparatus and program
JP6485699B2 (ja) 画像形成装置、画像形成システム
JP6128104B2 (ja) 画像処理装置、その制御方法、およびプログラム
JP2012165229A (ja) 画像形成方法および画像形成装置
JP2017204106A (ja) 画像形成装置
JP5358617B2 (ja) 画像形成装置および制御プログラム
JP6372705B2 (ja) 画像形成装置
JP6206056B2 (ja) 処理プログラム及び処理装置並びに処理方法
JP6264757B2 (ja) 画像形成装置、画像形成システム、画像形成装置の制御方法、及び画像形成装置の制御プログラム
JP2013052568A (ja) 画像形成装置、制御方法及び制御プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161222

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: 20170331

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170413

R150 Certificate of patent or registration of utility model

Ref document number: 6136020

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150