Patent Description:
<CIT> discloses a distributed printing system including a printing apparatus and a plurality of client computers using the printing apparatus. Each of the plurality of client computers includes an acceptance unit that accepts an input of a print instruction of print data from a user, and an address information acquisition unit that inquires the printing apparatus of address information of the plurality of client computers and acquires the address information, in a case where the print instruction is input. Further, each of the plurality of client computers includes a division unit that divides print data into a plurality of pieces of division data, and a distribution unit that distributes the plurality of pieces of division data to a destination designated by the address information of the plurality of client computers. Further, each of the plurality of client computers includes a reception unit that receives division data from another client computer, a generation unit that rasterizes the received division data to generate a divided printing job, and a transmission unit that transmits the generated divided printing job to the printing apparatus. Further, the printing apparatus includes an address information notification unit that notifies the address information acquisition unit of address information of the plurality of client computers, in response to an inquiry from the address information acquisition unit, and a reception unit that receives a divided printing job. Further, the printing apparatus includes a printing unit that prints the divided printing jobs received by the reception unit in an order within the print data indicated by the division data. <CIT> discloses a print document processing system including a cache apparatus and plural data processing apparatuses. The cache apparatus includes a cache memory, a state memory, and a first response providing unit. Each data processing apparatus includes an image data creating unit, a query unit, and a controller. The cache memory stores image data created by each data processing apparatus. Upon receipt of a query issued by the query unit on image data of a document element, the first response providing unit provides a CREATING response if a state stored in the state memory in association with the image data indicates that the image data is not in the cache memory and is currently being created by any other data processing apparatus. Upon receipt of the CREATING response, the controller performs control to use the image data after created or cause the image data creating unit to create the image data. <CIT> discloses a control apparatus including a first predicting unit configured to predict a rasterizing time for each of predetermined units of processing of a first print job, an allocating unit configured to allocate a plurality of divided jobs acquired by dividing the first print job into the units of the processing to a plurality of rasterizing units, an acquiring unit configured to acquire an actual value of a rasterization speed of each of the rasterizing units, and a second predicting unit configured to predict completion times of rasterization processing of a second print job in each of the rasterizing units based on the actual values of the rasterization speed of each of the rasterizing units and processing states of each of the rasterizing units. In this case, the allocating unit divides and allocates the print jobs to each of the rasterizing units based on the prediction results.

There is a technique of rasterizing an image with a processing apparatus and printing the raster image created by being rasterized with one or a plurality of image forming apparatuses. In a case where the print data (in the following, also denoted as "printed matter") is rasterized by one processing apparatus at the same timing, for example, the more images included in the printed matter, the heavier the load on the processing apparatus. In order to reduce the load on the processing apparatus, it is conceivable to distribute the rasterizing of the images included in the printed matter. However, there is no mechanism for determining which of the distributed images is to be rasterized by one or a plurality of processing apparatuses.

The present invention is provided in the appended claims. The flowing disclosure serves a better understanding of the present invention. An object of the present disclosure is to provide an information processing system, an information processing program, and an information processing method capable of causing one or a plurality of processing apparatuses to rasterize distributed images.

According to a first aspect of the present disclosure, there is provided an information processing system including: a processor configured to: in a case where a plurality of images included in a printed matter are distributed to and rasterized by one or a plurality of processing apparatuses, the processing apparatus including at least one of a physically independent processing apparatus or a processing apparatus virtually configured in a physical apparatus, and one or a plurality of image forming apparatuses print a plurality of raster images created by being rasterized, cause the one or plurality of processing apparatuses to rasterize the images, respectively.

Further, in the information processing system, the processor is configured to: for a raster image created by being rasterized among the plurality of images, acquire an actual measurement value of a processing time required for rasterization and an actual measurement value of a transfer time for transferring the raster image to the image forming apparatus, respectively; for each of unprocessed images that are not rasterized among the plurality of images, predict a predicted value of a total time obtained by summing the processing time and the transfer time, based on the actual measurement value of the processing time and the actual measurement value of the transfer time; and cause the one or plurality of processing apparatuses to rasterize the unprocessed images assigned such that a difference between predicted values of the total time for respective processing apparatuses is within a predetermined range.

