On 07/10/2015 10:42 AM, Yeongdeok Suh wrote: > > > 2015-07-10 14:53 GMT+09:00 Rob Landley <[email protected] > <mailto:[email protected]>>: > > On 07/09/2015 05:41 AM, Yeongdeok Suh wrote: > > I discovered slow decompression while testing gunzip. > > I want to discuss about this improvement. > > > > I gunzipped an 15MB *.tar.gz file on the ARM board, and it takes around > > 17 sec. > > It's too slow, so I want to improve this for ARM based environment. > > (x86 was okay) > > So I looked at it some more and the deflate performance is kinda > pathetic, I did "time zcat linux-4.0.tar.gz > /dev/null" and toybox's > zcat is about half the speed of the ubuntu zcat. (I was going for simple > code and didn't particularly optimize it at all.) > > So I agree it could be faster and I'm all for speeding it up, but I need > to figure out where the slowness _is_ first. > > > Actually, I'm analyzing the gzip inflate mechanism yet.
Sorry, meant inflate. I haven't finished implementing deflate yet, got distracted by 37 other things. (When to do dictionary resets is a judgement call I can't come up with a good answer for, put it on the todo list, my todo list runneth over...) > As you said, the code is simple but I think it can be improved. > If I have any idea about this, I'll share via mailing list. I can poke at it myself but probably not until after 1.0. Right now filling in missing functionality is higher priority than performance tuning for anyhing non-pathological. > > As I debugged the src, > > below while loop takes too much time when decoded huffman symbol is over > > 256. > > Could you tell me how you "debugged the src"? (What profiling tool did > you use?) > > I didn't use anything special tools. I'm using gdb, > and I just checked speed of some code blocks via clock() function. The code block you highlighted is doing write() calls. > Rob Rob _______________________________________________ Toybox mailing list [email protected] http://lists.landley.net/listinfo.cgi/toybox-landley.net
