]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/sps.shtml
Load cups into easysw/current.
[thirdparty/cups.git] / doc / sps.shtml
CommitLineData
ef416fc2 1<HTML>
2<HEAD>
3 <META NAME="COPYRIGHT" CONTENT="Copyright 1997-2003, All Rights Reserved">
4 <META NAME="DOCNUMBER" CONTENT="CUPS-SPS-1.2">
5 <META NAME="Author" CONTENT="Easy Software Products">
6 <TITLE>CUPS Software Performance Specification</TITLE>
7</HEAD>
8<BODY>
9
10<H1>Scope</H1>
11
12<H2>Identification</H2>
13
14<P>This software performance specification provides an analysis of the
15memory, disk, and processor utilitization of each program in the
16Common UNIX Printing System ("CUPS") Version 1.2.</P>
17
18<P>For the purposes of comparison, all figures are for the Linux Intel
19platform. Memory utilization on other platforms should be similar.
20
21<EMBED SRC="system-overview.shtml">
22
23<H2>Document Overview</H2>
24
25<P>This software performance specification is organized into the
26following sections:</P>
27
28<UL>
29 <LI>1 - Scope</LI>
30 <LI>2 - References</LI>
31 <LI>3 - Programs</LI>
32 <LI>4 - Scheduler Objects</LI>
33 <LI>A - Glossary</LI>
34</UL>
35
36<EMBED SRC="references.shtml">
37
38<H1>Programs</H1>
39
40<P>The following table describes the average memory, disk, and CPU usage of
41each program in CUPS.
42
43<P>The base memory column shows the initial memory requirements for each
44program, including any shared libraries that are provided by CUPS.
45
46<P>The max memory column shows the maximum amount of memory that will be
47used by the program based upon the default configuration settings supplied
48with CUPS.
49
50<P>The temp files column indicates whether any temporary files are created.
51
52<P>The CPU usage column specifies a relative CPU usage by the program under
53normal conditions, either low, medium, or high. Low usage indicates that
54the program will never use more than 33% of the available CPU time. Medium
55usage indicates the program will use as much as 66% of the available CPU
56time. High usage indicates the program uses 66% or more of the available CPU
57time.
58
59<CENTER><TABLE WIDTH="80%" BORDER="1">
60<TR>
61 <TH COLSPAN="3">Backends</TH>
62</TR>
63<TR>
64 <TH>Program</TH>
65 <TH>Base Memory</TH>
66 <TH>Max Memory</TH>
67 <TH>Temp Files</TH>
68 <TH>CPU Usage</TH>
69</TR>
70<TR>
71 <TD>ipp</TD>
72 <TD>91k</TD>
73 <TD>256k</TD>
74 <TD>Up to size of print file</TD>
75 <TD>Low</TD>
76</TR>
77<TR>
78 <TD>lpd</TD>
79 <TD>89k</TD>
80 <TD>89k</TD>
81 <TD>Up to size of print file</TD>
82 <TD>Low</TD>
83</TR>
84<TR>
85 <TD>parallel</TD>
86 <TD>85k</TD>
87 <TD>85k</TD>
88 <TD>Up to size of print file</TD>
89 <TD>Low</TD>
90</TR>
91<TR>
92 <TD>serial</TD>
93 <TD>85k</TD>
94 <TD>85k</TD>
95 <TD>Up to size of print file</TD>
96 <TD>Low</TD>
97</TR>
98<TR>
99 <TD>socket</TD>
100 <TD>85k</TD>
101 <TD>85k</TD>
102 <TD>Up to size of print file</TD>
103 <TD>Low</TD>
104</TR>
105<TR>
106 <TD>usb</TD>
107 <TD>85k</TD>
108 <TD>85k</TD>
109 <TD>Up to size of print file</TD>
110 <TD>Low</TD>
111</TR>
112<TR>
113 <TH COLSPAN="3">CGIs</TH>
114</TR>
115<TR>
116 <TH>Program</TH>
117 <TH>Base Memory</TH>
118 <TH>Max Memory</TH>
119 <TH>Temp Files</TH>
120 <TH>CPU Usage</TH>
121</TR>
122<TR>
123 <TD>admin.cgi</TD>
124 <TD>107k</TD>
125 <TD>256k</TD>
126 <TD>Up to size of PPD file</TD>
127 <TD>Medium</TD>
128</TR>
129<TR>
130 <TD>classes.cgi</TD>
131 <TD>95k</TD>
132 <TD>Size of class objects</TD>
133 <TD>None</TD>
134 <TD>Medium</TD>
135</TR>
136<TR>
137 <TD>jobs.cgi</TD>
138 <TD>93k</TD>
139 <TD>Size of job objects</TD>
140 <TD>None</TD>
141 <TD>Medium</TD>
142</TR>
143<TR>
144 <TD>printers.cgi</TD>
145 <TD>95k</TD>
146 <TD>Size of printer objects</TD>
147 <TD>None</TD>
148 <TD>Medium</TD>
149</TR>
150<TR>
151 <TH COLSPAN="3">Command-Line Programs</TH>
152</TR>
153<TR>
154 <TH>Program</TH>
155 <TH>Base Memory</TH>
156 <TH>Max Memory</TH>
157 <TH>Temp Files</TH>
158 <TH>CPU Usage</TH>
159</TR>
160<TR>
161 <TD>accept</TD>
162 <TD>88k</TD>
163 <TD>128k</TD>
164 <TD>None</TD>
165 <TD>Low</TD>
166</TR>
167<TR>
168 <TD>cancel</TD>
169 <TD>88k</TD>
170 <TD>128k</TD>
171 <TD>None</TD>
172 <TD>Low</TD>
173</TR>
174<TR>
175 <TD>disable</TD>
176 <TD>88k</TD>
177 <TD>128k</TD>
178 <TD>None</TD>
179 <TD>Low</TD>
180</TR>
181<TR>
182 <TD>enable</TD>
183 <TD>88k</TD>
184 <TD>128k</TD>
185 <TD>None</TD>
186 <TD>Low</TD>
187</TR>
188<TR>
189 <TD>lp</TD>
190 <TD>90k</TD>
191 <TD>256k</TD>
192 <TD>None</TD>
193 <TD>Low</TD>
194</TR>
195<TR>
196 <TD>lpadmin</TD>
197 <TD>148k</TD>
198 <TD>256k</TD>
199 <TD>None</TD>
200 <TD>Low</TD>
201</TR>
202<TR>
203 <TD>lpc</TD>
204 <TD>86k</TD>
205 <TD>Size of job and printer objects</TD>
206 <TD>None</TD>
207 <TD>Medium</TD>
208</TR>
209<TR>
210 <TD>lpinfo</TD>
211 <TD>89k</TD>
212 <TD>Size of device and PPD objects</TD>
213 <TD>None</TD>
214 <TD>Medium</TD>
215</TR>
216<TR>
217 <TD>lpmove</TD>
218 <TD>88k</TD>
219 <TD>128k</TD>
220 <TD>None</TD>
221 <TD>Low</TD>
222</TR>
223<TR>
224 <TD>lpoptions</TD>
225 <TD>89k</TD>
226 <TD>128k</TD>
227 <TD>None</TD>
228 <TD>Low</TD>
229</TR>
230<TR>
231 <TD>lppasswd</TD>
232 <TD>90k</TD>
233 <TD>90k</TD>
234 <TD>None</TD>
235 <TD>Low</TD>
236</TR>
237<TR>
238 <TD>lpq</TD>
239 <TD>87k</TD>
240 <TD>Size of job objects</TD>
241 <TD>None</TD>
242 <TD>Medium</TD>
243</TR>
244<TR>
245 <TD>lpr</TD>
246 <TD>87k</TD>
247 <TD>256k</TD>
248 <TD>None</TD>
249 <TD>Low</TD>
250</TR>
251<TR>
252 <TD>lprm</TD>
253 <TD>84k</TD>
254 <TD>128k</TD>
255 <TD>None</TD>
256 <TD>Low</TD>
257</TR>
258<TR>
259 <TD>lpstat</TD>
260 <TD>119k</TD>
261 <TD>Size of job, printer, and class objects</TD>
262 <TD>None</TD>
263 <TD>Medium</TD>
264</TR>
265<TR>
266 <TD>reject</TD>
267 <TD>88k</TD>
268 <TD>128k</TD>
269 <TD>None</TD>
270 <TD>Low</TD>
271</TR>
272<TR>
273 <TH COLSPAN="3">Daemons</TH>
274</TR>
275<TR>
276 <TH>Program</TH>
277 <TH>Base Memory</TH>
278 <TH>Max Memory</TH>
279 <TH>Temp Files</TH>
280 <TH>CPU Usage</TH>
281</TR>
282<TR>
283 <TD>cups-lpd</TD>
284 <TD>92k</TD>
285 <TD>256k</TD>
286 <TD>One file per control or data file from client</TD>
287 <TD>Low</TD>
288</TR>
289<TR>
290 <TD>cupsd</TD>
291 <TD>308k</TD>
292 <TD>See Scheduler Requirements</TD>
293 <TD>See Scheduler Requirements</TD>
294 <TD>Medium</TD>
295</TR>
296<TR>
297 <TD>cups-polld</TD>
298 <TD>84k</TD>
299 <TD>Size of printer and class objects</TD>
300 <TD>None</TD>
301 <TD>Low</TD>
302</TR>
303<TR>
304 <TH COLSPAN="3">Filters</TH>
305</TR>
306<TR>
307 <TH>Program</TH>
308 <TH>Base Memory</TH>
309 <TH>Max Memory</TH>
310 <TH>Temp Files</TH>
311 <TH>CPU Usage</TH>
312</TR>
313<TR>
314 <TD>hpgltops</TD>
315 <TD>263k</TD>
316 <TD>320k</TD>
317 <TD>None</TD>
318 <TD>Medium</TD>
319</TR>
320<TR>
321 <TD>imagetops</TD>
322 <TD>628k</TD>
323 <TD>10M</TD>
324 <TD>Swap file for uncompressed image data</TD>
325 <TD>Medium</TD>
326</TR>
327<TR>
328 <TD>imagetoraster</TD>
329 <TD>652k</TD>
330 <TD>10M</TD>
331 <TD>Swap file for uncompressed image data</TD>
332 <TD>High</TD>
333</TR>
334<TR>
335 <TD>pstops</TD>
336 <TD>775k</TD>
337 <TD>840k</TD>
338 <TD>Up to size of print file</TD>
339 <TD>Medium</TD>
340</TR>
341<TR>
342 <TD>pstoraster</TD>
343 <TD>4M</TD>
344 <TD>14M</TD>
345 <TD>Swap file for command lists</TD>
346 <TD>High</TD>
347</TR>
348<TR>
349 <TD>rastertoepson</TD>
350 <TD>693k</TD>
351 <TD>1M</TD>
352 <TD>None</TD>
353 <TD>Low</TD>
354</TR>
355<TR>
356 <TD>rastertohp</TD>
357 <TD>690k</TD>
358 <TD>1M</TD>
359 <TD>None</TD>
360 <TD>Low</TD>
361</TR>
362<TR>
363 <TD>texttops</TD>
364 <TD>638k</TD>
365 <TD>4*cols*rows</TD>
366 <TD>None</TD>
367 <TD>Low</TD>
368</TR>
369</TABLE></CENTER>
370
371
372<H1>Scheduler Objects</H1>
373
374<P>The <CODE>cupsd</CODE> program is the CUPS scheduler process. It manages
375many interdependent server objects that are used to manage and print files
376to printers.
377
378<P>The following table provides the memory and disk cost associated with each
379server object.
380
381<CENTER><TABLE WIDTH="80%" BORDER="1">
382<TR>
383 <TH>Object</TH>
384 <TH>Memory Per</TH>
385 <TH>Disk Per</TH>
386</TR>
387<TR>
388 <TD>Browse ACL</TD>
389 <TD>1k</TD>
390 <TD>120</TD>
391</TR>
392<TR>
393 <TD>Browse Poll</TD>
394 <TD>24</TD>
395 <TD>80</TD>
396</TR>
397<TR>
398 <TD>Browse Relay</TD>
399 <TD>28</TD>
400 <TD>80</TD>
401</TR>
402<TR>
403 <TD>Certificate</TD>
404 <TD>76</TD>
405 <TD>32</TD>
406</TR>
407<TR>
408 <TD>Class</TD>
409 <TD>9k</TD>
410 <TD>200</TD>
411</TR>
412<TR>
413 <TD>Client</TD>
414 <TD>13k</TD>
415 <TD>-</TD>
416</TR>
417<TR>
418 <TD>Device</TD>
419 <TD>256</TD>
420 <TD>-</TD>
421</TR>
422<TR>
423 <TD>Job</TD>
424 <TD>2k</TD>
425 <TD>1k + size of document files</TD>
426</TR>
427<TR>
428 <TD>Location ACL</TD>
429 <TD>1k</TD>
430 <TD>120</TD>
431</TR>
432<TR>
433 <TD>MIME Filter</TD>
434 <TD>268</TD>
435 <TD>80</TD>
436</TR>
437<TR>
438 <TD>MIME Type</TD>
439 <TD>340</TD>
440 <TD>80</TD>
441</TR>
442<TR>
443 <TD>PPD</TD>
444 <TD>200</TD>
445 <TD>656</TD>
446</TR>
447<TR>
448 <TD>Printer</TD>
449 <TD>11k</TD>
450 <TD>32k</TD>
451</TR>
452</TABLE></CENTER>
453
454<EMBED SRC="glossary.shtml">
455
456</BODY>
457</HTML>