Hereinafter, an example of the exemplary embodiment of the present disclosure will be described with reference to the drawings. The identical reference numerals are given to the identical or equivalent components and parts in each drawing. In addition, the dimensional ratios in the drawings are exaggerated for convenience of explanation and may differ from the actual ratios.

As shown in <FIG>, the rasterization system <NUM> according to the present exemplary embodiment includes an information processing apparatus <NUM>, one or more processing apparatuses 20A, 20B,. , and one or more image forming apparatuses <NUM>. Hereinafter, in a case where the processing apparatuses 20A, 20B,. are not distinguished, the term "processing apparatus <NUM>" is simply used. The number of processing apparatuses <NUM> is not limited to the number shown in <FIG>. Further, the number of image forming apparatuses <NUM> is not limited to the number shown in <FIG>.

The information processing apparatus <NUM>, the processing apparatus <NUM>, and the image forming apparatus <NUM> are able to communicate with each other via communication means N. In the present exemplary embodiment, a public communication line such as the Internet or a telephone line is applied as the communication means N. However, the present invention is not limited to this example. For example, as the communication means N, a communication line in a company such as a local area network (LAN) or a wide area network (WAN) may be applied, or a communication line in a company and a public communication line may be applied in combination. Further, in the present exemplary embodiment, a wireless communication line is applied as the communication means N. However, the present invention is not limited to this example. As the communication means N, a wired communication line may be applied, or a combination of wired and wireless communication lines may be applied.

The processing apparatus <NUM> is an apparatus for rasterizing an image. The processing apparatus <NUM> transmits the raster image created by being rasterized to the image forming apparatus <NUM> via the communication means N. The processing apparatuses <NUM> may be physically independent or may be virtually configured in the physical apparatus. In other words, the processing apparatuses <NUM> included in the rasterization system <NUM> include at least one of a physically independent processing apparatuses <NUM> or processing apparatuses <NUM> virtually configured in the physical apparatus.

The image forming apparatus <NUM> prints a plurality of raster images created by being rasterized by the processing apparatus <NUM>.

The information processing apparatus <NUM> distributes a plurality of images included in the printed matter to the processing apparatuses <NUM> to rasterize the plurality of images. The information processing apparatus <NUM> is an example of an information processing system. In addition, the term "system" in the present exemplary embodiment includes both a system configured by a plurality of apparatuses and a system configured by a single apparatus.

As shown in <FIG>, the information processing apparatus <NUM> includes various components, such as a central processing unit (CPU) <NUM>, a read only memory (ROM) <NUM>, a random access memory (RAM) <NUM>, a storage <NUM>, and a communication interface (communication I/F) <NUM>. The configurations are connected to each other via a bus <NUM> in a communicable manner.

The CPU <NUM> is a central arithmetic processing unit, and executes various programs or controls each unit. That is, the CPU <NUM> reads out a program from the ROM <NUM> or the storage <NUM>, and executes the program using the RAM <NUM> as a work area. The CPU <NUM> controls each configuration and performs various types of arithmetic processing according to the program recorded in the ROM <NUM> or the storage <NUM>. In the present exemplary embodiment, an information processing program and an image database 12A are stored in the ROM <NUM> or the storage <NUM>.

The ROM <NUM> stores various programs and various data. The RAM <NUM> transitorily stores the program or the data, as the work area. The storage <NUM> is configured by a hard disk drive (HDD) or a solid state drive (SSD), and stores various programs including an operating system and various data.

The communication I/F <NUM> is an interface that is used to communicate with other apparatuses, such as the processing apparatus <NUM> and the image forming apparatus <NUM>. For example, standards, such as Ethernet (registered trademark), FDDI, and Wi-Fi (registered trademark), are used as the communication I/F <NUM>.

Next, a flow of the information processing in the information processing apparatus <NUM> of the present exemplary embodiment will be described with reference to <FIG>. The information processing is performed by the CPU <NUM> reading out the information processing program from the ROM <NUM> or the storage <NUM>, loading the program into the RAM <NUM>, and executing the program.

In step S100 of <FIG>, the CPU <NUM> transmits the identical printed matter to each processing apparatus <NUM>. Hereinafter, the identical printed matter transmitted by the CPU <NUM> to each processing apparatus <NUM> is simply referred to as a "printed matter". In the present exemplary embodiment, the CPU <NUM> transmits the printed matter to all the processing apparatuses <NUM> (the processing apparatus 20A and the processing apparatus 20B in the example shown in <FIG>) included in the rasterization system <NUM>.

