Re: Fw: Re: Welcome to the "png-mng-implement" mailing list (Digest mode)
John Bowler <[email protected]>
| Newsgroups | gmane.comp.graphics.png.devel |
|---|---|
| Message-ID | <CAP7U398UPt3Zzwos_QJZnbHwEONEf308OBODWwogQOovqZcNoA@mail.gmail.com> |
On Wed, Mar 22, 2017 at 1:48 AM, <[email protected]> wrote: > > Hi, > I'm beginner of using libpng, is there any performance benchmark for > libpng on Linux? > > Because the range of PNG images is so large and the libpng API so broad the best benchmark is always your own application; it uses specific types of images (e.g. it might not use grayscale images at all) and it uses specific parts of the API and never touches other parts used by other apps. If you have a collection of images that are typical of those that get used in your environment you can assemble them into a test file using timepng (from contrib/libtests/timepng.c) and then run that to get a simple timing figure for raw read of all of those PNG files. timepng either reads an image row-by-row or, if one of the options to have libpng perform a transform on read are given, uses png_read_png to read the whole image into memory with libpng transforms. One or other of these will probably correspond with what any given app does when it reads a PNG, but bear in mind that it is very likely that most of the time will go in what happens *after* the PNG has been read inside the app or other library code. If you use the progressive reader timepng won't be of help; the progressive reader uses significantly different code. If you use libpng for gamma or grayscale transforms and your images are small the transforms will dominate the read time; timepng won't give anything useful. If you use the write code that will dominate performance; it is not speed optimized. Of course these are caveats that apply in general to any benchmark; I trust I'm preaching to the choir here. -- John Bowler <[email protected]> +1 (541) 450-9885 PO BOX 3151 KERBY OR 97531-3151 USA ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ png-mng-implement mailing list png-mng-implement-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org https://lists.sourceforge.net/lists/listinfo/png-mng-implement