home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / compress / 2780 < prev    next >
Encoding:
Internet Message Format  |  1992-07-22  |  23.5 KB

  1. Xref: sparky comp.compression:2780 news.software.b:2593
  2. Newsgroups: comp.compression,news.software.b
  3. Path: sparky!uunet!pipex!ibmpcug!exnet!dhd
  4. From: dhd@exnet.co.uk (Damon)
  5. Subject: COLLATED ANSWERS---Preloading `compress' for better NEWS batching.
  6. Message-ID: <Brt81I.IE@exnet.co.uk>
  7. Organization: ExNet Systems Ltd Public Access News, London, UK
  8. References: <1992Jul22.144104.27576@usenet.ins.cwru.edu> <711820693@pike.cs.duke.edu>
  9. Date: Wed, 22 Jul 1992 21:36:53 GMT
  10. Lines: 555
  11.  
  12. I asked about an idea for tuning compress for news batches...  Here is my
  13. original question and a selection of the answers received.  Thanks to all those
  14. who replied.
  15.  
  16. Take the trouble to read this and maybe followup on (bit of!) it; there's a lot
  17. of good info here.  I may start a second summary.
  18.  
  19. I may well have missed posted rather than e-mailed replies.  Sorry if any of
  20. you tried to mail and it bounced.
  21.  
  22. Replies quoted are from:
  23.     Nigel Metheringham <nigelm@ohm.york.ac.uk>
  24.     Alfred Kayser <Alfred.Kayser@dnpap.et.tudelft.nl>
  25.     Matthew Farwell <dylan@ibmpcug.co.uk>
  26.     Don Taylor <dont@klic.rain.com>
  27.     Rob Stampfli <res@colnet.cmhnet.org>
  28.  
  29. Thanks again...
  30.  
  31. Damon
  32.  
  33. -------------------------------------------------------------------------------
  34. Newsgroups: comp.compression,news.software.b
  35. Path: exnet!dhd
  36. From: dhd@exnet.co.uk (Damon)
  37. Subject: Preloading compress for news...
  38. Message-ID: <BrE95s.26L@exnet.co.uk>
  39. Keywords: compress, LZ, preloading, news, batch, n-graphs
  40. Organization: ExNet Systems Ltd Public Access News, London, UK
  41. Date: Tue, 14 Jul 1992 19:37:03 GMT
  42.  
  43. I'm sure this one has been discussed before... but I can't remember...
  44.  
  45. Suppose, for a particular application (in this case batch compression
  46. for news) we record the frequency of occurrence of the most common 2,
  47. 3,
  48. ... 6 character sequences in real batches.
  49.  
  50. (I have the tools to do this; I may even do something about it this
  51. evening...)
  52.  
  53. Then pick the 255 sequences that if shrunk to 9 bits would save the
  54. most space (ie bits saved * freq of occurrence).  Preload these into a
  55. version of compress (and also uncompress, being the same program).  If
  56. we want we could then do the same with the next most `useful' sequences
  57. for the 10-bit codes.
  58.  
  59. Call this something new like `newscomp' and supply it with (say) new C
  60. News software for participating pairs of sites to use to
  61. compress/uncompress batches.
  62.  
  63. The idea is that this `tuned' compress/uncompress may be much more
  64. effective than a normal compress, and although incompatible with the
  65. normal compress because of this preloaded info, it might save
  66. significant bandwidth between cooperating pairs of sites, starting
  67. better than compress by itself, but still adapting well for different
  68. traffic.
  69.  
  70. If you e-mail I'll gather responses together and post as one article.
  71. I don't promise to catch all articles in the news spool, since my
  72. machine is about to overflow!
  73.  
  74. If someone knows how to modify compress with this preloaded info, I'll
  75. collect character frequencies in real batches for initially a day or
  76. two and then for a few months, or supply them with the automatic tools
  77. to do so.  This could be a very worthwhile saving in
  78. net.telecomms.costs.
  79.  
  80. Damon
  81.  
  82.  
  83. ===============================================================================
  84. RESPONSES
  85. -------------------------------------------------------------------------------
  86. Newsgroups: comp.compression,news.software.b
  87. Path: exnet!dhd
  88. From: dhd@exnet.co.uk (Damon)
  89. Subject: Re: Preloading compress for news...
  90. Message-ID: <BrEJ51.581@exnet.co.uk>
  91. Keywords: compress, LZ, preloading, news, batch, n-graphs
  92. Organization: ExNet Systems Ltd Public Access News, London, UK
  93. References: <BrE95s.26L@exnet.co.uk>
  94. Date: Tue, 14 Jul 1992 23:12:36 GMT
  95.  
  96. In article <BrE95s.26L@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
  97. >I'm sure this one has been discussed before... but I can't remember...
  98. >
  99. >Suppose, for a particular application (in this case batch compression
  100. >for news) we record the frequency of occurrence of the most common 2,
  101. >3,
  102. >... 6 character sequences in real batches.
  103. >
  104. >(I have the tools to do this; I may even do something about it this
  105. >evening...)
  106. >
  107. >Then pick the 255 sequences that if shrunk to 9 bits would save the
  108. >most space (ie bits saved * freq of occurrence).  Preload these into a
  109. >version of compress (and also uncompress, being the same program).  If
  110. >we want we could then do the same with the next most `useful' sequences
  111. >for the 10-bit codes.
  112.  
  113. I know that following up your own articles is a bit naughty, but...
  114.  
  115. OK, well I measured the frequency of a selection of n-graphs in 581991
  116. characters-worth of uk.misc articles with cut-down headers (this info was
  117. collected for other purposes, so is not exactly ideal for the purpose in hand,
  118. but is close).  The headers are cut down to just the Subject: line.  Note that
  119. not all n-graphs present in the data were sampled for frequency of occurrence,
  120. especially for the longer graphs.
  121.  
  122. I picked out the 254 sequences that would save most bits if they had been
  123. replaced by a single 9-bit code word.  They are listed below as three fields.
  124.  
  125. Length of n-graph, *bits* saved, n-graph with ctrl chars escaped (space is \40)
  126.  
  127. Now the numbers given are not true simultaneously, since if all sequences of,
  128. say, `---------------------' were replaced then the additional saving gained by
  129. replacing all the `-------'s would be much smaller than that listed.  But
  130. adding up the non-overlapping n-graphs such as the run of 16 `-'s and the run
  131. of 16 ` 's, and the occurences of `the' and `Subject: Re:' and so on comes, by
  132. eye, to around 30% compression straight off.  The 254th code might be saving
  133. about .4% of the bits.
  134.  
  135. Of course, this selection of graphs would most favour traffic in the uk groups,
  136. so saving us the most money...  Perhaps alt.sex should be sampled instead? B^O
  137.  
  138. Table of 254 putative preloaded strings (n-graphs) follows:
  139.  
  140. 16  633556 ----------------
  141. 15  603618 ---------------
  142. 14  571856 --------------
  143. 13  538555 -------------
  144. 12  503469 ------------
  145. 16  491827 \40\40\40\40\40\40\40\40\40\40\40\40\40\40\40\40
  146. 15  488733 \40\40\40\40\40\40\40\40\40\40\40\40\40\40\40
  147. 14  482761 \40\40\40\40\40\40\40\40\40\40\40\40\40\40
  148. 13  474715 \40\40\40\40\40\40\40\40\40\40\40\40\40
  149. 11  466495 -----------
  150. 12  465363 \40\40\40\40\40\40\40\40\40\40\40\40
  151. 11  452196 \40\40\40\40\40\40\40\40\40\40\40
  152. 10  436082 \40\40\40\40\40\40\40\40\40\40
  153. 10  427704 ----------
  154. 9   415674 \40\40\40\40\40\40\40\40\40
  155. 8   394240 \40\40\40\40\40\40\40\40
  156. 9   387072 ---------
  157. 7   367681 \40\40\40\40\40\40\40
  158. 8   344520 --------
  159. 6   333684 \40\40\40\40\40\40
  160. 7   300095 -------
  161. 5   292454 \40\40\40\40\40
  162. 6   253734 ------
  163. 4   240051 \40\40\40\40
  164. 5   205468 -----
  165. 3   179340 \40\40\40
  166. 4   155664 ----
  167. 4   106099 \40the
  168. 2   105812 \40\40
  169. 3   103965 ---
  170. 3   102885 \40th
  171. 5   100719 \40the\40
  172. 2    88578 e\40
  173. 3    83565 the
  174. 4    78706 the\40
  175. 2    71792 \40t
  176. 2    64344 th
  177. 3    58980 he\40
  178. 2    52507 --
  179. 2    52500 s\40
  180. 2    51107 \40a
  181. 2    50757 he
  182. 2    50323 t\40
  183. 2    43477 in
  184. 4    43171 ing\40
  185. 4    42090 \40to\40
  186. 4    40710 \40of\40
  187. 3    38370 ing
  188. 2    38325 er
  189. 13   37525 Subject:\40Re:\40
  190. 6    36972 \40that\40
  191. 2    36715 n\40
  192. 12   34365 Subject:\40Re:
  193. 12   34365 ubject:\40Re:\40
  194. 2    34265 an
  195. 2    34230 re
  196. 12   33756 In\40article\40<
  197. 5    33728 \40that
  198.  
  199. [etc]
  200. -------------------------------------------------------------------------------
  201. Newsgroups: comp.compression,news.software.b
  202. From: dhd@exnet.co.uk (Damon)
  203. Subject: Re: Preloading compress for news...
  204. Message-ID: <BrEJuK.5HA@exnet.co.uk>
  205. Followup-To: comp.compression
  206. Keywords: compress, LZ, preloading, news, batch, n-graphs
  207. Organization: ExNet Systems Ltd Public Access News, London, UK
  208. References: <BrE95s.26L@exnet.co.uk> <BrEJ51.581@exnet.co.uk>
  209. Date: Tue, 14 Jul 1992 23:27:55 GMT
  210.  
  211. In article <BrEJ51.581@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
  212. >In article <BrE95s.26L@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
  213. >I know that following up your own articles is a bit naughty, but...
  214.  
  215. And I'm doing it again.  Too tired to think straight...
  216.  
  217. >Now the numbers given are not true simultaneously, since if all sequences of,
  218. >say, `---------------------' were replaced then the additional saving gained by
  219. >replacing all the `-------'s would be much smaller than that listed.  But
  220. >adding up the non-overlapping n-graphs such as the run of 16 `-'s and the run
  221. >of 16 ` 's, and the occurences of `the' and `Subject: Re:' and so on comes, by
  222. >eye, to around 30% compression straight off.  The 254th code might be saving
  223. >about .4% of the bits.
  224.  
  225. The big thing I overlooked which may invalidate all that above (!) was that
  226. where we have a repeating sequence, eg `---', a subsequence of it will be
  227. counted on each match, eg `--' will be counted twice in `---'.  So the Big
  228. Saving `-' and ` ' runs will not save nearly as much as the crude figures
  229. suggest...  My data needs more processing.  I need sleep.
  230.  
  231. I've now altered the followups line so I can make a fool of myself in just one
  232. global newsgroup Bv<.
  233.  
  234. Other people are invited to get their own words in edgeways...
  235.  
  236. Damon
  237.  
  238. -------------------------------------------------------------------------------
  239. From: Nigel Metheringham <nigelm@ohm.york.ac.uk>
  240. Date: Wed, 15 Jul 1992 09:03:45 +0100
  241. Message-Id: <3246.199207150803@glenlivet.ohm.york.ac.uk>
  242. To: dhd@exnet.co.uk
  243. Subject: Re: Preloading compress for news...
  244. Newsgroups: comp.compression,news.software.b
  245. References: <BrE95s.26L@exnet.co.uk>
  246.  
  247. Compress puts the compression table in the compressed data stream. 
  248. It should indeed be possible to make a version of compress that does
  249. more stringent analysis of the file to be compressed (ie looks at
  250. the whole file rather than taking it as an incoming data stream),
  251. and so get a more thoroughly compressed file.  The good point is
  252. that you can get a more compressed data stream which will still
  253. uncompress with the same uncompressor!
  254.  
  255.     Nigel.
  256.  
  257. -- 
  258. # Nigel Metheringham   # (NeXT) EMail: nigelm@ohm.york.ac.uk #
  259. # System Administrator #######  Phone: +44 904 432374        #
  260. # Department of Electronics  #  Fax:   +44 904 432335        #
  261. #     University of York, Heslington, York, UK, YO1 5DD      #
  262. -------------------------------------------------------------------------------
  263. From: dhd (Damon)
  264. To: nigelm@ohm.york.ac.uk
  265. Subject: Re: Preloading compress for news...
  266.  
  267. I'm not sure you can do that with compress.  Each time it adds a new
  268. string to its database it transmits the new character to the other
  269. end to build the receiver's table.
  270.  
  271. But it would be good.
  272.  
  273. Still, preloading the table at both ends will remove the need to transmit
  274. it at all.  Since we might only preload a relatively small number of 
  275. strings the new compressor would still work well on other sorts of data
  276. than that we sampled to chose the preload strings.
  277.  
  278. Damon
  279. -------------------------------------------------------------------------------
  280. From: Nigel Metheringham <nigelm@ohm.york.ac.uk>
  281. Date: Wed, 15 Jul 1992 16:37:22 +0100
  282. To: Damon <dhd@exnet.co.uk>
  283. Subject: Re: Preloading compress for news...
  284.  
  285. There was some discussion a while back in comp.compression about  
  286. prescanning the file and making sure you had an optimal compression  
  287. table before emmitting the table and the data.  This has apprently  
  288. been implemented and works fine with the standard uncompress.
  289.  
  290. I think trying to use a fixed string table and specialised  
  291. compressor/uncompressor pairs would not be a win at all.  The  
  292. performance would be good on some batches and probably appaling on  
  293. others (ie program code or encoded binary).  The current methods work  
  294. pretty much OK - probably safer to leave well alone!
  295.  
  296.     Nigel.
  297.  
  298. -------------------------------------------------------------------------------
  299. Date: Wed, 15 Jul 92 18:06:53 BST
  300. From: dhd (Damon)
  301. Message-Id: <9207151706.AA01504@exnet.co.uk>
  302. To: dhd
  303. Status: R
  304.  
  305. >I think trying to use a fixed string table and specialised  
  306.  
  307. No, no, you don't *fix* the string table; you just load the first few at
  308. the compressor and decompressor and let it extend the table as usual.  So
  309. its performance is going to me more-or-less the same as the default 
  310. compress/uncompress in the worst case, and in the best case somewhat better.
  311.  
  312. Damon
  313. -------------------------------------------------------------------------------
  314. Newsgroups: comp.compression
  315. From: Alfred.Kayser@dnpap.et.tudelft.nl (Alfred Kayser)
  316. Subject: Re: Preloading compress for news...
  317. Message-ID: <alfred.711184930@dutepp3>
  318. Organization: Delft University of Technology, Dept. of Electrical Engineering
  319. References: <BrE95s.26L@exnet.co.uk> <BrEJ51.581@exnet.co.uk> <BrEJuK.5HA@exnet.co.uk>
  320. Date: Wed, 15 Jul 1992 07:22:10 GMT
  321.  
  322. dhd@exnet.co.uk (Damon) writes:
  323.  
  324. >In article <BrEJ51.581@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
  325. >>In article <BrE95s.26L@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
  326. >>I know that following up your own articles is a bit naughty, but...
  327. >And I'm doing it again.  Too tired to think straight...
  328. >>Now the numbers given are not true simultaneously, since if all sequences of,
  329. >>say, `---------------------' were replaced then the additional saving gained by
  330. >>replacing all the `-------'s would be much smaller than that listed.  But
  331. >>adding up the non-overlapping n-graphs such as the run of 16 `-'s and the run
  332. >>of 16 ` 's, and the occurences of `the' and `Subject: Re:' and so on comes, by
  333. >>eye, to around 30% compression straight off.  The 254th code might be saving
  334. >>about .4% of the bits.
  335.  
  336. >The big thing I overlooked which may invalidate all that above (!) was that
  337. >where we have a repeating sequence, eg `---', a subsequence of it will be
  338. >counted on each match, eg `--' will be counted twice in `---'.  So the Big
  339. >Saving `-' and ` ' runs will not save nearly as much as the crude figures
  340. >suggest...  My data needs more processing.  I need sleep.
  341. You need to sleep indeed!
  342.  
  343. Why don't we use plain 'compress' or other compressors which are indenpendent
  344. of the data? The 30% compression rate with handtweaked 'n-graphs' is
  345. certainly not better than the rates achieved by standard and widely availeble
  346. compressors. IMHO there two places where one should compress, that is on the high end
  347. of the protocol (ie in the application), so the compression is ideally suited
  348. to the data (take for instance gif and jpg for images, and zoo for executables).
  349. The other place is somewhere in the transport layer of the network protocol (ie
  350. in modems via v42bis and MNP5) transparantly to the applications (such at usenet).
  351. The first place can achieve compression ratios up to 1:1000 (such as ifs based
  352. compression of images), while the second is mostly in the order of 1:2 to 1:4.
  353.  
  354. It is overkill to want to compress in between those two places, especially if one 
  355. want to do this solely to cutdown transport costs.
  356.  
  357. Just my two cents, Alfred
  358.  
  359. --
  360. -- Ir. Alfred Kayser. PACS, OS/2, TCP/IP. --- Email: AKayser@et.tudelft.nl --
  361. -- CARDIT, Delft University of Technology ------------ Tel: (31)-15-786179 --
  362. -- P.O.Box 5031, 2600 GA Delft, The Netherlands ------ Fax: (31)-15-784898 --
  363. -------------------------------------------------------------------------------
  364. Newsgroups: comp.compression
  365. From: dhd@exnet.co.uk (Damon)
  366. Subject: Re: Preloading compress for news...
  367. Message-ID: <BrFMuC.43M@exnet.co.uk>
  368. Organization: ExNet Systems Ltd Public Access News, London, UK
  369. References: <BrEJ51.581@exnet.co.uk> <BrEJuK.5HA@exnet.co.uk> <alfred.711184930@dutepp3>
  370. Date: Wed, 15 Jul 1992 13:30:11 GMT
  371.  
  372. In article <alfred.711184930@dutepp3> Alfred.Kayser@dnpap.et.tudelft.nl (Alfred Kayser) writes:
  373. >dhd@exnet.co.uk (Damon) writes:
  374. >
  375. >>In article <BrEJ51.581@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
  376. >>>In article <BrE95s.26L@exnet.co.uk> dhd@exnet.co.uk (Damon) writes:
  377. >>>I know that following up your own articles is a bit naughty, but...
  378. >>And I'm doing it again.  Too tired to think straight...
  379. >>>Now the numbers given are not true simultaneously, since if all sequences of,
  380. >>>say, `---------------------' were replaced then the additional saving gained by
  381. >>>replacing all the `-------'s would be much smaller than that listed.  But
  382. >>>adding up the non-overlapping n-graphs such as the run of 16 `-'s and the run
  383. >>>of 16 ` 's, and the occurences of `the' and `Subject: Re:' and so on comes, by
  384. >>>eye, to around 30% compression straight off.  The 254th code might be saving
  385. >>>about .4% of the bits.
  386. >
  387. >>The big thing I overlooked which may invalidate all that above (!) was that
  388. >>where we have a repeating sequence, eg `---', a subsequence of it will be
  389. >>counted on each match, eg `--' will be counted twice in `---'.  So the Big
  390. >>Saving `-' and ` ' runs will not save nearly as much as the crude figures
  391. >>suggest...  My data needs more processing.  I need sleep.
  392. >You need to sleep indeed!
  393. >
  394. >Why don't we use plain 'compress' or other compressors which are indenpendent
  395. >of the data? The 30% compression rate with handtweaked 'n-graphs' is
  396.  
  397. We do.  By default `compress' is used to compress batches of news between uucp
  398. news sites.  What I am suggesting is *improving* on its default behaviour by
  399. tuning it for this specific application.  What I'm saying is that we might be
  400. able to get 30% before compress even has to start `learning'.
  401.  
  402. >The other place is somewhere in the transport layer of the network protocol (ie
  403. >in modems via v42bis and MNP5) transparantly to the applications (such at usenet).
  404.  
  405. Less good, as you point out, because the user data is broken up into
  406. effectively random pieces by the packet headers/trailers...
  407.  
  408. Damon
  409. -------------------------------------------------------------------------------
  410. To: dhd@exnet.co.uk
  411. Subject: news compression
  412. Date: Wed, 15 Jul 92 15:24:44 BST
  413. From: Matthew Farwell <dylan@ibmpcug.co.uk>
  414. Message-Id:  <9207151524.aa17631@kate.ibmpcug.co.uk>
  415.  
  416. Have you looked at Freeze/melt?
  417.  
  418. Script started on Wed Jul 15 15:22:04 1992
  419. ; ls -l 71*
  420. -rw-r--r--   1 news     news      1035353 Jul 10 03:12 710734342
  421. ; -- time
  422. time compress < 71* > out
  423.  
  424. real        26.4
  425. user         3.2
  426. sys          0.8
  427. ; ls -l out
  428. -rw-r--r--   1 dylan    source     490825 Jul 15 15:22 out
  429. ; time freeze < 71* > out
  430.  
  431. real        29.6
  432. user        19.7
  433. sys          0.9
  434. ; ls -l out
  435. -rw-r--r--   1 dylan    source     429503 Jul 15 15:23 out
  436. script done on Wed Jul 15 15:23:26 1992
  437.  
  438. Dylan.
  439.  
  440. -- 
  441. It is no coincidence that in no known language does the phrase 'As
  442. pretty as an Airport' appear -- Douglas Adams
  443.  
  444.  
  445. [Freeze is available in source form.]
  446. -------------------------------------------------------------------------------
  447. Message-Id: <m0m8No6-0003NMC@klic.rain.com>
  448. Date: Wed, 15 Jul 92 21:51 PDT
  449. From: Don taylor <dont@klic.rain.com>
  450. To: dhd@exnet.co.uk
  451.  
  452. I too have been considering preloading compressors with tables, and other
  453. methods to get 75% compression, as is  quoted as the underlying information
  454. content of english text.
  455.  
  456. I have been thinking that the compressor needs to make use of lookahead, not
  457. just lookback.  I suspect the receiver needs to make use of a dictionary, not
  458. just a pointer to the previous text (since there are duplications in the text
  459. which provide less material available for a fixed sized pointer or a larger
  460. pointer for the same material). For text, since most words include a trailing
  461. blank, how about encoding the word with a trailing blank and have a less common
  462. code that says to discard the last character reconstructed.  Since the typical
  463. word is 5 characters, 6 with the blank, and the blank is free in about 90% of
  464. the cases if it is encoded in this way, that should provide some savings.
  465.  
  466. I have been looking for algorithms to efficiently do the compression as
  467. follows
  468.    Given the dictionary known to the receiver
  469.     and the next x kbytes of lookahead
  470.    what is the least cost encoding to send those next x kbytes
  471.     considering the price of dictionary updates+transmission
  472.    and only send a dictionary update when needed, i.e. for prefix string.
  473.  
  474. Thanks
  475. dont@klic.rain.com
  476. -------------------------------------------------------------------------------
  477. To: dhd@exnet.co.uk
  478. Subject: Re: Preloading compress for news...
  479. In-Reply-To: <BrE95s.26L@exnet.co.uk>
  480. Organization: Little to None
  481. Message-Id: <9207152332.AA27348@colnet.cmhnet.org>
  482. Date: Wed, 15 Jul 92 23:32:13 EDT (-0400)
  483. From: Rob Stampfli <res@colnet.cmhnet.org>
  484.  
  485. A couple of us here actually thought of this, although we never did
  486. anything with it except talk about it.  I think it would be a win,
  487. although I don't know how much of one.  Do you have any statistics?
  488. Also, the internal tables in compress, which are now in bss, would
  489. have to be moved to .data, meaning a *large* program on disk.
  490.  
  491. One possibility would be to give compress the option of preloading
  492. the internal tables from a command-line specified file.  You could
  493. also have it write this information out to a file after it was done
  494. with a compression.
  495.  
  496. Another possibility would be to get a "core to a.out" translator.  I
  497. understand these exist for some machines, but I have never actually
  498. seen one.  If you had one, you might be able to relatively easily
  499. rig up a version of compress that drops core at a strategic point
  500. and then is capable of restarting with its already populated memory
  501. when invoked from scratch.
  502.  
  503. As a stop-gap here, I have gone to using zip and unzip in lieu of
  504. compress between me and my feed site.  It saves 10-20% on the size
  505. of the compressed batches, but it takes a lot longer to do the
  506. compression and decompression.  Right now, though, I have more cpu
  507. cycles than modem time, so it's a win.
  508.  
  509. I don't have the time to work on something like this myself, but I
  510. would be interested in hearing anything you may come up with on it.
  511. Good luck with it and keep us informed.
  512. -- 
  513. Rob Stampfli  rob@colnet.cmhnet.org      The neat thing about standards:
  514. 614-864-9377  HAM RADIO: kd8wk@n8jyv.oh  There are so many to choose from.
  515. -------------------------------------------------------------------------------
  516. Date: Thu, 16 Jul 92 14:32:06 BST
  517. From: dhd (Damon)
  518. Message-Id: <9207161332.AA05405@exnet.co.uk>
  519. To: res@colnet.cmhnet.org
  520. Subject: Re: Preloading compress for news...
  521.  
  522. >One possibility would be to give compress the option of preloading
  523. >the internal tables from a command-line specified file.  You could
  524. >also have it write this information out to a file after it was done
  525. >with a compression.
  526.  
  527. I like this.  Compat. with extant compress/uncompress, and retunable by
  528. pairs of sites as and when it suits them...  Maybe even depending on
  529. which groups they get...
  530.  
  531. [[Maybe even auto-tuning... This added after original mailer sent]]
  532.  
  533. >Another possibility would be to get a "core to a.out" translator.  I
  534. >understand these exist for some machines, but I have never actually
  535. >seen one.  If you had one, you might be able to relatively easily
  536. >rig up a version of compress that drops core at a strategic point
  537. >and then is capable of restarting with its already populated memory
  538. >when invoked from scratch.
  539.  
  540. This probably won't work for dynamically-linked library versions (it
  541. breaks Sun's sendmail.fc [frozen config] file which works by reloading
  542. .data).
  543.  
  544. >As a stop-gap here, I have gone to using zip and unzip in lieu of
  545. >compress between me and my feed site.  It saves 10-20% on the size
  546. >of the compressed batches, but it takes a lot longer to do the
  547. >compression and decompression.  Right now, though, I have more cpu
  548. >cycles than modem time, so it's a win.
  549.  
  550. Freeze/melt seems much the same.
  551.  
  552. I thought I might quickly modify compress to only compress a 7-bit
  553. input stream (eg the plain ASCII that news ships).  This might make a
  554. significant differernce.  I might try it later.  I think just ignoring
  555. the 8th bit might be OK.  But this is obviously not safe for anything
  556. other than ASCII text.
  557.  
  558. Damon
  559. ===============================================================================
  560. # 1.8 compr 92/07/22 #
  561. -- 
  562. Damon Hart-Davis | Tel/Fax: +44 81 755 0077 |1.21|| ALL MAIL FREE.
  563. Internet: dhd@exnet.co.uk | Also: Damon@ed.ac.uk || Hotrod motor groups soon.
  564. --------------------------+----------------------++ >12 mail&news polls / day.
  565. Public access UNIX (Suns), news and mail for #5 per month.  FIRST MONTH FREE.
  566.