# US 8,786,888 B2 · Cloud processing for print jobs

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,786,888 B2
- Document ID: US8786888B2
- Status: Granted
- Kind: B2
- Application number: 13/560,497
- Filed: 2012-07-27
- Published: 2014-01-30
- Granted: 2014-07-22
- Earliest claimed: 2012-07-27
- Assignees: Hewlett-Packard Development Company, L.P.
- Applicants: Fabio Giannetti; Shaun Henry
- Inventors: Fabio Giannetti; Shaun Henry
- Web page: https://patentgrep.com/patent/US8786888B2

## CPC

- G06F 3/1288: {in client-server-printer device configuration}
- G06F 3/1212: {achieving reduced delay between job submission and print start}
- G06F 3/122: {with regard to computing resources, e.g. memory, CPU}
- G06F 3/1244: {Job translation or job parsing, e.g. page banding}
- G06F 3/1287: {via internet}
- G06F 3/126: {Job scheduling, e.g. queuing, determine appropriate device}
- G06F 2206/1508: Load balancing
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system includes an estimator to analyze an input file that describes a print job, to analyze local feedback data that describes local capacity to process the print job by a local print preprocessor, and to analyze remote feedback data that describes remote capacity to process the print job by a cloud-based print preprocessor, wherein the estimator determines a time estimate for the local print preprocessor or the cloud-based print preprocessor to process the print job based on the analyzed input file, the analyzed local feedback data, or the analyzed remote feedback data. A scheduler receives the time estimate from the estimator to determine whether to route the print job to the local print preprocessor or the cloud-based print preprocessor to process the print job.

## Claims

### Claim 1

A system comprising:
an estimator, executable by at least one processor, to analyze an input file that describes a print job, to analyze local feedback data that describes local capacity to process the print job by a local raster image processor (RIP), and to analyze remote feedback data that describes remote capacity to process the print job by a cloud-based RIP, wherein the estimator determines a time estimate for the local RIP or the cloud-based RIP to process the print job based on the analyzed input file, the analyzed local feedback data, or the analyzed remote feedback data;
a scheduler, executable by the at least one processor, that receives the time estimate from the estimator to determine whether to route the print job to the local RIP or the cloud-based RIP to process the print job; and
a user interface to provide processing for the input file from the local print preprocessor or the cloud-based print preprocessor, wherein the user interface enables adjustment of a load-balancing function or enables setting of a print buffer size.

### Claim 2 (depends on 1)

The system of claim 1, wherein the local RIP and the cloud-based RIP receive the input file that describes the print job and generate an output file suitable for a printer to print the print job.

### Claim 3 (depends on 1)

The system of claim 1, further comprising a job profiler that operates with the estimator and the scheduler to analyze the input file, wherein the job profiler employs a learning component to analyze characteristics of the input file.

### Claim 4 (depends on 3)

The system of claim 3, wherein the estimator, the scheduler, and the job profiler operate on a cloud-based system, operate at a print service provider, or operate at the cloud-based system and the print service provider.

### Claim 5 (depends on 3)

The system of claim 3, wherein the characteristics analyzed by the job profiler include a file size parameter, a page size parameter, a number of pages parameter, an overall area without reuse parameter, an overall area with reuse parameter, or a transparency pervasiveness parameter.

### Claim 6 (depends on 5)

The system of claim 5, wherein the parameters are classified by the job profiler into a plain documents class, a transparent documents class, or a reuse documents class.

### Claim 7 (depends on 6)

The system of claim 6, wherein the job profiler applies an iterative learning process to classify the parameters.

### Claim 8 (depends on 6)

The system of claim 6, wherein the parameters are classified from an electronic file that represents a print medium.

### Claim 9 (depends on 1)

The system of claim 1, further comprising an auditor component to supply the local feedback data or the remote feedback data.

### Claim 10

A method comprising:
profiling, by at least one computer, an input file for a print job to determine a processing complexity for the input file;
receiving, by the at least one computer, feedback from a cloud-based preprocessor and a local preprocessor on computing capacity to process the input file;
estimating, by the at least one computer, an amount of time for each of the cloud-based preprocessor and the local preprocessor to complete the print job based on the received feedback, and the determined processing complexity of the input file; and
determining, by the at least one computer, whether to send the input file to the cloud-based preprocessor, the local preprocessor or both the cloud-based preprocessor and the local preprocessor based upon the estimated amounts of time to complete the print job and a deadline to complete the print job.

### Claim 11 (depends on 10)

The method of claim 10, further comprising employing a raster image processing (RIP) in the cloud-based preprocessor and the local preprocessor to process the input file.

### Claim 12

A system comprising:
a profiler to analyze an input file for a print job, and determine an amount of transparency, reuse, and objects for the print job from the analysis;
an auditor to determine feedback from a cloud-based preprocessor or a local preprocessor on computing capacity to process the input file;
an estimator to determine an amount of time for each of the cloud-based preprocessor and the local preprocessor to complete the print job based on the received feedback and the determined amount of transparency, reuse, and objects for the print job; and
a scheduler to determine whether to send the input file to the cloud-based preprocessor, the local preprocessor or both the cloud-based preprocessor and the local preprocessor based upon the determined amount of times to complete the print job by the estimator.

### Claim 13 (depends on 12)

The system of claim 12, wherein the local preprocessor or the cloud-based preprocessor employs a raster image processing to process the input file.

### Claim 14 (depends on 12)

The system of claim 12, wherein the estimator determines the amount of time for each of the cloud-based preprocessor and the local preprocessor to complete the print job based on existing print jobs for the cloud-based preprocessor and the local preprocessor.

### Claim 15 (depends on 12)

The system of claim 12, wherein the job profiler includes a learning component to iteratively analyze characteristics of input files and determine correlations between the characteristics and an amount of time to process an input file including the characteristics from the iterative analysis, and wherein the estimator determines the amounts of time from the correlations.

### Claim 16 (depends on 10)

The method of claim 10, wherein the profiling comprises determining an amount of transparency, reuse, and objects for the print job from the analysis; and
the estimating comprises determining the amount of time for each of the cloud-based preprocessor and the local preprocessor to complete the print job based on the determined amount of transparency, reuse, and objects for the print job.

### Claim 17 (depends on 10)

The method of claim 10, wherein the profiling comprises determining parameters of the print job, wherein the parameters include a file size parameter, a page size parameter, a number of pages parameter, an overall area without reuse parameter, an overall area with reuse parameter, or a transparency pervasiveness parameter; and
classifying the parameters into a plain documents class, a transparent documents class, or a reuse documents class.

### Claim 18 (depends on 10)

The method of claim 10, comprising:
providing processing for the input file from the local print preprocessor or the cloud-based print preprocessor via a user interface, wherein the user interface enables adjustment of a load-balancing function or enables setting of a print buffer size.