In step S102, the CPU <NUM> waits until a rasterization start instruction for starting rasterization of the plurality of images included in the printed matter is received. In a case where the rasterization start instruction is received (step S102: YES), the CPU <NUM> proceeds to step S104.

In step S104, the CPU <NUM> instructs each processing apparatus <NUM> to rasterize a plurality of identical images among images related to the rasterization start instruction. For example, in a case where the rasterization start instruction for <NUM> images is received, the CPU <NUM> instructs all the processing apparatuses <NUM>, to which the printed matter is transmitted in step S100, to rasterize the first to fifteenth images among the <NUM> images. Hereinafter, the plurality of identical images for which the CPU <NUM> has instructed rasterization in step S104 are collectively referred to as initial images. In the present exemplary embodiment, the number of initial images is predetermined by the user of the information processing apparatus <NUM>.

In step S106, the CPU <NUM> waits until the raster capacity and actual measurement value of the processing time required for rasterization for each processing apparatus <NUM> after rasterization for each initial image are acquired from each processing apparatus <NUM>. In other words, the CPU <NUM> waits until the raster capacity and the actual measurement value of the processing time for each processing apparatus <NUM> for each raster image created by being rasterized are acquired from all the processing apparatuses <NUM> which receive the rasterization instruction in step S104. For example, in a case where the CPU <NUM> instructs the processing apparatus 20A and the processing apparatus 20B to rasterize the initial images in step S104, the CPU <NUM> acquires for the first initial image, the raster capacity, the actual measurement value of the processing time of the processing apparatus 20A, and the actual measurement value of the processing time of the processing apparatus 20B. In a case where the raster capacity and actual measurement value of the processing time for each processing apparatus <NUM> for each initial image are acquired from each processing apparatus <NUM> (step S106: YES), the CPU <NUM> proceeds to step S108.

In step S108, the CPU <NUM> stores the raster capacity and actual measurement value of the processing time for each processing apparatus <NUM> for each initial image, which are received in step S106, in the image database 12A.

<FIG> shows an example of the configuration of the image database 12A. As shown in <FIG>, in the image database 12A, the capacity, the processing time, the transfer time for transferring an image from the processing apparatus <NUM> to the image forming apparatus <NUM>, and the total time obtained by summing the processing time and the transfer time are stored in association with each other. As the capacity, a capacity of text data forming an image, a capacity of vector data forming an image, a capacity of image data forming an image, and a raster capacity are stored. The predicted values and actual measurement values for the processing time, the transfer time, and the total time for each processing apparatus <NUM> are stored. In the example shown in <FIG>, images <NUM> to <NUM> represent initial images.

In step S <NUM>, the CPU <NUM> predicts the predicted value of the transfer time of each initial image for each processing apparatus <NUM>. In the present exemplary embodiment, the CPU <NUM> predicts a predicted value of the transfer time of each initial image, based on the raster capacity of the initial image and the transfer band from the processing apparatus <NUM> to the image forming apparatus <NUM>. Specifically, the CPU <NUM> predicts a value obtained by dividing the raster capacity of the initial image by the communication speed in the transfer band as a predicted value of the transfer time of the initial image. For example, in a case where the communication speed in the transfer band from the processing apparatus 20A to the image forming apparatus <NUM> is <NUM> [GB] per second, and the communication speed in the transfer band from the processing apparatus 20B to the image forming apparatus <NUM> is <NUM> [GB] per second, the CPU <NUM> predicts the predicted value of the transfer time of an initial image with a raster capacity of <NUM> [MB], as <NUM> seconds for the processing apparatus 20A and <NUM> seconds for the processing apparatus 20B. Then, the CPU <NUM> stores the calculated predicted value of the transfer time for each processing apparatus <NUM> in the image database 12A.

In step S112, the CPU <NUM> determines the assignment of the transfer of the initial images such that the difference between the totals of the predicted values of the transfer time for respective processing apparatuses <NUM> is within a predetermined range. For example, the CPU <NUM> determines that the processing apparatus 20A transfers the first to fifth images and the tenth to fifteenth images of the initial image and the processing apparatus 20B transfers the sixth to ninth images of the initial image. In the present exemplary embodiment, the predetermined range is predetermined by the user of the information processing apparatus <NUM>.

