[Samba] Print speed with an HP Laserjet 4

Kurt Pfeifle kpfeifle at danka.de
Tue May 6 16:12:12 GMT 2003


Mike Brodbelt wrote:
> Kurt Pfeifle wrote:
> 
>>Mike Brodbelt wrote:
> 
> 
> 
>>>I prepared a 3 page document in Word, and printed this from an NT
>>>workstation, via a spoolss PCL driver as a baseline:-
>>>
>>>Time to start printing: 30 seconds
>>>Time to complete emergence of final page: 2 mins 15 secs
>>>
>>>I then created PCL files and PostScript files  of the same document, and
>>>printed them with lpr from the server:-
>>>
>>>PCL time to start print:		30 secs
>>>PCL time to complete print:		2 mins 15 secs
>>>
>>>PS time to start print:			14 secs
>>>PS time to complete print:		1 min 29 secs
> 
> 
> I think I've now tracked this down, though I'm still unsure what the
> best course of action is....
> 
> I found a user who still has "full speed" printing on a LaserJet 4.
> Testing with the same work document, I get the following timings:-
> 
> time to start print:		7 secs
> time to complete print:		42 secs
> 
> This printer is set up with the HP LaserJet 4 driver for Windows NT 4
> that came on the NT 4 installation CD. When the print job is redirected
> to a file, I get a PCL file that is 14830 bytes in size.

So this is the result for the native Windows PCL driver.

> The networked LaserJet 4 printers were using a newer driver, downloaded
> from the HP website. This generates a PCL file that is 2392464 bytes in
> size for exactly the same document.

I am not clear if this also was a native Windows driver? And if it
had some weird settings ("print as graphic" or similar)?

> The new setup, uses the PostScript driver. Ghostscript is invoked to
> render this into PCL suitable for sending to the printer. I tested the
> PCL output by manually generating it:-
> 
> cat pstest.prn | /usr/bin/gs -dSAFER -dPARANOIDSAFER -dBATCH -dNOPAUSE
> -q -sOutputFile=test_gs.pcl -sDEVICE=ljet4 -

So this looks like the ljet4 driver compiled into Ghostscript....

> This generated a PCL file 932040 bytes long.
> 
> In all these tests, the communication bandwidth to the printer was
> limited by a parallel cable - the network card on the networked printer
> was an external HP Jetdirect which is attached to the network, and
> provides a parallel port for connection to the printer. Testing from a
> client workstation with the new PCL driver to a printer with an internal
> Jetdirect card was slightly faster, completing the job in 1 minute 46
> seconds, compared to 2 mins 15 for the external network card.
> 
> As I need to leave the billing system in place, I still need to use the
> PostScript drivers on the Samba server. The bottleneck appears to be the
> time to send the job across the network to the printer, and the time the
> printer itself takes to process the PCL it receives.

You are not mentioning the time it takes for Ghostscript to convert
the incoming PostScript to the PCL raster....

Have you printed this "to file" and then sent it as "raw" to the printer?
(Oh, I seem to remember, that this was your initial experiment...)

> It would seem that
> the best way to optimise the printing process would be to reduce the
> size of the final PCL file. Is there any way of having ghostscript
> optimise the resultant PCL output for size?

It *may* help trying another driver.

Which is the "driver" you are using on the Linux side of things? Still
ljet4?

What is the output of

   head /etc/cups/ppd/[printername].ppd ?

(This would show me which filter/driver you use.)

You definitely don't have the best driver/filer for your printer. The
the driver/filter is determined by the "*cupsFilter" line in the head of
the PPD. See the new documentation draft for an explanation:

    http://www.linuxprinting.org/kpfeifle/SambaPrintHOWTO/Samba-HOWTO-Collection-3.0-PrintingChapter-7th-draft.html#14_7
    http://www.linuxprinting.org/kpfeifle/SambaPrintHOWTO/Samba-HOWTO-Collection-3.0-PrintingChapter-7th-draft.html#14_7_14

I suggest you try the plain PCL driver/PPD which ships with CUPS as a
default. This should be installed with

   lpdamin -p cups-pcl -v parallel:/dev/lp0 -E -m laserjet.ppd

or

   lpdamin -p cups-pcl -v socket://10.11.12.13:9100 -E -m laserjet.ppd

(replace printername and IP address as appropriate). Then make again
your measurements.

Also, have you checked for our latest recommendations of drivers
at Linuxprinting.org?

    http://www.linuxprinting.org/show_printer.cgi?recnum=HP-LaserJet_4_Plus

(I can't remember what your printer models are. But there are more
than one driver to use with laserjets. You can choose between the native
CUPS builtin driver (used by laserjet.ppd, not listed on linuxprinting.org),
ljet4, hpijs, and gimpprint. ljet4 is recommended. Please test and tell
us if we should recommend another one.

Thanks,
Kurt

> Any ideas appreciated.
> 
> Mike.
> 
> 




More information about the samba mailing list