[cups] Avoid RAM overflow on color printer

Johannes Meixner jsmeix at suse.de
Thu Dec 20 02:43:17 PST 2018


Hello,

On Dec 19 16:55 Rolf-Werner Eilert wrote (excerpt):
> On my color laser printer, when I print several copies
> of a 16 pages document with some graphics, the printer's RAM
> only holds one copy at a time.
>
> When I just say "10 copies", it will run into a RAM overflow
> after some while.

Does it make a difference if you use collated copies
(i.e. N times the whole document so that one gets
  page1 page2 page3 ... , page1 page2 page3 , ...)
versus not collated copies
(i.e. N times each page of the document so that one gets
  page1 page1 ... page1 , page2 page2 ... page2 , ...)
?

> So I usually print several single documents
> to the spooler takes care the next document is sent only after
> the previous is finished.
>
> Is there a Cups option somewhere to do that automagically?

I do not understand what you mean with "several single documents".

Do you split the whole document into smaller parts and print
the smaller part as "several single documents"?

If yes, there is no CUPS option (at least I don't know about one).

You need to split the original document into smaller parts
on your own where how to split depends on the file format
or data type of your original document.

If you use collated copies you can print the document N times
for small N as in

# lp -d queue document document ... document

or for bigger N as in

# for in in $( seq N ) ; do lp -d queue document ; sleep 1 ; done

with or without a sleep delay as you need it.


FYI:

There is no such thing as "printing copies".

There are several essentially different ways how one could get
the same content printed multiple times (vaguely called "copies"):

E.g. when printing 3 "copies" it can be done as follows:

# lp -d queue -n 3 file_to_print

(one print job where number of copies is only a print job parameter
  and then it depends on various conditions what exact behaviour
  that print job parameter results - a filter may produce multiple
  pages or the printer may do it or both so that one gets 9 pages)

versus

# lp -d queue file_to_print file_to_print file_to_print

(one print job with the content file as many times as number of copies
  which I consider as the most reliably way how one could get the same
  content printed multiple times for the price of more needed resources
  cf. RFC 1925 item 7a)

versus

# lp -d queue file_to_print
# lp -d queue file_to_print
# lp -d queue file_to_print

(as many separated print jobs as as number of copies where it can happen
  that other user's print jobs get in between so that the jobs from the
  other users appear in between in the whole printout plus maximum
  needed resources how to get the same content printed multiple times)

There are three essentially different ways how one could get
the same content printed multiple times (vaguely called "copies")
where each way could result different unexpected behaviour.


Kind Regards
Johannes Meixner
-- 
SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard,
Graham Norton - HRB 21284 (AG Nuernberg)



More information about the cups mailing list