In step S114, the CPU <NUM> executes the prediction process. Specifically, the CPU <NUM> predicts a predicted value of the total time for each processing apparatus <NUM> for a predetermined number of unprocessed images, among the unprocessed images that are not rasterized included in the printed matter. The details of the prediction process will be described later. Further, in the following, the unprocessed images for which the CPU <NUM> predicts the predicted value of the total time in the prediction process are referred to as target images.

Further, in the present exemplary embodiment, the number of target images is identical to the number of initial images. However, the present invention is not limited to this example. The number of target images may be different from the number of initial images.

In step S116, the CPU <NUM> determines the assignment for distributing and rasterizing the target images such that a difference between the predicted values of the total time for respective processing apparatuses <NUM> is within a predetermined range. In the present exemplary embodiment, the predetermined range is predetermined by the user of the information processing apparatus <NUM>.

In step S118, the CPU <NUM> instructs each processing apparatus <NUM> to rasterize the target images in accordance with the assignment determined in step S116. For example, the CPU <NUM> gives an instruction to each processing apparatus <NUM> such that the processing apparatus 20A rasterizes the first to fifth images and the tenth to fifteenth images of the target images, and the processing apparatus 20B rasterizes the sixth to ninth images of the target images.

In step S120, the CPU <NUM> waits until the raster capacity and the actual measurement value of the processing time for each target image are acquired from each processing apparatus <NUM>. In other words, the CPU <NUM> waits until the raster capacity and actual measurement value of the processing time for each raster image are acquired from all the processing apparatuses <NUM> which are instructed to perform rasterization in step S118. For example, in a case where the CPU <NUM> instructs the processing apparatus 20A to rasterize the first target image in step S118, the raster capacity and the actual measurement value of the processing time of the processing apparatus 20A are acquired from the processing apparatus 20A. In a case where the raster capacity and the actual measurement value of the processing time for each target image are acquired from each processing apparatus <NUM> (step S120: YES), the CPU <NUM> proceeds to step S122.

In step S122, the CPU <NUM> stores the raster capacity and actual measurement value of the processing time for each target image, received in step S120, in the image database 12A.

In step S124, the CPU <NUM> determines whether or not a print instruction for printing the printed matter by the image forming apparatus <NUM> is received. In a case where the print instruction for printing the printed matter by the image forming apparatus <NUM> is received (step S124: YES), the CPU <NUM> proceeds to step S126. On the other hand, in a case where the print instruction for printing the printed matter by the image forming apparatus <NUM> is not received (step S124: NO), the CPU <NUM> returns the process to step S114.

In step S126, the CPU <NUM> transmits a transfer instruction to transfer all the raster images to the image forming apparatus <NUM>, to each processing apparatus <NUM>.

The processing apparatus <NUM>, which has received the transfer instruction from the information processing apparatus <NUM>, transfers the raster images to the image forming apparatus <NUM>. Specifically, the processing apparatus <NUM> transfers the initial images to the image forming apparatus <NUM> in accordance with the assignment determined in step S112. Then, for the raster images other than the initial images, the processing apparatus <NUM> transfers the raster images rasterized by the processing apparatus <NUM> to the image forming apparatus <NUM>.

In step S128, the CPU <NUM> waits until the actual measurement value of the transfer time of the raster image is acquired from each processing apparatus <NUM>. In a case where the actual measurement value of the transfer time of the raster image is acquired from each processing apparatus <NUM> (step S128: YES), the CPU <NUM> proceeds to step S130.

In step S130, the CPU <NUM> stores the actual measurement value of the transfer time of the raster image received in step S <NUM> in the image database 12A.

In step S <NUM>, the CPU <NUM> determines whether or not the rasterization of all the images related to the rasterization start instruction is completed. In a case where rasterization of all the images related to the rasterization start instruction is completed (step S132: YES), the CPU <NUM> ends the present information processing. On the other hand, in a case where rasterization of all the images related to the rasterization start instruction is not completed (step S132: NO), the CPU <NUM> returns to step S <NUM>.

