(57)【要約】【課題】ページデータの変換処理を複数の演算処理装置に適切に分散させることによって、変換処理に要する時間を効果的に短縮することを可能とする。【解決手段】画像処理システム１００は、複数の演算処理装置と、１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して複数の演算処理装置に分配する管理装置１とを備える。管理装置１が、変換処理を行わせる際の並行処理総数Ｔと、１個のタスク８１に含ませるページデータ５のページ数の上限と、出力ジョブ８に含まれるページデータのページ数とに基づいて、タスク分割する際の分割数Ｖを決定する。【選択図】図９
2012208761.tif 000002
【特許請求の範囲】
【請求項１】
ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を行う画像処理システムであって、
前記変換処理を行う複数の演算処理装置と、
１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して前記複数の演算処理装置に分配する管理装置と、
を備え、
前記管理装置が、
前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する並行処理総数取得部と、
１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する適正値取得部と、
前記並行処理総数と、前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する分割数決定部と、
を備え、
前記分割数決定部が、
前記並行処理総数の自然数倍となる値であり、かつ、当該値で前記ジョブに含まれるページデータのページ数を割って得られる数が前記上限値以下となるような値のうちで、最小の値を、前記分割数に決定する、
画像処理システム。
【請求項２】
請求項１に記載の画像処理システムであって、
前記適正値取得部が、１個のタスクに含ませるページデータのページ数の適正範囲の下限値を取得し、
前記分割数決定部が、
前記並行処理総数で前記ジョブに含まれるページデータのページ数を割った値が、前記適正範囲の下限値よりも小さい場合に、前記ジョブに含まれるページデータのページ数を前記下限値で割って得られる値を、前記分割数に決定する画像処理システム。
【請求項３】
請求項１または２に記載の画像処理システムであって、
前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を決定するページ数決定部、
をさらに備え、
前記ページ数決定部が、
前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を、前記出力装置が１個の記録媒体に対して丁付けするページデータのページ数の整数倍となる値に決定する画像処理システム。
【請求項４】
請求項１から３のいずれかに記載の画像処理システムであって、
前記並行処理総数取得部が、
前記複数の演算処理装置のそれぞれの並行処理数を総計した値を前記並行処理総数として取得する画像処理システム。
【請求項５】
請求項１から３のいずれかに記載の画像処理システムであって、
前記並行処理総数取得部が、
前記複数の演算処理装置のそれぞれの並行処理数を総計した値以下の任意の値をオペレータから受け付けて、当該受け付けた値を前記並行処理総数として取得する画像処理システム。
【請求項６】
ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を行う画像処理方法であって、
１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して複数の演算処理装置に分配する第１工程と、
前記複数数の演算処理装置が、自装置に分配されたタスクを実行する第２工程と、
を備え、
前記第１工程が、
ａ）前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する工程と、
ｂ）１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する工程と、
ｃ）前記ａ）工程で取得された前記並行処理総数と、前記ｂ）工程で設定された前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する工程と、
ｄ）前記変換処理を前記ｃ）工程で決定された前記分割数で複数のタスクに分割して前記複数の演算処理装置に分配する工程と、
を備え、
前記ｃ）工程が、
ｃ１）前記並行処理総数のｎ倍（ただし、ｎは自然数）の値を仮分割数として、前記仮分割数で前記ジョブに含まれるページデータのページ数を割って得られる値が、前記上限値以下であるか否かを判定する工程と、
ｃ２）前記ｃ１）工程で肯定的な評価が得られた場合に、当該肯定的評価を与えた前記仮分割数を、前記分割数に決定する工程と、
ｃ３）前記ｃ１）工程で肯定的な評価が得られるまで、前記ｎの値を１ずつ増加させながら前記ｃ１）工程を繰り返す繰り返し工程と、
を備える画像処理方法。
【請求項７】
請求項６に記載の画像処理方法であって、
e）１個のタスクに含ませるページデータのページ数の適正範囲の下限値を取得する工程、
をさらに備え、
前記ｃ）工程が、
ｃ４）前記ｃ１）工程において、前記並行処理総数を前記仮分割数として、前記仮分割数で前記ジョブに含まれるページデータのページ数を割った値が、前記適正範囲の下限値より小さい場合に、前記ジョブに含まれるページデータのページ数を前記下限値で割って得られる値を、前記分割数に決定する工程、
をさらに備える画像処理方法。
【請求項８】
請求項６または７に記載の画像処理方法であって、
ｆ）前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を決定する工程、
をさらに備え、
前記ｆ）工程において、
前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を、前記出力装置が１個の記録媒体に対して丁付けするページデータのページ数の整数倍となる値に決定する画像処理方法。
【請求項９】
ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を、複数の演算処理装置に並行処理させる画像処理システムにおいて、１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して前記複数の演算処理装置に分配する分配方法であって、
ａ）前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する工程と、
ｂ）１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する工程と、
ｃ）前記ａ）工程で取得された前記並行処理総数と、前記ｂ）工程で設定された前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する工程と、
ｄ）前記変換処理を前記ｃ）工程で決定された前記分割数で複数のタスクに分割して前記複数の演算処理装置に分配する工程と、
を備え、
前記ｃ）工程が、
ｃ１）前記並行処理総数のｎ倍（ただし、ｎは自然数）の値を仮分割数として、前記仮分割数で前記ジョブに含まれるページデータのページ数を割って得られる値が、前記上限値以下であるか否かを判定する工程と、
ｃ２）前記ｃ１）工程で肯定的な評価が得られた場合に、当該肯定的評価を与えた前記仮分割数を、前記分割数に決定する工程と、
ｃ３）前記ｃ１）工程で肯定的な評価が得られるまで、前記ｎの値を１ずつ増加させながら前記ｃ１）工程を繰り返す繰り返し工程と、
を備える分配方法。
【請求項１０】
ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を行う画像処理システムにおいて、１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して複数の演算処理装置に分配する管理装置としてコンピュータを機能させるプログラムであって、前記コンピュータのＣＰＵが前記プログラムをメモリで実行することにより、前記コンピュータに、
前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する並行処理総数取得部と、
１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する適正値取得部と、
前記並行処理総数と、前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する分割数決定部と、
を実現させ、
前記分割数決定部が、
前記並行処理総数の自然数倍となる値であり、かつ、当該値で前記ジョブに含まれるページデータのページ数を割って得られる数が前記上限値以下となるような値のうちで、最小の値を、前記分割数に決定する、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する技術に関する。
【背景技術】
【０００２】
印刷・製版の分野においては、例えば、PostScript（米アドビ・システムズ社の登録商標）、ＰＤＦ（Portable Document Format）等に代表されるページ記述言語で表現されたページデータで与えられる入稿データを、出力装置（例えば、イメージセッタ、プレートレコーダ、デジタル印刷機等の印刷機）で記録媒体（例えば、フィルム、刷版、記録紙等の記録媒体）に出力する処理が行われる。ここで、出力装置は、ページ記述言語で表現されたページデータをそのまま出力することはできないため、ページデータを、出力機にて出力可能なデータ形式に変換（コンバート）する変換処理を行う必要がある。印刷・製版工程の効率化のためには、この変換処理をいかに短時間で行えるかが重要な鍵となってくる。
【０００３】
変換処理の処理時間の短縮を実現可能な技術として、ページデータの変換処理を、通信回線を介して接続された複数の装置を用いて行うシステムが提案されている。例えば、特許文献１に開示の構成においては、印刷ジョブをうけた画像処理装置が、ネットワークを介して接続された他の画像処理装置に当該印刷ジョブを転送し、ネットワークを介して接続された複数の画像処理装置のそれぞれが当該印刷ジョブのラスタライズ処理を行う。そして、いずれかの画像処理装置でラスタライズ処理が完了すると、他の画像処理装置でのラスタライズ処理をキャンセルする。この構成によると、最も負荷の軽い画像処理装置が行ったラスタライズ処理で得られたデータを用いて印刷を行うことになるので、ラスタライズ処理に要する時間を短縮することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−８６５９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示の構成は、ページデータの変換処理の高速化という点において一定の効果が得られるものの、複数の画像処理装置で同一の印刷ジョブに係るラスタライズ処理が重複して行われることになり、処理の無駄が発生する。
【０００６】
一方、ページデータの変換処理を、通信回線を介して接続された複数の画像処理装置に分散させて行わせれば、このような処理の無駄を生じさせることなく、ページデータの変換処理を高速化できる（所謂、負荷分散）。ただし、当該構成において、変換処理に要する時間を効果的に短縮するためには、システムが備えるハードウェア資源を無駄なく有効に利用することが重要であり、このためには、システムが備える複数の画像処理装置にページデータの変換処理を適切に分散させる必要がある。
【０００７】
この発明は、上記の課題に鑑みてなされたものであり、ページデータの変換処理を複数の演算処理装置に適切に分散させることによって、変換処理に要する時間を効果的に短縮することを可能とする技術の提供を目的とする。
【課題を解決するための手段】
【０００８】
請求項１に記載の発明は、ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を行う画像処理システムであって、前記変換処理を行う複数の演算処理装置と、１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して前記複数の演算処理装置に分配する管理装置と、を備え、前記管理装置が、前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する並行処理総数取得部と、１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する適正値取得部と、前記並行処理総数と、前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する分割数決定部と、を備え、前記分割数決定部が、前記並行処理総数の自然数倍となる値であり、かつ、当該値で前記ジョブに含まれるページデータのページ数を割って得られる数が前記上限値以下となるような値のうちで、最小の値を、前記分割数に決定する。
【０００９】
請求項２に記載の発明は、請求項１に記載の画像処理システムであって、前記適正値取得部が、１個のタスクに含ませるページデータのページ数の適正範囲の下限値を取得し、前記分割数決定部が、前記並行処理総数で前記ジョブに含まれるページデータのページ数を割った値が、前記適正範囲の下限値よりも小さい場合に、前記ジョブに含まれるページデータのページ数を前記下限値で割って得られる値を、前記分割数に決定する。
【００１０】
請求項３に記載の発明は、請求項１または２に記載の画像処理システムであって、前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を決定するページ数決定部、をさらに備え、前記ページ数決定部が、前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を、前記出力装置が１個の記録媒体に対して丁付けするページデータのページ数の整数倍となる値に決定する。
【００１１】
請求項４に記載の発明は、請求項１から３のいずれかに記載の画像処理システムであって、前記並行処理総数取得部が、前記複数の演算処理装置のそれぞれの並行処理数を総計した値を前記並行処理総数として取得する。
【００１２】
請求項５に記載の発明は、請求項１から３のいずれかに記載の画像処理システムであって、前記並行処理総数取得部が、前記複数の演算処理装置のそれぞれの並行処理数を総計した値以下の任意の値をオペレータから受け付けて、当該受け付けた値を前記並行処理総数として取得する。
【００１３】
請求項６に記載の発明は、ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を行う画像処理方法であって、１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して複数の演算処理装置に分配する第１工程と、前記複数数の演算処理装置が、自装置に分配されたタスクを実行する第２工程と、を備え、前記第１工程が、ａ）前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する工程と、ｂ）１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する工程と、ｃ）前記ａ）工程で取得された前記並行処理総数と、前記ｂ）工程で設定された前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する工程と、ｄ）前記変換処理を前記ｃ）工程で決定された前記分割数で複数のタスクに分割して前記複数の演算処理装置に分配する工程と、を備え、前記ｃ）工程が、ｃ１）前記並行処理総数のｎ倍（ただし、ｎは自然数）の値を仮分割数として、前記仮分割数で前記ジョブに含まれるページデータのページ数を割って得られる値が、前記上限値以下であるか否かを判定する工程と、ｃ２）前記ｃ１）工程で肯定的な評価が得られた場合に、当該肯定的評価を与えた前記仮分割数を、前記分割数に決定する工程と、ｃ３）前記ｃ１）工程で肯定的な評価が得られるまで、前記ｎの値を１ずつ増加させながら前記ｃ１）工程を繰り返す繰り返し工程と、を備える。
【００１４】
請求項７に記載の発明は、請求項６に記載の画像処理方法であって、e）１個のタスクに含ませるページデータのページ数の適正範囲の下限値を取得する工程、をさらに備え、前記ｃ）工程が、ｃ４）前記ｃ１）工程において、前記並行処理総数を前記仮分割数として、前記仮分割数で前記ジョブに含まれるページデータのページ数を割った値が、前記適正範囲の下限値より小さい場合に、前記ジョブに含まれるページデータのページ数を前記下限値で割って得られる値を、前記分割数に決定する工程、をさらに備える。
【００１５】
請求項８に記載の発明は、請求項６または７に記載の画像処理方法であって、ｆ）前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を決定する工程、をさらに備え、前記ｆ）工程において、前記複数のタスクのそれぞれに含ませる前記ページデータのページ数を、前記出力装置が１個の記録媒体に対して丁付けするページデータのページ数の整数倍となる値に決定する。
【００１６】
請求項９に記載の発明は、ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を、複数の演算処理装置に並行処理させる画像処理システムにおいて、１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して前記複数の演算処理装置に分配する分配方法であって、ａ）前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する工程と、ｂ）１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する工程と、ｃ）前記ａ）工程で取得された前記並行処理総数と、前記ｂ）工程で設定された前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する工程と、ｄ）前記変換処理を前記ｃ）工程で決定された前記分割数で複数のタスクに分割して前記複数の演算処理装置に分配する工程と、を備え、前記ｃ）工程が、ｃ１）前記並行処理総数のｎ倍（ただし、ｎは自然数）の値を仮分割数として、前記仮分割数で前記ジョブに含まれるページデータのページ数を割って得られる値が、前記上限値以下であるか否かを判定する工程と、ｃ２）前記ｃ１）工程で肯定的な評価が得られた場合に、当該肯定的評価を与えた前記仮分割数を、前記分割数に決定する工程と、ｃ３）前記ｃ１）工程で肯定的な評価が得られるまで、前記ｎの値を１ずつ増加させながら前記ｃ１）工程を繰り返す繰り返し工程と、を備える。
【００１７】
請求項１０に記載の発明は、ページ記述言語で記述されたページデータを出力装置で出力可能なデータ形式に変換する変換処理を行う画像処理システムにおいて、１個のジョブに係る複数のページデータの変換処理を複数のタスクに分割して複数の演算処理装置に分配する管理装置としてコンピュータを機能させるプログラムであって、前記コンピュータのＣＰＵが前記プログラムをメモリで実行することにより、前記コンピュータに、前記コンピュータに、前記画像処理システムにおいて前記変換処理を行わせる際の並行処理総数を取得する並行処理総数取得部と、１個のタスクに含ませるページデータのページ数の適正範囲の上限値を取得する適正値取得部と、前記並行処理総数と、前記適正範囲の上限値と、前記ジョブに含まれるページデータのページ数とに基づいて、当該ジョブに係る前記変換処理を複数のタスクに分割する際の分割数を決定する分割数決定部と、を実現させ、前記分割数決定部が、前記並行処理総数の自然数倍となる値であり、かつ、当該値で前記ジョブに含まれるページデータのページ数を割って得られる数が前記上限値以下となるような値のうちで、最小の値を、前記分割数に決定する。
【発明の効果】
【００１８】
請求項１〜１０に記載の発明によると、分割数が、並行処理総数の自然数倍とされるので、画像処理システムが備えるハードウェア資源を無駄なく利用して変換処理を行うことができる。その一方で、分割数が、ジョブに含まれるページデータのページ数を当該分割数で割った値が適正範囲の上限値以下となるような値とされるので、変換処理の安定性が担保される。さらに、分割数がこれらの各要件を満たす最小の値とされるので、分割数が無秩序に増加することによる変換処理の効率低下が防止される。つまり、変換処理の安定性を担保しつつ、画像処理システムが備えるハードウェア資源を有効に利用して変換処理に要する時間を効果的に短縮することができる。
【００１９】
特に、請求項２、７に記載の発明によると、ジョブに含まれるページデータのページ数が並行処理総数に対して少ない場合（具体的には、並行処理総数でジョブに含まれるページデータのページ数を割った値が、適正範囲の下限値よりも小さい場合）に、ジョブに含まれるページデータのページ数を適正範囲の下限値で割って得られる値を、分割数に決定する。この構成によると、ジョブに含まれるページデータのページ数が並行処理総数に対して少ない場合であっても、分割数が増加することによる変換処理の効率低下を防止しつつ、画像処理システムが備えるハードウェア資源をできるだけ有効に利用して変換処理に要する時間を短縮することができる。
【００２０】
特に、請求項３、８に記載の発明によると、複数のタスクのそれぞれに含まれるページデータのページ数が、出力装置が１個の記録媒体に対して丁付けするページデータのページ数の整数倍とされる。この構成によると、変換処理されたデータを記録媒体へ出力する一連の処理をスムースに行うことができる。
【００２１】
特に、請求項４に記載の発明によると、並行処理総数が、画像処理システムが備える複数の演算処理装置のそれぞれの並行処理数を総計した値であるので、画像処理システムが備えるハードウェア資源の全体を有効に利用して変換処理に要する時間を短縮することができる。
【００２２】
特に、請求項５に記載の発明によると、オペレータが、画像処理システムが備える複数の演算処理装置のそれぞれの並行処理数を総計した値以下の任意の値を並行処理総数として指定することができるので、オペレータの所望に応じて、画像処理システムが備えるハードウェア資源の全体で１個のジョブに係る変換処理を行わせることも可能であり、当該ハードウェア資源の一部で１個のジョブに係る変換処理を行わせることも可能である。後者の場合、画像処理システム１００において、複数個のジョブに係る変換処理を並行して行わせることも可能となる。
【図面の簡単な説明】
【００２３】
【図１】画像処理システムの構成を示す図である。
【図２】コンピュータのハードウェア構成を示す図である。
【図３】画像処理システムが備える各部の機能を説明するための図である。
【図４】管理装置において実現される機能部を示すブロック図である。
【図５】分割数決定部が分割数を算出する処理の流れを示す図である。
【図６】ページ数決定部がタスクページ数を決定する処理の流れを示す図である。
【図７】ページ数決定部がタスクページ数を決定する処理の流れを示す図である。
【図８】画像処理システムにおいて実行される処理の流れを示す図である。
【図９】画像処理システムにおいて実行される処理の流れを説明するための図である。
【図１０】画像処理システムにおいて実行される処理の流れを説明するための図である。
【図１１】本願発明の効果を説明するため比較例を示す図である。
【図１２】本願発明の効果を説明するため比較例を示す図である。
【発明を実施するための形態】
【００２４】
以下、添付の図面を参照しながら、本発明の実施形態について説明する。以下の実施形態は、本発明を具体化した一例であり、本発明の技術的範囲を限定する事例ではない。
【００２５】
＜１．画像処理システム＞
この発明の実施の形態に係る画像処理システム１００の構成について、図１を参照しながら説明する。図１は、画像処理システム１００の構成を示す図である。
【００２６】
画像処理システム１００は、クライアント装置９００からページデータ（例えば、PostScript（米アドビ・システムズ社の登録商標）、ＰＤＦ（Portable Document Format）等に代表されるページ記述言語で記述されたデータ）の入力をうけて、当該入力されたページデータが表現しているページ内容を、フィルム、刷版、記録紙等の記録媒体に出力するシステムであり、ＬＡＮ等の通信回線９０１を介して互いに接続された管理装置１、複数の演算処理装置２、および、出力装置３を備える。
【００２７】
管理装置１、および、複数の演算処理装置２のそれぞれは、コンピュータ１０により構成される。ここで、管理装置１、あるいは、演算処理装置２として機能するコンピュータ１０のハードウェア構成について、図２を参照しながら説明する。
【００２８】
コンピュータ１０は、演算処理を行うＣＰＵ１１、基本プログラムを記憶するＲＯＭ１２、各種情報を記憶するＲＡＭ１３を、バスライン２０に接続した一般的なコンピュータシステムにより構成される。バスライン２０にはさらに、ＣＰＵの作業領域（ワークエリア）となるメモリ１４、情報記憶を行う固定ディスク１５、各種情報の表示を行う表示部１６、マウスやキーボードで構成され、オペレータからの入力を受け付ける入力部１７、コンピュータ読み取り可能な電子媒体９０２（例えば、光ディスク、磁気ディスク、光磁気ディスク等）からの情報の読み取り、および、電子媒体９０２への情報の書き込みを行う読取／書込装置１８が接続される。さらに、バスライン２０には、通信回線９０１を介して外部装置と通信を行う通信部１９が、インターフェイス（Ｉ／Ｆ）を介する等して接続される。
【００２９】
コンピュータ１０が備える読取／書込装置１８を介して電子媒体９０２から読み出された（あるいは、通信部１９を介してダウンロードされた）プログラム９０３が固定ディスク１５に記憶され、さらにプログラム９０３がＲＡＭ１３にコピーされるとともにＣＰＵ１１がＲＡＭ１３内のプログラム９０３に従ってメモリ１４において演算処理を実行することによって、コンピュータ１０において、各種の機能（管理装置１としての各種の機能、あるいは、演算処理装置２としての各種の機能）が実現される。
【００３０】
＜２．各部の機能＞
画像処理システム１００が備える各部の機能について、図３を参照しながら説明する。図３は、画像処理システム１００が備える各部の機能を説明するための図である。
【００３１】
＜２−１．管理装置１＞
管理装置１は、画像処理システム１００を統括管理する装置である。管理装置１は、クライアント装置９００（図１）から複数のページデータ５から構成される入稿データの出力ジョブ８を受け付ける。ただし、ここで、「出力ジョブ８」とは、画像処理システム１００に対して与えられた仕事の単位を指す。以下において、１個の出力ジョブ８に含まれるページデータ５のページ数を「ジョブページ数Ｘ」という。
【００３２】
管理装置１は、クライアント装置９００から受け付けた出力ジョブ８に含まれる複数のページデータ５の変換処理を、複数のタスク（ＲＩＰタスク）８１に分割し、得られた複数のタスク８１を複数の演算処理装置２に分配する。ただし、ここでいう「変換処理」とは、ページデータ５を出力装置３にて出力可能なデータ形式に変換（コンバート）する処理である。管理装置１は、例えば、１６０００枚のページデータ５を含む出力ジョブ８に係る変換処理を、例えば１０００枚ずつページデータ５が割り振られた１６個のタスク８１に分割し、これら１６個のタスク８１を、画像処理システム１００が備える複数の演算処理装置２に分配する。管理装置１が出力ジョブ８に係る変換処理を複数のタスク８１に分割して複数の演算処理装置２に分配する態様は、後に詳細に説明する。
【００３３】
＜２−２．演算処理装置２＞
複数の演算処理装置２のそれぞれは、管理装置１から自装置に分配された１以上のタスク８１を実行して、各タスク８１に含まれる各ページデータ５を変換（コンバート）して、出力装置３が出力可能な形式（例えば、ビットマップ形式、１ｂｉｔＴＩＦＦ形式等）で表現した中間データを生成する。例えば出力ジョブ８に含まれるページデータ５のうち、１ページ〜１０００ページのページデータ５を含むタスク８１を受けた場合、演算処理装置２は、当該１ページ〜１０００ページのページデータ５をコンバートして、当該１ページ〜１０００ページのページデータ５の内容を表現した中間データを生成する。
【００３４】
画像処理システム１００が備える複数の演算処理装置２のそれぞれが、自装置に分配された１以上のタスク８１を実行することによって、１個の出力ジョブ８に係る複数個のタスク８１が画像処理システム１００において並行処理されることになる。つまり、出力ジョブ８に含まれる複数のページデータ５の変換処理が複数の演算処理装置２において分散処理されることになる。
【００３５】
さらに、複数の演算処理装置２のそれぞれにおいては、１以上のタスク８１を並行して（すなわち、同時に）実行可能な機能（マルチタスク機能）が実現されていてもよい。以下において、演算処理装置２において並行して実行することができるタスク８１の数を、当該演算処理装置２の「並行処理数」という。画像処理システム１００が備える複数の演算処理装置２のそれぞれの並行処理数を総計した値を「最大並行処理総数Ｔmax」とすると、画像処理システム１００においては、１個の出力ジョブ８に係る複数のページデータ５の変換処理を、最大並行処理総数Ｔmax以下の任意の数（並行処理総数Ｔ）で並行処理させることができることになる。なお、各演算処理装置２の並行処理数は、当該演算処理装置２が備えるハードウェアリソース（例えば、メモリ１４の容量、ＣＰＵ１１の処理能力等）に応じて規定される。ただし、画像処理システム１００が備える複数の演算処理装置２は必ずしも互いに同じハードウェアリソースを備える必要はなく、複数の演算処理装置２の並行処理数は必ずしも互いに等しくなくともよい。例えば、並行処理数が「３」の演算処理装置２と、並行処理数が「１」（すなわち、マルチタスク実行不可能）の演算処理装置２とを含むシステム構成も可能である。いうまでもなく、並行処理数が互いに等しい複数の演算処理装置２により構成されるシステムも可能である。なお、図３には、並行処理数が「３」の２個の演算処理装置２と、並行処理数が「２」の１個の演算処理装置２とを含むシステム構成が例示されている。
【００３６】
ところで、演算処理装置２において実行される各タスク８１は、具体的には、解析処理（インタープリット）８１１と、ラスタライズ処理８１２とから構成される。解析処理８１１は、ページデータ５の記述を解釈する処理であり、ページデータ５に記述されたオブジェクトの位置特定、アウトライン化、フォントの呼び出し等を行う処理等がここで行われる。解析処理８１１は、複数のタスク８１において共通して行われる処理である。また、解析処理８１１に要する時間は、タスク８１に含まれるページデータ５のページ数（以下「タスクページ数Ｙ」という）に関係なく一定であり、ジョブページ数Ｘに応じたものとなる。一方、ラスタライズ処理８１２は、タスク８１に含まれる各ページデータ５をコンバートして中間データを生成する処理である。ラスタライズ処理８１２に要する時間は、タスクページ数Ｙに応じたものとなる。
【００３７】
上述したとおり、ラスタライズ処理８１２に要する時間は、タスクページ数Ｙに応じたものとなるので、タスクページ数Ｙが小さくなるほど（すなわち、出力ジョブ８に係る変換処理がタスク分割される数が多くなるほど）、ラスタライズ処理８１２に要する時間は短くなる。一方、解析処理８１１に要する時間は、ジョブページ数Ｘに応じたものとなるので、出力ジョブ８に係る変換処理がタスク分割される数が多くなっても、解析処理８１１に要する時間は短縮されることがない。また、タスク分割される数が多くなるほど解析処理８１１が繰り返される回数が増えることになる。したがって、タスク分割して複数の演算処理装置２で並行処理を行わせることによって、変換処理の処理効率が向上する一方で、タスク分割数を無秩序に増やしすぎると、タスク分割によって変換処理の処理効率が逆に低下するおそれがある。
【００３８】
そこで、画像処理システム１００においては、タスク分割数が増えすぎることを防止すべく、タスクページ数Ｙの下限値が規定される（以下、この値を「下限ページ数Ｙmin」という）。下限ページ数Ｙminを規定しておけば、ラスタライズ処理８１２対して解析処理８１１に要する時間の比率が極端に大きくなることがないので、タスク分割により変換処理の効率が低下するといった事態は生じない。ただし、タスクページ数Ｙが僅かに変化しても変換処理の効率が大きく変動するわけではない。したがって、タスクページ数Ｙは、下限ページ数Ｙmin以上であることが最も好ましいものの、下限ページ数Ｙminよりも僅かに小さい値であっても許容される。
【００３９】
また、１個のタスク８１は、演算処理装置２が例えば約５分以内で完了できるものであることが好ましい。というのも、タスク８１に要する時間が長くなると、管理装置１が各演算処理装置２におけるタスク８１を管理する態様が煩雑になり、安定した変換処理が担保できなくなってしまうからである。すなわち、演算処理装置２が１個のタスク８１に約５分を大きく超えた時間を要する場合、安定したタスク８１の実行を担保するために、各演算処理装置２におけるタスク８１の進行状況を管理装置１の側で監視する必要が出てくる。また、出力ジョブ８の中断が指示された場合、演算処理装置２が約５分以内でタスク８１を完了できるのであれば、管理装置１はタスク８１間の切れ目で演算処理装置２に処理を中断させればよいが、それ以上の時間がかかる場合、管理装置１は演算処理装置２にタスク８１の実行途中でこれを中断させなければならない。したがって、管理装置１が各演算処理装置２を制御する際の制御態様が煩雑になってしまう。
【００４０】
そこで、画像処理システム１００においては、ラスタライズ処理８１２に要する時間が極端に長くなることを防止すべく、タスクページ数Ｙの上限値が規定される（以下、この値を「上限ページ数Ｙmax」という）。例えば、演算処理装置２がタスク８１を５分程度で終了できるようなタスクページ数Ｙを上限ページ数Ｙmaxとして規定しておけば、演算処理装置２が１個のタスク８１を完了するまでに要する時間を約５分以内に抑えることができる。ただし、１個のタスク８１に要する時間はおよそ５分前後であればよく、厳密にこれを管理する必要性は高くない。つまり、タスクページ数Ｙは、上限ページ数Ｙmaxを超えないことが最も好ましいものの、上限ページ数Ｙmaxよりも僅かに大きい値であっても許容される。
【００４１】
なお、タスク管理という側面から見ると、１個のタスク８１に要する時間はおよそ５分以内であることが好ましく、タスクページ数Ｙは上限ページ数Ｙmax以下であることが好ましいが、画像処理システム１００の処理効率という側面からみると、タスクページ数Ｙはなるべく大きい方が好ましい。したがって、タスクページ数Ｙの最適な値は、上限ページ数Ｙmaxであるといえる。つまり、上限ページ数Ｙmaxは、「タスクページ数Ｙの最適値」という意味合いをもっている。
【００４２】
＜２−３．出力装置３＞
出力装置３は、複数の演算処理装置２のそれぞれで生成された中間データを記録媒体（例えば、フィルム、刷版、記録紙等の記録媒体）に出力する。出力装置３は、例えば、イメージセッタ、プレートレコーダ、デジタル印刷機等の印刷機により構成される。
【００４３】
＜３．管理装置１＞
次に、管理装置１が備える機能部について、図４を参照しながら説明する。図４は、管理装置１において実現される機能部を示すブロック図である。
【００４４】
管理装置１は、出力ジョブ８に係る変換処理を複数のタスク８１に分割して複数の演算処理装置２に分配する。当該機能に関する構成として、管理装置１は、並行処理総数取得部１１０と、適正値取得部１２０と、分割数決定部１３０と、ページ数決定部１４０と、タスク分配部１５０とを備える。これら各機能部は、コンピュータ１０にプログラム９０３を実行させることにより実現されてもよいし、専用のハードウェアを含んで実現されてもよい。
【００４５】
＜３−１．並行処理総数取得部１１０＞
並行処理総数取得部１１０は、画像処理システム１００において、出力ジョブ８に係る変換処理を行わせる際の並行処理数（以下「並行処理総数Ｔ」という）の値を取得する。上述したとおり、画像処理システム１００においては、出力ジョブ８に係る変換処理を、最大並行処理総数Ｔmax以下の任意の数で並行処理させることができる。この実施の形態においては、並行処理総数取得部１１０は、オペレータが入力部１７を介して入力した任意の値（ただし、最大可能並行処理総数以下の任意の値）を並行処理総数Ｔとして受け付ける。つまり、オペレータは、最大並行処理総数Ｔmax以下の任意の値を並行処理総数Ｔとして指定することができる。
【００４６】
例えば、１個の出力ジョブ８をなるべく短時間で完了させたい場合、オペレータは、並行処理総数Ｔを最大並行処理総数Ｔmaxに設定すればよい。この場合、画像処理システム１００が備えるハードウェア資源の全体を利用して変換処理が行われるので、変換処理に要する時間を最大限まで短縮することができる。
【００４７】
また、複数の出力ジョブ８を画像処理システム１００において並行して処理したい場合、オペレータは、並行処理総数Ｔを最大並行処理総数Ｔmaxより小さな値に設定すればよい。この場合、画像処理システム１００が備えるハードウェア資源の一部のみを利用して変換処理が行われるので、残る部分を利用して別の出力ジョブ８に係る変換処理を行うことも可能となる。つまり、複数の出力ジョブ８に係る変換処理を並行して実行することができる。
【００４８】
＜３−２．適正値取得部１２０＞
適正値取得部１２０は、１個のタスク８１に含ませるページデータ５のページ数の適正範囲の上限値（上限ページ数Ｙmax）と、下限値（下限ページ数Ｙmin）とをそれぞれ取得する。具体的には、適正値取得部１２０は、上限ページ数Ｙmax、下限ページ数Ｙminの各値を、入力部１７を介してオペレータから受け付ける。
【００４９】
ここで、オペレータは、入稿データの解像度、演算処理装置２におけるＣＰＵ１１の処理能力、メモリ１４の容量等を考慮して、演算処理装置２が１個のタスク８１を例えば約５分以内で完了できるように、上限ページ数Ｙmaxの値を調整することが好ましい。例えば、入稿データの解像度が比較的高い場合は上限ページ数Ｙmaxの値を比較的小さい値に設定することが好ましい。また、演算処理装置２における処理能力が比較的高い場合は上限ページ数Ｙmaxの値を比較的大きい値に設定することができる。
【００５０】
また、オペレータは、入稿データに含まれるページデータ５のページ数等を考慮して、画像処理システム１００において変換処理の効率化が担保されるように下限ページ数Ｙminの値を調整することが好ましい。例えば、入稿データに含まれるページデータ５のページ数が比較的多い場合は解析処理８１１に要する時間も長くなるので、下限ページ数Ｙminの値を比較的大きい値に設定することが好ましい。
【００５１】
＜３−３．分割数決定部１３０＞
分割数決定部１３０は、出力ジョブ８に係る変換処理を何個のタスク８１に分割するかを決定する（すなわち、タスク分割数（以下単に「分割数Ｖ」という）を決定する）。分割数決定部１３０は、具体的には、並行処理総数取得部１１０が取得した並行処理総数Ｔと、適正値取得部１２０が取得したタスクページ数Ｙの適正範囲（下限ページ数Ｙmin、および、上限ページ数Ｙmax）と、出力ジョブ８のジョブページ数Ｘとに基づいて、分割数Ｖを算出する。
【００５２】
ただし、分割数決定部１３０は、ジョブページ数Ｘが比較的大きい場合（具体的には、ジョブページ数Ｘを並行処理総数Ｔで割った値が、下限ページ数Ｙmin以上の場合）、並行処理総数Ｔの自然数倍となる値であり、かつ、当該値でジョブページ数Ｘを割って得られる数が上限ページ数Ｙmax以下となるような値のうちで、最小の値を、分割数Ｖに決定する。つまり、この分割数Ｖは、当該分割数Ｖでジョブページ数Ｘを割った値が、上限ページ数Ｙmax以下であり、かつ上限ページ数Ｙmaxと比較的近くなるような値となっている。
【００５３】
また、ジョブページ数Ｘが比較的小さい場合（具体的には、ジョブページ数Ｘを並行処理総数Ｔで割った値が、下限ページ数Ｙminより小さい場合）、分割数決定部１３０は、ジョブページ数Ｘを下限ページ数Ｙminで割って得られる値（当該値に小数点以下の端数がある場合は、小数点を切り捨てた値）を、分割数Ｖに決定する。この場合、分割数Ｖは、並行処理総数Ｔよりも小さい値であり、かつ、当該分割数Ｖでジョブページ数Ｘを割った値が、下限ページ数Ｙmin、あるいは下限ページ数Ｙminよりも僅かに大きくなるような値となっている。
【００５４】
分割数決定部１３０が分割数Ｖを決定する処理の流れについて、図５を参照しながら説明する。図５は、当該処理の流れを示す図である。なお、後に明らかになるように、分割数決定部１３０が分割数Ｖを決定する処理を行うのに先立って、並行処理総数取得部１１０が並行処理総数Ｔを取得し、適正値取得部１２０が上限ページ数Ｙmax、および下限ページ数Ｙminを取得している。
【００５５】
分割数決定部１３０は、まず、並行処理総数取得部１１０から並行処理総数Ｔを取得する（ステップＳ１）。
【００５６】
続いて、分割数決定部１３０は、適正値取得部１２０からタスクページ数Ｙの適正範囲（下限ページ数Ｙmin、および、上限ページ数Ｙmax）を取得する（ステップＳ２）。
【００５７】
続いて、分割数決定部１３０は、画像処理システム１００に与えられた出力ジョブ８のジョブページ数Ｘを取得する（ステップＳ３）。
【００５８】
続いて、分割数決定部１３０は、倍数値「ｎ」（ただし、ｎは自然数）を「１」として、ステップＳ１で取得された並行処理総数Ｔをｎ倍した値を、仮分割数Ｖｉとして取得する（Ｖｉ＝１×Ｔ）（ステップＳ４）。すなわち、ここでは、分割数決定部１３０は、並行処理総数Ｔを仮分割数Ｖｉとして取得する。
【００５９】
そして、分割数決定部１３０は、ステップＳ３で取得されたジョブページ数Ｘを、ステップＳ４で取得された仮分割数Ｖｉで割った値を、仮タスクページ数Ｙｉとして取得する（Ｙｉ＝Ｘ／Ｖｉ）（ステップＳ５）。仮タスクページ数Ｙｉは、仮分割数Ｖｉでタスク分割して得られるＶｉ個のタスク８１に、ジョブページ数Ｘのページデータ５を均等分配した場合に、各タスク８１に含まれることになるページデータ５のページ数を近似的に表す値となっている。
【００６０】
続いて、分割数決定部１３０は、ステップＳ５で算出された仮タスクページ数Ｙｉが、下限ページ数Ｙmin以上であるか否かを判断する（ステップＳ６）。
【００６１】
仮タスクページ数Ｙｉが下限ページ数Ｙminよりも小さい場合（Ｙｉ＜Ｙmin）（ステップＳ６でＮＯ）、分割数決定部１３０は、ステップＳ３で取得されたジョブページ数Ｘを、ステップＳ２で取得された下限ページ数Ｙminで割って得られる値を、分割数Ｖに決定する（Ｖ＝Ｘ／Ｙmin）（ステップＳ７）。ただし、ジョブページ数Ｘを下限ページ数Ｙminで割って得られる値に小数点以下の端数がある場合は、小数点を切り捨てた値を分割数Ｖに決定する。ここで得られる分割数Ｖは、並行処理総数Ｔよりも小さい値であり、かつ、当該分割数Ｖでジョブページ数Ｘを割った値が、下限ページ数Ｙmin、あるいは、これより僅かに大きくなるような値となっている。
【００６２】
一方、仮タスクページ数Ｙｉが下限ページ数Ｙmin以上である場合（Ｙｉ≧Ｙmin）（ステップＳ６でＹＥＳ）、分割数決定部１３０は、さらに、当該仮タスクページ数Ｙｉが上限ページ数Ｙmax以下であるか否かを判断する（ステップＳ８）。
【００６３】
仮タスクページ数Ｙｉが上限ページ数Ｙmaxよりも大きい場合（Ｙｉ＞Ｙmax）（ステップＳ８でＮＯ）、分割数決定部１３０は、倍数値ｎを１だけ大きな値にインクリメントし（ステップＳ９）、並行処理総数Ｔをｎ倍した値を仮分割数Ｖｉとして取得する（Ｖｉ＝ｎ×Ｔ）（ステップＳ１０）。
【００６４】
そして、分割数決定部１３０は、ステップＳ３で取得されたジョブページ数Ｘを、ステップＳ１０で取得された仮分割数Ｖｉで割った値を、仮タスクページ数Ｙｉとして取得し（Ｙｉ＝Ｘ／Ｖｉ）（ステップＳ１１）、得られた仮タスクページ数Ｙｉが上限ページ数Ｙmax以下であるか否かを再び判断する（ステップＳ８）。
【００６５】
ここで、倍数値ｎの値が大きくなればなるほど、仮分割数Ｖｉ（ステップＳ１０で取得される値）は大きくなり、仮タスクページ数Ｙｉ（ステップＳ１１で取得される値）は小さくなる。したがって、倍数値ｎを１ずつ大きくしながらステップＳ９〜ステップＳ１１およびステップＳ８の処理を繰り返すと、何回目かの繰り返し処理を行った時点で、仮タスクページ数Ｙｉがはじめて上限ページ数Ｙmax以下となる。ただし、このときの仮タスクページ数Ｙｉは、必ず下限ページ数Ｙmin以上となっている。すなわち、上限ページ数Ｙmaxは下限ページ数Ｙminに比べて十分大きな値に設定されるので、ａ回目の繰り返し処理を行った時点で、仮タスクページ数Ｙｉがはじめて上限ページ数Ｙmax以下となった場合に、当該仮タスクページ数Ｙｉが下限ページ数Ｙminよりも小さくなっている、という事態は生じない。
【００６６】
仮タスクページ数Ｙｉが上限ページ数Ｙmax以下となった場合（ステップＳ８でＹＥＳ）、分割数決定部１３０は、当該仮タスクページ数Ｙｉを与えた仮分割数Ｖｉを分割数Ｖに決定する（ステップＳ１２）。ここで得られる分割数Ｖは、並行処理総数Ｔのｎ倍（ただし、ｎは自然数）となる値であり、かつ、当該分割数Ｖでジョブページ数Ｘを割って得られる値が上限ページ数Ｙmax以下となるような値のうちで、最小の値となっている。つまり、この分割数Ｖは、当該分割数Ｖでジョブページ数Ｘを割った値が、上限ページ数Ｙmax以下であり、かつ上限ページ数Ｙmaxと比較的近くなるような値となっている。
【００６７】
＜３−４．ページ数決定部１４０＞
再び図４を参照する。ページ数決定部１４０は、分割数決定部１３０が決定した分割数Ｖでタスク分割して得られるＶ個のタスク８１のそれぞれに何ページずつページデータ５を含ませるかを決定する（すなわち、各タスク８１のタスクページ数Ｙを決定する）。以下において、ページ数決定部１４０がＶ個のタスク８１それぞれのタスクページ数Ｙを決定する処理の態様を２つ説明する。ページ数決定部１４０は、どちらの態様でタスクページ数Ｙを決定してもよい。
【００６８】
＜第１の態様＞
ページ数決定部１４０が第１の態様でタスクページ数Ｙを決定する場合に実行する処理の流れについて、図６を参照しながら説明する。図６は、当該処理の流れを示す図である。なお、後に明らかになるように、ページ数決定部１４０がタスクページ数Ｙを決定する処理を行うのに先立って、並行処理総数取得部１１０が並行処理総数Ｔを取得し、適正値取得部１２０が上限ページ数Ｙmax、および下限ページ数Ｙminを取得している。また、適正値取得部１２０が分割数Ｖを決定している。
【００６９】
ページ数決定部１４０は、まず、画像処理システム１００に与えられた出力ジョブ８のジョブページ数Ｘを取得する（ステップＳ２１）。
【００７０】
続いて、ページ数決定部１４０は、分割数決定部１３０が決定した分割数Ｖを取得する（ステップＳ２２）。
【００７１】
続いて、ページ数決定部１４０は、ステップＳ２１で取得されたジョブページ数Ｘを、ステップＳ２２で取得された分割数Ｖで割って得られる値を算出し、当該算出した値を基本ページ数Ｊ１に決定する（ステップＳ２３）。ただし、ジョブページ数Ｘを分割数Ｖで割って得られる値に小数点以下の端数がある場合は、小数点を切り捨てた値（あるいは、小数点を切り上げた値）を基本ページ数Ｊ１に決定する。
【００７２】
続いて、ページ数決定部１４０は、ステップＳ２１で取得されたジョブページ数Ｘから、ステップＳ２３で算出された基本ページ数Ｊ１にステップＳ２２で取得された分割数Ｖより１小さい値（Ｖ−１）を乗じた値を差し引いた値を算出し、これを調整ページ数Ｊ２として取得する（Ｊ２＝Ｘ−Ｊ１×（Ｖ−１））（ステップＳ２４）。
【００７３】
続いて、ページ数決定部１４０は、Ｖ個のタスク８１のうち、（Ｖ−１）個の各タスク８１のタスクページ数Ｙを、ステップＳ２３で算出された基本ページ数Ｊ１に決定する。さらに、残りの１個のタスク８１のタスクページ数Ｙを、ステップＳ２４で算出された調整ページ数Ｊ２に決定する（ステップＳ２５）。
【００７４】
以上の一連の処理によって、Ｖ個のタスク８１それぞれのタスクページ数Ｙが決定される。なお、ステップＳ２３の処理において、ジョブページ数Ｘを分割数Ｖで割って得られる値に小数点以下の端数がなかった場合、調整ページ数Ｊ２は基本ページ数Ｊ１と等しい値となる。つまり、この場合は、Ｖ個のタスク８１の全てに同じページ数のページデータ５が割り当てられることになる。一方、ステップＳ２３の処理において、ジョブページ数Ｘを分割数Ｖで割って得られる値から小数点を切り捨てた値を基本ページ数Ｊ１としている場合、調整ページ数Ｊ２は基本ページ数Ｊ１よりも大きな値となる。つまり、この場合は、（Ｖ−１）個のタスク８１の全てに同じページ数のページデータ５が割り当てられ、残りの１個のタスク８１には他のタスク８１よりも多いページ数のページデータ５が割り当てられることになる。逆に、ステップＳ２３の処理において、ジョブページ数Ｘを分割数Ｖで割って得られる値から小数点を切り上げた値を基本ページ数Ｊ１としている場合、調整ページ数Ｊ２は基本ページ数Ｊ１よりも小さな値となる。つまり、この場合は、（Ｖ−１）個のタスク８１の全てに同じページ数のページデータ５が割り当てられ、残りの１個のタスク８１には他のタスク８１よりも少ないページ数のページデータ５が割り当てられることになる。このように、上記の一連の処理によると、出力ジョブ８に含まれるページデータ５はＶ個のタスク８１にほぼ均等に分配され、余剰分（不足分）がある場合は１個のタスク８１で吸収されることになる。
【００７５】
上述したとおり、分割数Ｖは、当該分割数Ｖでジョブページ数Ｘを割った値（すなわち、当該分割数Ｖでタスク分割して得られるＶ個のタスク８１に、ジョブページ数Ｘのページデータ５を均等分配した場合に、各タスク８１に含まれることになるページデータ５のページ数を近似的に表す値）が、適正範囲内（すなわち、下限ページ数Ｙmin以上でありかつ、上限ページ数Ｙmax以下）となるような値となっている。したがって、基本ページ数Ｊ１、および、調整ページ数Ｊ２は、いずれも、ほぼ調整範囲内におさまるものとなっている。具体的には、ジョブページ数Ｘが比較的大きい場合（具体的には、ジョブページ数Ｘを並行処理総数Ｔで割った値が、下限ページ数Ｙmin以上の場合）は、分割数Ｖは、当該分割数Ｖでジョブページ数Ｘを割った値が上限ページ数Ｙmax以下であり、かつ、上限ページ数Ｙmaxと比較的近くなるような値に決定されている。したがって、基本ページ数Ｊ１、および調整ページ数Ｊ２はいずれも、上限ページ数Ｙmax付近の値となる。また、ジョブページ数Ｘが比較的小さい場合（具体的には、ジョブページ数Ｘを並行処理総数Ｔで割った値が、下限ページ数Ｙminより小さい場合）は、分割数Ｖは、当該分割数Ｖでジョブページ数Ｘを割った値が下限ページ数Ｙmin、あるいは、これより僅かに大きくなるような値に決定されている。したがって、基本ページ数Ｊ１、および調整ページ数Ｊ２はいずれも、下限ページ数Ｙmin、あるいは、下限ページ数Ｙminより僅かに大きな値となる。
【００７６】
＜第２の態様＞
第２の態様においては、ページ数決定部１４０は、ページデータ５のセット数Ｆを考慮しながらタスクページ数Ｙを決定する。ただし、「ページデータ５のセット数Ｆ」とは、出力装置３が１個の記録媒体に対して丁付けするページデータ５のページ数であり、一般に、記録媒体（例えば、印刷対象用紙）内に割り付けるページ数の整数倍で表される数値となる。例えば、出力装置３が１個の記録媒体（例えば、印刷対象用紙）に対して４丁付けで印刷を行う場合、ページデータ５のセット数Ｆは、「４」となる。ジョブページ数Ｘは、原則としてセット数Ｆの整数倍となっている。
【００７７】
ページ数決定部１４０が第２の態様でタスクページ数Ｙを決定する場合に実行する処理の流れについて、図７を参照しながら説明する。図７は、当該処理の流れを示す図である。
【００７８】
ページ数決定部１４０は、まず、画像処理システム１００に与えられた出力ジョブ８のジョブページ数Ｘを取得する（ステップＳ３１）。
【００７９】
続いて、ページ数決定部１４０は、分割数決定部１３０が決定した分割数Ｖを取得する（ステップＳ３２）。
【００８０】
続いて、ページ数決定部１４０は、ステップＳ３１で取得されたジョブページ数Ｘを、ステップＳ３２で取得された分割数Ｖで割って得られる値を算出する（ステップＳ３３）。ただし、ジョブページ数Ｘを分割数Ｖで割って得られる値に小数点以下の端数がある場合は、小数点を切り捨てる（あるいは、小数点を切り上げる）端数処理をさらに行う。
【００８１】
続いて、ページ数決定部１４０は、ステップＳ３３で算出された値が、セット数Ｆの整数倍となっているか否かを判断する（ステップＳ３４）。
【００８２】
ステップＳ３３で算出された値がセット数Ｆの整数倍となっている場合（ステップＳ３４でＹＥＳ）、ページ数決定部１４０は、当該算出された値を基本ページ数Ｊ１に決定する（ステップＳ３５）。
【００８３】
一方、ステップＳ３３で算出された値がセット数Ｆの整数倍となっていない場合（ステップＳ３４でＮＯ）、ページ数決定部１４０は、当該算出された値と最も近く、かつ、セット数Ｆの整数倍となるような値を特定して、これを基本ページ数Ｊ１に決定する（ステップＳ３６）。
【００８４】
基本ページ数Ｊ１が決定された以降の処理は、第１の態様と同様である。すなわち、ページ数決定部１４０は、ジョブページ数Ｘから、ステップＳ３５、あるいはステップＳ３６で決定された基本ページ数Ｊ１に分割数Ｖより１小さい値（Ｖ−１）を乗じた値を差し引いた値を算出し、これを調整ページ数Ｊ２として取得する（ステップＳ３７）。上述したとおり、ジョブページ数Ｘは原則としてセット数Ｆの整数倍となっているので、基本ページ数Ｊ１がセット数Ｆの整数倍であれば調整ページ数Ｊ２もセット数Ｆの整数倍となる。
【００８５】
続いて、ページ数決定部１４０は、Ｖ個のタスク８１のうち、（Ｖ−１）個の各タスク８１のタスクページ数Ｙを、ステップＳ３５、あるいはステップＳ３６で決定された基本ページ数Ｊ１に決定する。さらに、残りの１個のタスク８１のタスクページ数Ｙを、ステップＳ３７で算出された調整ページ数Ｊ２に決定する（ステップＳ３８）。
【００８６】
以上の一連の処理によって、Ｖ個のタスク８１それぞれのタスクページ数Ｙが決定される。上記の一連の処理においても、出力ジョブ８に含まれるページデータ５はＶ個のタスク８１にほぼ均等に分配され、余剰分（不足分）がある場合は１のタスク８１で吸収されることになる。また、分割数Ｖは、当該分割数Ｖでジョブページ数Ｘを割った値が、適正範囲内となるような値となっているので、基本ページ数Ｊ１、および調整ページ数Ｊ２はいずれも、ほぼ調整範囲内におさまるものとなっている。
【００８７】
さらに、上記の一連の処理によると、Ｖ個のタスク８１のそれぞれに割り当てられるタスクページ数Ｙは、いずれもセット数Ｆの整数倍となる。この構成によると、各演算処理装置２において、セット数Ｆの整数倍毎にまとまった中間データが生成されることになるので、出力装置３は、各タスク８１により得られた中間データを記録媒体へそのまま出力することができる。すなわち、変換処理された中間データを記録媒体へ出力する一連の処理をスムースに行うことができる。
【００８８】
＜３−５．タスク分配部１５０＞
再び図４を参照する。タスク分配部１５０は、ページ数決定部１４０により決定されたページ数分のページデータ５がそれぞれ割り当てられたＶ個のタスク８１を、複数の演算処理装置２に分配する。
【００８９】
上述したとおり、タスク８１の分割数Ｖは、並行処理総数Ｔの自然数倍、あるいは、並行処理総数Ｔより小さい値となっている。
【００９０】
タスク８１の分割数Ｖが並行処理総数Ｔの自然数倍（並行処理総数Ｔ×倍数値ｎ（ただし、ｎは自然数））の場合、タスク分配部１５０は、各演算処理装置２に、当該演算処理装置２の並行処理数に倍数値ｎを乗じた個数のタスク８１を分配する。例えば、並行処理数が「１」（すなわち、マルチタスク実行不可能）の演算処理装置２には「ｎ個」のタスク８１を分配し、並行処理数が「２」の演算処理装置２には「２ｎ個」のタスク８１を分配する。
【００９１】
このように、タスク８１の分割数Ｖが並行処理総数Ｔの自然数倍である場合は、タスク分配部１５０が各演算処理装置２に当該演算処理装置２の並行処理数のｎ倍の個数のタスク８１を分配するので、複数の演算処理装置２はいずれも、自装置の並行処理数のｎ倍のタスク８１を実行することになる。したがって、複数の演算処理装置２は、ほぼ同時に与えられた全てのタスク８１を終了することになる。
【００９２】
一方、タスク８１の分割数Ｖが並行処理総数Ｔより小さい場合、タスク分配部１５０は、各演算処理装置２に、当該演算処理装置２の並行処理数以下の個数のタスク８１を分配する。具体的には、タスク分配部１５０は、例えば、複数の演算処理装置２の全てに１個ずつタスク８１を分配し、残ったタスク８１を並行処理数が２以上である演算処理装置２のそれぞれに１個ずつ分配していく。そして、さらに残ったタスク８１を並行処理数が３以上である演算処理装置２のそれぞれに１個ずつ分配していく。この場合、複数のタスク８１は全ての演算処理装置２に、当該演算処理装置２の並行処理数に応じた重み付けをして分配されることになる。なお、タスク分配部１５０は、複数の演算処理装置２のそれぞれに、当該演算処理装置２の並行処理数分のタスク８１を分配していってもよい。この場合、タスク８１が分配されない演算処理装置２が出てくることもある。
【００９３】
このように、タスク８１の分割数Ｖが並行処理総数Ｔよりも小さい場合は、タスク分配部１５０が各演算処理装置２に当該演算処理装置２の並行処理数以下の個数のタスク８１を分配するので、複数の演算処理装置２はいずれも、自装置の並行処理数以下の個数のタスク８１を実行することになる。したがって、この場合も、複数の演算処理装置２は、ほぼ同時に与えられた全てのタスク８１を終了することになる。
【００９４】
＜４．画像処理システム１００における処理の流れ＞
画像処理システム１００に出力ジョブ８が与えられた場合に、画像処理システム１００が実行する処理の流れについて、図８を参照しながら説明する。図８は、画像処理システム１００に出力ジョブ８が与えられた際に実行される処理の流れを示す図である。なお、以下においては、画像処理システム１００に、ジョブページ数Ｘが比較的大きい出力ジョブ８ａが与えられた場合と、ジョブページ数Ｘが比較的小さい出力ジョブ８ｂが与えられた場合とのそれぞれについて、具体的な数値を例示しながら説明する。
【００９５】
＜４−１．ジョブページ数Ｘが比較的大きい出力ジョブ８ａが与えられた場合＞
ジョブページ数Ｘが比較的大きい出力ジョブ８ａが与えられた場合の処理の流れについて、図８、図９を参照しながら説明する。図９は、当該処理の流れを説明するための図である。以下の説明では、画像処理システム１００は、並行処理数が「３」である３個の演算処理装置２と、並行処理数が「２」である１個の演算処理装置２とを備えるとする。
【００９６】
クライアント装置９００から画像処理システム１００に出力ジョブ８ａが与えられると、管理装置１が当該出力ジョブ８を受け付ける（ステップＳ１０１）。この例では、ジョブページ数Ｘが「１０万」の出力ジョブ８ａが与えられたとする。
【００９７】
続いて、並行処理総数取得部１１０が、並行処理総数Ｔを取得する（ステップＳ１０２）。オペレータは、画像処理システム１００の最大並行処理総数Ｔmax「１１」以下の任意の数値を並行処理総数Ｔとして指定することができる。いま、オペレータが入力部１７を介して、最大並行処理総数Ｔmax「１１」を並行処理総数Ｔに指定したとする。この場合、並行処理総数取得部１１０は、指定された値「１１」を並行処理総数Ｔとして取得する。
【００９８】
続いて、適正値取得部１２０が、上限ページ数Ｙmaxおよび下限ページ数Ｙminの各値を取得する（ステップＳ１０３）。いま、オペレータが入力部１７を介して、下限ページ数Ｙminを「５００」と、上限ページ数Ｙmaxを「２０００」と、それぞれ指定したとする。この場合、適正値取得部１２０は、指定された値「５００」を下限ページ数Ｙminとして、値「２０００」を上限ページ数Ｙmaxとして、それぞれ取得する。
【００９９】
続いて、分割数決定部１３０が、ステップＳ１０１で受け付けられた出力ジョブ８ａの分割数Ｖを決定する（ステップＳ１０４）。分割数決定部１３０が分割数Ｖを決定する処理の流れは上述したとおりである（図５参照）。今回の例の場合、倍数値ｎを「１」とした場合の仮分割数Ｖｉは「１１（＝１×１１）」となり（ステップＳ４）、この仮分割数Ｖｉ「１１」が与える仮タスクページ数Ｙｉは「９０９０．９０・・（＝１０万／１１）」となる（ステップＳ５）。この仮タスクページ数Ｙｉは、上限ページ数Ｙmax「２０００」よりも大きいので（ステップＳ８でＮＯ）、分割数決定部１３０は、倍数値ｎを１ずつ大きくしながらステップＳ９〜ステップＳ１１およびステップＳ８の処理を繰り返す。すると、倍数値を「５」とした場合に、仮分割数Ｖｉが「５５（＝５×１１）」となり（ステップＳ１０）、この仮分割数Ｖｉ「５５」が与える仮タスクページ数Ｙｉは「１８１８．１８・・（＝１０万／５５）」となる（ステップＳ１１）。すなわち、上限ページ数Ｙmax「２０００」よりも小さい仮タスクページ数Ｙｉがはじめて得られる（ステップＳ８でＹＥＳ）。したがって、分割数決定部１３０は、当該仮タスクページ数Ｙｉを与えた仮分割数Ｖｉ「５５」を分割数Ｖに決定する（ステップＳ１２）。ここで得られる分割数Ｖ「５５」は、並行処理総数Ｔ「１１」の５倍であり、かつ、当該分割数Ｖ「５５」でジョブページ数Ｘ「１０万」を割った値「１８１８．１８・・」が上限ページ数Ｙmax「２０００」以下であり、当該値と比較的近くなるような値となっている。また、分割数Ｖ「５５」は、並行処理総数Ｔの自然数倍となる値であり、かつ、当該値でジョブページ数Ｘを割った数値が上限ページ数Ｙmaxを超えない値のうちで、最小の値である。
【０１００】
分割数Ｖが決定されると、続いて、ページ数決定部１４０が、ステップＳ１０４で決定された分割数Ｖでタスク分割して得られるＶ個のタスク８１のそれぞれのタスクページ数Ｙを決定する（ステップＳ１０５）。ページ数決定部１４０がタスクページ数Ｙを決定する処理の流れは上述したとおりである（図６、図７参照）。今回の例の場合、ページ数決定部１４０は、例えば、ジョブページ数Ｘ「１０万」を分割数Ｖ「５５」で割って得られる値「１８１８．１８・・・」の小数点を切り捨てた値「１８１８」を、基本ページ数Ｊ１に決定し（ステップＳ２３）、さらに、調整ページ数Ｊ２を「１８２８（＝１０万−１８１８×５４）」と算出する（ステップＳ２４）。そして、ページ数決定部１４０は、５５個のタスク８１のうち５４個の各タスク８１のタスクページ数Ｙを基本ページ数Ｊ１「１８１８」に決定し、残りの１個のタスク８１のタスクページ数Ｙを調整ページ数Ｊ２「１８２８」に決定する（ステップＳ２５）。なお、ここでは、ページ数決定部１４０は、第１の態様でタスクページ数Ｙを決定したが、第２の態様でタスクページ数Ｙを決定してもよい。
【０１０１】
各タスク８１のタスクページ数Ｙが決定されると、続いて、タスク分配部１５０が、ステップＳ１０５で決定されたページ数分のページデータ５がそれぞれ割り当てられたＶ個のタスク８１を、複数の演算処理装置２に分配する（ステップＳ１０６）。タスク分配部１５０がタスク８１を分配する態様は上述したとおりである。今回の例の場合、タスク８１の分割数Ｖ「５５」が並行処理総数Ｔ「１１」の５倍となっている。したがって、タスク分配部１５０は、各演算処理装置２に、当該演算処理装置２の並行処理数に倍数値ｎ「５」を乗じた個数のタスク８１を分配する。すなわち、並行処理数が「３」である３個の演算処理装置２のそれぞれには、タスク８１を１５個与える。また、並行処理数が「２」である１個の演算処理装置２には、タスク８１を１０個与える。
【０１０２】
続いて、複数の演算処理装置２のそれぞれが、自装置に与えられたタスク８１を実行する（ステップＳ１０７）。今回の例の場合、並行処理数が「３」の各演算処理装置２は１５個のタスク８１を３並行処理にて実行することになり、並行処理数が「２」の各演算処理装置２は１０個のタスク８１を２並行処理にて実行することになる。したがって、複数の演算処理装置２は、ほぼ同時に与えられた全てのタスク８１を終了することになる。
【０１０３】
各演算処理装置２がタスク８１を実行することにより生成された中間データは、次々と出力装置３に送られる。出力装置３は、各演算処理装置２から取得した中間データを、記録媒体に出力する（ステップＳ１０８）。これによって、画像処理システム１００に与えられた出力ジョブ８ａが完了する。
【０１０４】
＜４−２．ジョブページ数Ｘが比較的小さい出力ジョブ８ｂが与えられた場合＞
ジョブページ数Ｘが比較的小さい出力ジョブ８ｂが与えられた場合の処理の流れについて、図８、図１０を参照しながら説明する。図１０は、当該処理の流れを説明するための図である。以下の説明においても、上記の説明と同様、画像処理システム１００は、並行処理数が「３」である３個の演算処理装置２と、並行処理数が「２」である１個の演算処理装置２とを備えるとする。
【０１０５】
クライアント装置９００から画像処理システム１００に出力ジョブ８ｂが与えられると、管理装置１が当該出力ジョブ８を受け付ける（ステップＳ１０１）。この例では、ジョブページ数Ｘが「２０００」の出力ジョブ８ｂが与えられたとする。
【０１０６】
続いて、並行処理総数取得部１１０が、並行処理総数Ｔを取得する（ステップＳ１０２）。上記の例と同様、今回も、値「１１」が並行処理総数Ｔとして取得されたとする。
【０１０７】
続いて、適正値取得部１２０が、上限ページ数Ｙmaxおよび下限ページ数Ｙminの各値を取得する（ステップＳ１０３）。上記の例と同様、今回も、値「５００」が下限ページ数Ｙminとして、値「２０００」が上限ページ数Ｙmaxとして、それぞれ取得されたとする。
【０１０８】
続いて、分割数決定部１３０が、ステップＳ１０１で受け付けられた出力ジョブ８ｂの分割数Ｖを決定する（ステップＳ１０４）。分割数決定部１３０が分割数Ｖを決定する処理の流れは上述したとおりである（図５参照）。今回の例の場合、倍数値ｎを「１」とした場合の仮分割数Ｖｉは「１１（＝１×１１）」となり（ステップＳ４）、この仮分割数Ｖｉ「１１」が与える仮タスクページ数Ｙｉは「１８１．８１・・（＝２０００／１１）」となる（ステップＳ５）。この仮タスクページ数Ｙｉは、下限ページ数Ｙmin「５００」よりも小さい。したがって、分割数決定部１３０は、ジョブページ数Ｘ「２０００」を下限ページ数Ｙmin「５００」で割って得られる値「４」を、分割数Ｖに決定する（ステップＳ７）。ここで得られる分割数Ｖ「４」は、並行処理総数Ｔ「１１」よりも小さい値であり、かつ、当該分割数Ｖ「４」でジョブページ数Ｘ「２０００」を割った値「５００」が、下限ページ数Ｙmin「５００」となるような値となっている。
【０１０９】
分割数Ｖが決定されると、続いて、ページ数決定部１４０が、ステップＳ１０４で決定された分割数Ｖでタスク分割して得られるＶ個のタスク８１のそれぞれのタスクページ数Ｙを決定する（ステップＳ１０５）。ページ数決定部１４０がタスクページ数Ｙを決定する処理の流れは上述したとおりである（図６、図７参照）。今回の例の場合、ページ数決定部１４０は、ジョブページ数Ｘ「２０００」を分割数Ｖ「４」で割って得られる値「５００」を基本ページ数Ｊ１に決定し（ステップＳ２３）、さらに、調整ページ数Ｊ２を「５００（＝２０００−５００×３）」と算出する（ステップＳ２４）。ここでは、基本ページ数Ｊ１と調整ページ数Ｊ２とが等しい値であるので、ページ数決定部１４０は、４個のタスク８１のそれぞれのタスクページ数Ｙを「５００」に決定する（ステップＳ２５）。なお、ここでは、ページ数決定部１４０は、第１の態様でタスクページ数Ｙを決定したが、第２の態様でタスクページ数Ｙを決定してもよい。
【０１１０】
各タスク８１のタスクページ数Ｙが決定されると、続いて、タスク分配部１５０が、ステップＳ１０５で決定されたページ数分のページデータ５がそれぞれ割り当てられたＶ個のタスク８１を、複数の演算処理装置２に分配する（ステップＳ１０６）。タスク分配部１５０がタスク８１を分配する態様は上述したとおりである。今回の例の場合、タスク８１の分割数Ｖ「４」が並行処理総数Ｔ「１１」より小さい値となっている。したがって、タスク分配部１５０は、各演算処理装置２に、当該演算処理装置２の並行処理数以下の個数のタスク８１を分配する。例えば、４個の演算処理装置２のそれぞれに、タスク８１を１個ずつ与える。この場合、タスク８１は全ての演算処理装置２に分配されることになる。
【０１１１】
続いて、複数の演算処理装置２のそれぞれが、自装置に与えられたタスク８１を実行する（ステップＳ１０７）。今回の例の場合、複数の演算処理装置２は、いずれも、その並行処理数以下の個数のタスク８１を実行することになる。したがって、複数の演算処理装置２は、ほぼ同時に与えられた全てのタスク８１を終了することになる。
【０１１２】
各演算処理装置２がタスク８１を実行することにより生成された中間データは、次々と出力装置３に送られる。出力装置３は、各演算処理装置２から取得した中間データを、記録媒体に出力する（ステップＳ１０８）。これによって、画像処理システム１００に与えられた出力ジョブ８ｂが完了する。
【０１１３】
＜５．効果＞
上記の実施の形態に係る画像処理システム１００によると、出力ジョブ８に係る変換処理が適切な個数のタスク８１に分割されるので、変換処理の安定性を担保しつつ、画像処理システム１００が備えるハードウェア資源を効率的に利用して変換処理に要する時間を効果的に短縮することができる。この点について、２種類の比較例を用いて説明する。
【０１１４】
出力ジョブ８に係る変換処理をタスク分割方法として、変換処理を画像処理システムの並行処理総数で分割するものが考えられる（第１の方法）。また、各タスク８１に含ませるページデータ５のページ数を、１個のタスク８１に含ませるページデータ５のページ数の上限値（以下、「固定ページ数」という）に固定する方法も考えられる（第２の方法）。
【０１１５】
第１の方法でタスク分割すると（すなわち、画像処理システムの並行処理総数でタスク分割すると）、図１１、図１２の左側に示されるように、並行処理総数と同じ個数のタスク８１が得られるので、各演算処理装置２’においてほぼ同時にタスク８１が終了する。したがって、システムが備えるハードウェア資源を無駄なく利用して変換処理に要する時間を短縮することができる。しかしながら、この方法によると、ジョブページ数Ｘが比較的大きい場合（図１１に示す場合）、１個のタスク８１に含まれるページデータ５のページ数が大きくなってしまうため、タスク管理が困難となり、安定したタスク８１の実行が担保されないという問題がある。また、ジョブページ数Ｘが比較的小さい場合（図１２に示す場合）、１個のタスク８１に含まれるページデータ５のページ数が極端に小さくなってしまう可能性が高い。この場合、ラスタライズ処理８１２対して解析処理８１１に要する時間の比率が大きくなるため、上述したとおり、タスク分割により変換処理の効率が逆に低下してしまうおそれがある。
【０１１６】
一方、第２の方法でタスク分割すると（すなわち、ジョブページ数Ｘを固定ページ数毎にタスク分割すると）、図１１、図１２の右側に示されるように、１個のタスク８１に含まれるページデータ５のページ数が大きくなりすぎることはないので、安定したタスク８１の実行が担保される。しかしながらこの方法によると、ジョブページ数Ｘが比較的大きい場合（図１１に示す場合）、画像処理システムの並行処理総数よりも大きく、かつ、当該並行処理総数とは無関係な個数のタスク８１が得られることになってしまう。したがって、複数の演算処理装置２’における一部のハードウェア資源が遊んでしまう時間Ｑが発生する可能性が高くなり、システムが備えるハードウェア資源を無駄なく利用できない。その結果、変換処理に要する時間を効果的に短縮できない。また、ジョブページ数Ｘが比較的小さい場合（図１２に示す場合）、得られるタスク８１の総数が小さくなるため、複数の演算処理装置２’のうちのごく一部のハードウェア資源しか利用されず、変換処理に要する時間を効果的に短縮できない。
【０１１７】
これに対し、上記の実施の形態によると、ジョブページ数Ｘが比較的大きい場合（具体的には、下限ページ数Ｙminに並行処理総数Ｔを乗じた値以上の場合）（図９参照）、分割数Ｖは、第１に、並行処理総数Ｔの自然数倍となっている。分割数Ｖが画像処理システムの並行処理総数Ｔの自然数倍とされることによって、各演算処理装置２のハードウェア資源が遊んでしまう時間Ｑが発生しない。したがって、システムが備えるハードウェア資源を無駄なく利用して、変換処理に要する時間を効果的に短縮できる。また、分割数Ｖは、第２に、ジョブページ数Ｘを当該分割数Ｖで割った値が上限ページ数Ｙmax以下となるような値とされるので、タスク管理が容易であり、変換処理の安定性が担保される。さらに、分割数Ｖがこれら第１、第２の各要件を満たす最小の値とされるので、分割数Ｖが無秩序に増加することによる変換処理の効率低下が防止される。つまり、変換処理の安定性を担保しつつ、画像処理システム１００が備えるハードウェア資源を有効に利用して変換処理に要する時間を効果的に短縮することができる。
【０１１８】
また、上記の実施の形態によると、ジョブページ数Ｘが比較的小さい場合（具体的には、下限ページ数Ｙminに並行処理総数Ｔを乗じた値より小さい場合）（図１０参照）、分割数Ｖは、ジョブページ数Ｘを下限ページ数Ｙminで割って得られる値とされる。この場合、分割数Ｖは、並行処理総数Ｔよりも小さい値であり、かつ、当該分割数Ｖでジョブページ数Ｘを割った値が、下限ページ数Ｙmin、あるいは、下限ページ数Ｙminよりも僅かに大きくなるような値に決定されることになる。したがって、分割数Ｖが増加することによる変換処理の効率低下を防止しつつ、タスクページ数Ｙをできるだけ小さな値に抑える（すなわち、分割数Ｖをできるだけ大きくする）ことによって、画像処理システム１００が備えるハードウェア資源をできるだけ有効に利用して変換処理に要する時間を短縮することができる。
【０１１９】
＜６．変形例＞
上記の実施の形態において、分割数決定部１３０は、仮分割数Ｖｉの下で算出された仮タスクページ数Ｙｉが上限ページ数Ｙmaxよりも大きい場合、当該倍数値ｎは不適であると判断して、倍数値ｎを１だけ大きな値にインクリメントして新たな仮分割数Ｖｉを取得していた（図５のステップＳ９〜ステップＳ１１）。
【０１２０】
ここで、ある倍数値ｎに係る仮分割数Ｖｉの下で算出された仮タスクページ数Ｙｉが上限ページ数Ｙmaxよりも大きい場合であっても、上限ページ数Ｙmaxとあまり差がない場合（例えば、仮タスクページ数Ｙｉと上限ページ数Ｙmaxとの差が、下限ページ数Ｙmin以下である場合）、当該仮分割数Ｖｉを適切と判断してもよい。すなわち、仮タスクページ数Ｙｉが上限ページ数Ｙmaxよりも僅かに大きい場合は、例外的に、適正値取得部１２０が上限ページ数Ｙmaxとして取得した値よりも僅かに大きな値（例えば、当該上限ページ数Ｙmaxに下限ページ数Ｙminを加えた値）を上限ページ数Ｙmaxとみなして、仮タスクページ数Ｙｉが適切か否かの判断を行ってもよい。この変形例によると、上限ページ数Ｙmaxよりも僅かに大きい仮タスクページ数Ｙｉを与えるような仮分割数Ｖｉが存在する場合は、当該仮分割数Ｖｉが例外的に分割数に決定されることになる。
【０１２１】
この変形例によると、実質的に妥当な分割数Ｖを得ることができる。例えば、並行処理総数取得部１１０が取得した並行処理総数Ｔが「５」であり、適正値取得部１２０が取得した下限ページ数Ｙminが「１００」であり、上限ページ数Ｙmaxが「１０００」であるとする。この状況において、ジョブページ数Ｘが「１００２０」の出力ジョブ８が与えられたとすると、倍数値ｎを「２」とした場合の仮分割数Ｖｉは「１０（＝２×５）」となり、この仮分割数Ｖｉ「１０」が与える仮タスクページ数Ｙｉは「１００２（＝１００２０／１０）」となる。この仮タスクページ数Ｙｉは、適正値取得部１２０が取得している上限ページ数Ｙmax「１０００」よりも僅かに大きい。したがって、上記の実施の形態に係る処理態様であれば、分割数決定部１３０は倍数値ｎ「３」を適切な値と判断し、分割数Ｖを「１５」と決定する。この場合、当該分割数Ｖでタスク分割して得られる１５個のタスク８１のタスクページ数Ｙは「６６８」となる。一方、この変形例に係る処理態様であれば、分割数決定部１３０は、仮タスクページ数Ｙｉが「１００２」となった場合は、上限ページ数Ｙmaxを例外的に「１１００」とみなして、当該仮タスクページ数Ｙｉ「１００２」に肯定的評価を与える。したがって、倍数値ｎ「２」を適切な値と判断し、分割数Ｖを「１０」と決定する。この場合、当該分割数Ｖでタスク分割した場合の各タスク８１のタスクページ数Ｙは「１００２」となる。上述したとおり、タスクページ数Ｙは、適正値取得部１２０が取得した上限ページ数Ｙmax「１０００」の付近であることが最も好ましく、上限ページ数Ｙmax「１０００」よりも僅かに大きくなっても問題はない。この変形例においては、上限ページ数Ｙmaxを場合によって柔軟に変更することによって、画像処理システム１００の処理効率を効果的に高めることができる。
【０１２２】
また、上記の実施の形態においては、並行処理総数取得部１１０は、オペレータからの入力に基づいて並行処理総数Ｔを取得していたが、並行処理総数取得部１１０は、例えば、各演算処理装置２のハードウェアリソースに関する情報（例えば、メモリ１４の容量、ＣＰＵ１１のクロック数等）に基づいて、画像処理システム１００の最大並行処理総数Ｔmaxを特定して、これを並行処理総数Ｔとして取得する構成としてもよい。この場合、画像処理システム１００が備えるハードウェア資源の全体を利用して変換処理が行われるので、変換処理に要する時間を最大限まで短縮することができる。
【０１２３】
また、上記の実施の形態においては、分割数Ｖを決定する際に、ジョブページ数Ｘが比較的小さい場合（具体的には、ジョブページ数Ｘを並行処理総数Ｔで割った値が、下限ページ数Ｙminより小さい場合）を考慮していたが、ジョブページ数Ｘが並行処理総数Ｔに対して十分に大きいことが明白である場合（例えば、専ら大サイズの入稿データが受け付けられる画像処理システム１００の場合）には、ジョブページ数Ｘが比較的小さい場合を考慮しないで分割数Ｖを決定することも可能である。具体的には、図５のステップＳ６〜ステップＳ７の処理を省略することも可能である。なお、この場合は、ステップＳ２において上限ページ数Ｙmaxだけを取得すればよい。すなわち、適正値取得部１２０は上限ページ数Ｙmaxの値を取得すれば足りる。
【符号の説明】
【０１２４】
１  管理装置
２  演算処理装置
３  出力装置
１００  画像処理システム
１１０  並行処理総数取得部
１２０  適正値取得部
１３０  分割数決定部
１４０  ページ数決定部
１５０  タスク分配部
【図１】
2012208761.tif 000003
【図２】
2012208761.tif 000004
【図３】
2012208761.tif 000005
【図４】
2012208761.tif 000006
【図５】
2012208761.tif 000007
【図６】
2012208761.tif 000008
【図７】
2012208761.tif 000009
【図８】
2012208761.tif 000010
【図９】
2012208761.tif 000011
【図１０】
2012208761.tif 000012
【図１１】
2012208761.tif 000013
【図１２】
2012208761.tif 000014