Next, with reference to <FIG>, a flow of the prediction process executed in the information processing in the present exemplary embodiment will be described.

In step S200 of <FIG>, the CPU <NUM> calculates the degree of proximity of data configuration of each target image with the raster image. In the present exemplary embodiment, the CPU <NUM> calculates the sum of squares R, which is the sum of the square of the difference in the capacity of the text data between Raster image <NUM> and Target image <NUM>, the square of the difference in the capacity of the vector data, and the square of the difference in the capacity of the image data. The smaller the sum of squares R, a raster image has a higher degree of proximity of configuration of data.

Specifically, the CPU <NUM> calculates the sum of squares R for each target image using Equation (<NUM>). In Equation (<NUM>), xn represents the capacity of the text data forming the raster image, yn represents the capacity of the vector data forming the raster image, and zn represents the capacity of the image data forming the raster image. In addition, x represents the capacity of text data forming the target image, y represents the capacity of vector data forming the target image, and z represents the capacity of the image data forming the target image. [Equation <NUM>] <MAT>.

In the present exemplary embodiment, since there are three types of data of text data, vector data, and image data, which are data configuring the images included in the printed matter, the sum of the squares of the differences in the capacities of the three types of data between Raster image <NUM> and Target image <NUM> is applied as the sum of squares R. However, the present invention is not limited to this example. In a case where data configuring the image included in the printed matter is not of the above-described type, the above-described value may not be applied as the sum of squares R.

Further, the degree of proximity of data configuration between the target image and the raster image is not limited to the sum of squares R. For example, as the degree of proximity of configuration, a value obtained by raising the sum of the squares of the difference in the capacity of data to the <NUM>/<NUM> power, or the sum of the difference in the capacity of data may be applied.

In step S202, the CPU <NUM> determines, for each target image, raster images from a raster image in which the sum of squares R is the smallest to a raster image of which the size of the sum of squares R is at a predetermined rank. In other words, in step S202, the CPU <NUM> determines for each target image, raster images from a raster image having a highest degree of proximity of configuration of data to a raster image of which a rank of proximity of the configuration is a predetermined rank. Hereinafter, in step S202, raster images determined by the CPU <NUM> from a raster image having the smallest sum of squares R to a raster image of which the size of the sum of squares R is at a predetermined rank are collectively referred to as "similar images". For example, the CPU <NUM> determines the second, fourth, seventh, and ninth raster images as similar images to the first target image.

The predetermined rank is a number equal to or greater than the number of types of data configuring the image included in the printed matter. In the present exemplary embodiment, since there are three types of data, the predetermined rank is set to <NUM> which is equal to or greater than <NUM>. However, the present invention is not limited to this example. The predetermined rank may be a number less than the number of types of data configuring the image included in the printed matter.

In step S204, the CPU <NUM> acquires the actual measurement value of the processing time and the actual measurement value of the transfer time of the similar image for each processing apparatus <NUM>, from the image database 12A. In a case where the actual measurement value of the transfer time of the similar image is not stored in the image database 12A, the CPU <NUM> acquires the predicted value of the transfer time of the similar image instead of the actual measurement value of the transfer time.

In step S206, the CPU <NUM> predicts the predicted value of the processing time of the target image for each processing apparatus <NUM>, based on the actual measurement value of the processing time of the similar image. In the present exemplary embodiment, the CPU <NUM> substitutes the capacity of each type of data configuring similar image into the left side of Equation (<NUM>) for predicting the predicted value tr of the processing time of the image represented by the sum of a value obtained by multiplying the capacity x of the text data by the coefficient ar, a value obtained by multiplying the capacity y of the vector data by the coefficient br, a value obtained by multiplying the capacity z of the image data by the coefficient cr, and the section dr. Then, the CPU <NUM> substitutes the actual measurement value of the processing time of the similar image into the right side of Equation (<NUM>) (that is, the predicted value tr of the processing time). Then, the CPU <NUM> calculates the coefficient ar, the coefficient br, the coefficient cr, and the section dr for each processing apparatus <NUM> by addressing Equation (<NUM>) in which the values for each similar image are substituted as simultaneous equations. Then, the CPU <NUM> substitutes the calculated coefficient ar, coefficient br, coefficient cr, and section dr into Equation (<NUM>), and substitutes the capacity x of the text data, the capacity y of the vector data, and the capacity z of the image data in the target image into Equation (<NUM>), thereby predicting the predicted value tr of the processing time of the target image for each processing apparatus <NUM>. Then, the CPU <NUM> stores the calculated predicted value tr of the processing time of the target image for each processing apparatus <NUM> in the image database 12A. [Equation <NUM>] <MAT>.

The method of predicting the predicted value of the processing time of the target image is not limited to the above-described example. For example, the CPU <NUM> may predict an actual measurement value of the processing time of the raster image in which the sum of squares R is the smallest, as a predicted value of the processing time of the target image. In addition, the CPU <NUM> may predict the predicted value of the processing time of the target image, by inputting the target image into the processing time prediction model trained using a set of the raster image and the actual measurement value of the processing time of the raster image as training data.

In step S208, the CPU <NUM> predicts the predicted value of the transfer time of the target image for each processing apparatus <NUM>, based on the actual measurement value of the transfer time of the similar image. In the present exemplary embodiment, the CPU <NUM> substitutes the capacity of each type of data configuring similar image into the left side of Equation (<NUM>) for predicting the predicted value ts of the transfer time of the image represented by the sum of a value obtained by multiplying the capacity x of the text data by the coefficient as, a value obtained by multiplying the capacity y of the vector data by the coefficient bs, a value obtained by multiplying the capacity z of the image data by the coefficient cs, and the section ds. Then, the CPU <NUM> substitutes the actual measurement value of the transfer time of the similar image into the right side of Equation (<NUM>) (that is, the predicted value ts of the transfer time). Then, the CPU <NUM> calculates the coefficient as, the coefficient bs, the coefficient cs, and the section ds for each processing apparatus <NUM> by addressing Equation (<NUM>) in which the values for each similar image are substituted as simultaneous equations. Then, the CPU <NUM> substitutes the calculated coefficient as, coefficient bs, coefficient cs, and section ds into Equation (<NUM>), and substitutes the capacity x of the text data, the capacity y of the vector data, and the capacity z of the image data in the target image into Equation (<NUM>), thereby predicting the predicted value ts of the transfer time of the target image for each processing apparatus <NUM>. Then, the CPU <NUM> stores the calculated predicted value ts of the transfer time of the target image for each processing apparatus <NUM> in the image database 12A. [Equation <NUM>] <MAT>.

The method of predicting the predicted value of the transfer time of the target image is not limited to the above-described example. For example, the CPU <NUM> may predict an actual measurement value of the transfer time of the raster image in which the sum of squares R is the smallest, as a predicted value of the transfer time of the target image. In addition, the CPU <NUM> may predict the predicted value of the transfer time of the target image, by inputting the target image into the transfer time prediction model trained using a set of the raster image and the actual measurement value of the transfer time of the raster image as training data.

In step S210, the CPU <NUM> predicts the predicted value of the total time obtained by summing the processing time and the transfer time, for each target image, for each processing apparatus <NUM>. In the present exemplary embodiment, the CPU <NUM> predicts the sum of the predicted value of the processing time predicted in step S208 and the predicted value of the transfer time predicted in step S210, as the predicted value of the total time of the target image. Then, the CPU <NUM> stores the calculated predicted value of the total time of the target image for each processing apparatus <NUM> in the image database 12A. Then, the CPU <NUM> ends the prediction process and proceeds to step S116 of the information processing.

Although the exemplary embodiment has been described above, the technical scope of the present disclosure is not limited to the scope described in the above exemplary embodiment. Various modifications or improvements can be made to the exemplary embodiment without departing from the gist of the invention, and the modified or improved form is also included in the technical scope of the present disclosure.

In addition, the above exemplary embodiments do not limit the claimed invention, and not all combinations of features described in the exemplary embodiments are necessary for the solution of the invention. Inventions at various stages are included in the above-described exemplary embodiments, and various inventions can be extracted by combining a plurality of disclosed constituent elements. Even in a case where some constituent elements are deleted from all the constituent elements shown in the exemplary embodiments, as long as an effect is obtained, a configuration in which some constituent elements are deleted can be extracted as an invention.

For example, in the above exemplary embodiment, the information processing apparatus <NUM> which is a single apparatus executes information processing. However, the present invention is not limited to this example. For example, a plurality of apparatuses may execute the information processing.

Further, in the above exemplary embodiment, the CPU <NUM> assigns the target images such that the difference between the predicted values of the total time is within a predetermined range. However, the present invention is not limited to this example. For example, the CPU <NUM> may assign the target images such that a difference between predicted values of the processing time or the transfer time is within a predetermined range. Further, the CPU <NUM> may assign the target image such that the total time, the processing time, the transfer time, or the like is a predetermined time for each processing apparatus <NUM>.

In the above exemplary embodiment, the mode in which each program is installed in the ROM or the storage has been described, but the present invention is not limited to this. Each program according to the above exemplary embodiment may be provided in the form of a recording on a computer readable storage medium. For example, each program according to the above exemplary embodiment may be provided in a form recorded in an optical disc such as a compact disc (CD)-ROM and a digital versatile disc (DVD)-ROM, or in a form recorded in a semiconductor memory such as a universal serial bus (USB) memory and a memory card. Further, each program according to the above exemplary embodiment may be acquired from an external device via the communication I/F <NUM>.

In addition, in the above-described exemplary embodiment, although a case where the processes in the information processing apparatus <NUM> are implemented by executing a program by a software configuration using a computer has been described, the present disclosure is not limited thereto. For example, the processes in the information processing apparatus <NUM> may be implemented by a hardware configuration or a combination of the hardware configuration and the software configuration.

Further, needless to say, the configurations of the information processing apparatus <NUM>, the processing apparatus <NUM>, and the image forming apparatus <NUM> described in the exemplary embodiment described above are an example, and an unnecessary part may be deleted or a new part may be added without departing from the gist of the present disclosure.

In addition, needless to say, the flow of the processes in the information processing apparatus <NUM> described in the above exemplary embodiment (refer to <FIG> and <FIG>) is also an example, and an unnecessary step may be deleted, a new step may be added, or processing order may be changed without departing from the gist of the present disclosure.

Further, the following supplementary notes will be disclosed with respect to the above exemplary embodiments.

According to (((<NUM>))) or (((<NUM>))), it is possible that the distributed images are rasterized by one or a plurality of processing apparatuses.

According to (((<NUM>))), it is possible to cause the one or a plurality of processing apparatuses to rasterize the images distributed such that a difference between the predicted values of the total time is within a predetermined range.

According to (((<NUM>))), it is possible to predict with high accuracy a predicted value of the total time for the unprocessed image, as compared with the case of not using the actual measurement value of the processing time and the predicted value of the transfer time of each of the raster images from a raster image having a highest degree of proximity of configuration of data with the unprocessed images to a raster image of which a rank of proximity of the configuration is a predetermined rank.

According to (((<NUM>))), it is possible to easily predict the predicted value of the total time of the unprocessed images, as compared with a case where the predetermined rank is less than the number of types of data.

Claim 1:
An information processing system (<NUM>) comprising:
a processor (<NUM>) configured to:
in a case where a plurality of images included in print data are to be distributed to and rasterized by a processing system and to be printed as raster images on one or more image forming apparatuses (<NUM>), the processing system including at least one of a plurality of physically independent processing apparatuses (<NUM>) and a plurality of processing apparatuses (<NUM>) virtually configured in at least one physical apparatus:
transmit the print data to each of the processing apparatuses (<NUM>); characterized in that the processor (<NUM>) is further configured to:
for each of the raster images created by rasterizing a subset of the plurality of images by each of the processing apparatuses (<NUM>), acquire an actual measurement value of the processing time required for rasterization and predict the value of the transfer time for transferring the raster image to the image forming apparatus (<NUM>);
for each of unprocessed images that is not rasterized among the plurality of images, predict, for each of the processing apparatuses (<NUM>), the value of the total time obtained by summing the processing time and the transfer time, based on the actual measurement value of the processing time and the predicted value of the transfer time;
assign the unprocessed images to the plurality of processing apparatuses (<NUM>) for rasterizing, such that the difference between predicted values of the total time for respective processing apparatuses (<NUM>) is within a predetermined range; and cause the respective processing apparatuses to transfer all the raster images of the print data to the one or more image forming apparatuses (<NUM>).