Re: [poppler] Migrating poppler to liblcms2 from liblcms1
I attached a patch using cmsFLAGS_NOOPTIMIZE. I also fixed a bug when using lcms1. --- Koji Otani From: Albert Astals Cid aa...@kde.org Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Sat, 28 Jan 2012 16:47:52 +0100 Message-ID: 4901739.zfF41fXVq6@xps aacid El Divendres, 27 de gener de 2012, a les 18:23:50, Albert Astals Cid va aacid escriure: aacid El Divendres, 27 de gener de 2012, a les 10:39:18, Maria, Marti va escriure: aacid Bon dia Albert, aacid aacid Hola aacid aacid That makes a lot of sense. Lcms2 spends more time on optimizing the aacid transform in order to make it faster. That means create transform is aacid currently slower that lcms1 but applying transforms is way faster. This aacid was indeed a design decision, as most of time creation of transforms aacid happens only once at the very beginning and then this transform is aacid applied to huge amounts of raster. The performance tests I send didn't aacid take creation time into account. aacid aacid I will take this action item to review creation time in the next aacid release. aacid Otherwise, you may consider reusing transforms. aacid aacid We reuse the transforms, it is just that this file has lots of them. aacid aacid That would speed up both aacid lcms1 and lcms2. If this is not feasible, there is a flags aacid cmsFLAGS_NOOPTIMIZE, that makes transform creation fast, at the expense aacid of slower dotransfom operation. This is not recommended at all because aacid you disable all optimizations, but may solve the issue when creating aacid transforms that are applied only to few bytes. aacid aacid Not sure if i can now to how many bytes it'll be applied but i'll do some aacid testing and maybe just enable it for the time being so at least we have the aacid same behaviour than when using lcms1, might not be faster but we not slower aacid either. aacid aacid Using cmsFLAGS_NOOPTIMIZE brings back altona_technical_1v2_x3.pdf to an aacid acceptable speed again. aacid aacid Koji can you please update your patch so it uses the cmsFLAGS_NOOPTIMIZE when aacid compiling with lmcs2? aacid aacid Albert aacid aacid aacid Thanks, aacidAlbert aacid aacid Again, thanks for reporting. I'm putting the transform creation time aacid issue high in my priority list. aacid aacid Best regards aacid aacid Marti Maria, Color Engineer aacid HP Large Format Printers Division - Barcelona aacid marti.ma...@hp.com aacid aacid aacid aacid -Original Message- aacid From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert aacid Astals Cid Sent: jueves, 26 de enero de 2012 19:43 aacid To: poppler@lists.freedesktop.org aacid Cc: Maria, Marti; Till Kamppeter; seb...@ubuntu.com aacid Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 aacid aacid El Dilluns, 23 de gener de 2012, a les 11:16:03, Maria, Marti va escriure: aacidHi, aacidIn my testings lcms2 is significantly faster that lcms1 except when aacidusing floating point, then lcms2 favors precision. aacid aacid Is this precision is so important to justify a 10x slowliness? Maybe aacid it'd be a good idea to have a fallback fast mode for those not willing aacid to take that 10x hit? aacid aacid http://littlecms2.blogspot.com/2010/03/xput-comparative-119-vs-20.ht aacidml aacid aacidAltona test does many different color conversions it would be aacidinteresting to know which transformation is going slow. aacid aacid Attached the callgrind output of running poppler there, you can see the aacid time is almost totally spent on creating the transforms. aacid aacid Wild guess: I'm wondering if the thing is that not transformations are aacid all precalculated (meaning a faster overall if you do lots of access) aacid and previously they were done each time and thus if we end up doing aacid few transformations it was just much faster? aacid aacid Cheers, aacid aacid Albert aacid aacidRegards aacidMarti aacid aacid aacidFrom: Till Kamppeter [till.kamppe...@gmail.com] aacidSent: Monday, January 23, 2012 8:58 AM aacidTo: Albert Astals Cid aacidCc: poppler@lists.freedesktop.org; Maria, Marti; Sebastien Bacher; aacidKoji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from aacid aacidliblcms1 On 01/22/2012 11:18 PM, Albert Astals Cid wrote: aacid Same thing, altona_technical_1v2_x3.pdf still goes up from x aacid seconds aacid to 10x seconds when going from lcms1 to lcms2. aacid aacid That is in my opinion not acceptable (of course i'm not ruling aacid out aacid that we in poppler are using lcms2 wrong). Till, does your aacid ubuntu aacid work cover fixing the regressions of moving from lcms1 to lcms2 aacid or aacid all your work
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Thank you very much for the new patch. I tried it out and it makes indeed altona_technical_1v2_x3.pdf rendering fast again. I have applied this patch to the Poppler package of Ubuntu Precise now. Till On 01/30/2012 10:46 AM, Koji Otani wrote: I attached a patch using cmsFLAGS_NOOPTIMIZE. I also fixed a bug when using lcms1. --- Koji Otani ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Dilluns, 30 de gener de 2012, a les 21:35:48, Yury G. Kudryashov va escriure: Yury G. Kudryashov wrote: Koji Otani wrote: Sorry, but I have never program with CMake yet. I'm afraid that I can't support CMake right now. I can add CMake stuff to the patch when C++ part will be accepted. Forgotten to say: if you want me to add cmake stuff (didn't check if it is already done), write me a personal e-mail. I'm too limited in time these days to read every e-mail in this list. Last patch frok Koji seems good enough, please do the cmake part. I can't commit it to the repo until it's done since it breaks compilation otherwise. Albert ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Great, I would suggest just one test more. Try to convert a PDF with an huge raster image 400Mb. The xput gain of lcms2 should be evident in this case. Regards. Marti -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: sábado, 28 de enero de 2012 16:48 To: poppler@lists.freedesktop.org Cc: Maria, Marti; seb...@ubuntu.com; Till Kamppeter; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Divendres, 27 de gener de 2012, a les 18:23:50, Albert Astals Cid va escriure: El Divendres, 27 de gener de 2012, a les 10:39:18, Maria, Marti va escriure: Bon dia Albert, Hola That makes a lot of sense. Lcms2 spends more time on optimizing the transform in order to make it faster. That means create transform is currently slower that lcms1 but applying transforms is way faster. This was indeed a design decision, as most of time creation of transforms happens only once at the very beginning and then this transform is applied to huge amounts of raster. The performance tests I send didn't take creation time into account. I will take this action item to review creation time in the next release. Otherwise, you may consider reusing transforms. We reuse the transforms, it is just that this file has lots of them. That would speed up both lcms1 and lcms2. If this is not feasible, there is a flags cmsFLAGS_NOOPTIMIZE, that makes transform creation fast, at the expense of slower dotransfom operation. This is not recommended at all because you disable all optimizations, but may solve the issue when creating transforms that are applied only to few bytes. Not sure if i can now to how many bytes it'll be applied but i'll do some testing and maybe just enable it for the time being so at least we have the same behaviour than when using lcms1, might not be faster but we not slower either. Using cmsFLAGS_NOOPTIMIZE brings back altona_technical_1v2_x3.pdf to an acceptable speed again. Koji can you please update your patch so it uses the cmsFLAGS_NOOPTIMIZE when compiling with lmcs2? Albert Thanks, Albert Again, thanks for reporting. I'm putting the transform creation time issue high in my priority list. Best regards Marti Maria, Color Engineer HP Large Format Printers Division - Barcelona marti.ma...@hp.com -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: jueves, 26 de enero de 2012 19:43 To: poppler@lists.freedesktop.org Cc: Maria, Marti; Till Kamppeter; seb...@ubuntu.com Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Dilluns, 23 de gener de 2012, a les 11:16:03, Maria, Marti va escriure: Hi, In my testings lcms2 is significantly faster that lcms1 except when using floating point, then lcms2 favors precision. Is this precision is so important to justify a 10x slowliness? Maybe it'd be a good idea to have a fallback fast mode for those not willing to take that 10x hit? http://littlecms2.blogspot.com/2010/03/xput-comparative-119-vs-20. ht ml Altona test does many different color conversions it would be interesting to know which transformation is going slow. Attached the callgrind output of running poppler there, you can see the time is almost totally spent on creating the transforms. Wild guess: I'm wondering if the thing is that not transformations are all precalculated (meaning a faster overall if you do lots of access) and previously they were done each time and thus if we end up doing few transformations it was just much faster? Cheers, Albert Regards Marti From: Till Kamppeter [till.kamppe...@gmail.com] Sent: Monday, January 23, 2012 8:58 AM To: Albert Astals Cid Cc: poppler@lists.freedesktop.org; Maria, Marti; Sebastien Bacher; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 On 01/22/2012 11:18 PM, Albert Astals Cid wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? I downloaded altona_technical_1v2_x3.pdf from http://www.eci.org/doku.php?id=es:downloads and tried pdftops on Ubuntu Oneiric (11.10, lcms1) and on Precise (12.04, lcms2, Koji Otani's patch) and with lcms1 it takes 3.5 seconds and with lcms2 17.5 seconds. The same problem occurs with Ghostscript: There the same transition happened from Oneiric to Precise and here Oneiric is much faster
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Diumenge, 29 de gener de 2012, a les 17:27:43, Maria, Marti va escriure: Great, I would suggest just one test more. Try to convert a PDF with an huge raster image 400Mb. The xput gain of lcms2 should be evident in this case. Regards. I am not denying there will not be an improvement in this case. It is just that i prefer it to be as fast as it was before, not faster in some cases and slower in others. Albert Marti -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: sábado, 28 de enero de 2012 16:48 To: poppler@lists.freedesktop.org Cc: Maria, Marti; seb...@ubuntu.com; Till Kamppeter; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Divendres, 27 de gener de 2012, a les 18:23:50, Albert Astals Cid va escriure: El Divendres, 27 de gener de 2012, a les 10:39:18, Maria, Marti va escriure: Bon dia Albert, Hola That makes a lot of sense. Lcms2 spends more time on optimizing the transform in order to make it faster. That means create transform is currently slower that lcms1 but applying transforms is way faster. This was indeed a design decision, as most of time creation of transforms happens only once at the very beginning and then this transform is applied to huge amounts of raster. The performance tests I send didn't take creation time into account. I will take this action item to review creation time in the next release. Otherwise, you may consider reusing transforms. We reuse the transforms, it is just that this file has lots of them. That would speed up both lcms1 and lcms2. If this is not feasible, there is a flags cmsFLAGS_NOOPTIMIZE, that makes transform creation fast, at the expense of slower dotransfom operation. This is not recommended at all because you disable all optimizations, but may solve the issue when creating transforms that are applied only to few bytes. Not sure if i can now to how many bytes it'll be applied but i'll do some testing and maybe just enable it for the time being so at least we have the same behaviour than when using lcms1, might not be faster but we not slower either. Using cmsFLAGS_NOOPTIMIZE brings back altona_technical_1v2_x3.pdf to an acceptable speed again. Koji can you please update your patch so it uses the cmsFLAGS_NOOPTIMIZE when compiling with lmcs2? Albert Thanks, Albert Again, thanks for reporting. I'm putting the transform creation time issue high in my priority list. Best regards Marti Maria, Color Engineer HP Large Format Printers Division - Barcelona marti.ma...@hp.com -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: jueves, 26 de enero de 2012 19:43 To: poppler@lists.freedesktop.org Cc: Maria, Marti; Till Kamppeter; seb...@ubuntu.com Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Dilluns, 23 de gener de 2012, a les 11:16:03, Maria, Marti va escriure: Hi, In my testings lcms2 is significantly faster that lcms1 except when using floating point, then lcms2 favors precision. Is this precision is so important to justify a 10x slowliness? Maybe it'd be a good idea to have a fallback fast mode for those not willing to take that 10x hit? http://littlecms2.blogspot.com/2010/03/xput-comparative-119-vs-2 0. ht ml Altona test does many different color conversions it would be interesting to know which transformation is going slow. Attached the callgrind output of running poppler there, you can see the time is almost totally spent on creating the transforms. Wild guess: I'm wondering if the thing is that not transformations are all precalculated (meaning a faster overall if you do lots of access) and previously they were done each time and thus if we end up doing few transformations it was just much faster? Cheers, Albert Regards Marti From: Till Kamppeter [till.kamppe...@gmail.com] Sent: Monday, January 23, 2012 8:58 AM To: Albert Astals Cid Cc: poppler@lists.freedesktop.org; Maria, Marti; Sebastien Bacher; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 On 01/22/2012 11:18 PM, Albert Astals Cid wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? I downloaded altona_technical_1v2_x3.pdf from
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Dilluns, 30 de gener de 2012, a les 00:03:13, Albert Astals Cid va escriure: El Diumenge, 29 de gener de 2012, a les 17:27:43, Maria, Marti va escriure: Great, I would suggest just one test more. Try to convert a PDF with an huge raster image 400Mb. The xput gain of lcms2 should be evident in this case. Regards. I am not denying there will not be an improvement in this case. I think i have one too man not in there but i hope my message was understood. Albert It is just that i prefer it to be as fast as it was before, not faster in some cases and slower in others. Albert Marti -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: sábado, 28 de enero de 2012 16:48 To: poppler@lists.freedesktop.org Cc: Maria, Marti; seb...@ubuntu.com; Till Kamppeter; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Divendres, 27 de gener de 2012, a les 18:23:50, Albert Astals Cid va escriure: El Divendres, 27 de gener de 2012, a les 10:39:18, Maria, Marti va escriure: Bon dia Albert, Hola That makes a lot of sense. Lcms2 spends more time on optimizing the transform in order to make it faster. That means create transform is currently slower that lcms1 but applying transforms is way faster. This was indeed a design decision, as most of time creation of transforms happens only once at the very beginning and then this transform is applied to huge amounts of raster. The performance tests I send didn't take creation time into account. I will take this action item to review creation time in the next release. Otherwise, you may consider reusing transforms. We reuse the transforms, it is just that this file has lots of them. That would speed up both lcms1 and lcms2. If this is not feasible, there is a flags cmsFLAGS_NOOPTIMIZE, that makes transform creation fast, at the expense of slower dotransfom operation. This is not recommended at all because you disable all optimizations, but may solve the issue when creating transforms that are applied only to few bytes. Not sure if i can now to how many bytes it'll be applied but i'll do some testing and maybe just enable it for the time being so at least we have the same behaviour than when using lcms1, might not be faster but we not slower either. Using cmsFLAGS_NOOPTIMIZE brings back altona_technical_1v2_x3.pdf to an acceptable speed again. Koji can you please update your patch so it uses the cmsFLAGS_NOOPTIMIZE when compiling with lmcs2? Albert Thanks, Albert Again, thanks for reporting. I'm putting the transform creation time issue high in my priority list. Best regards Marti Maria, Color Engineer HP Large Format Printers Division - Barcelona marti.ma...@hp.com -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: jueves, 26 de enero de 2012 19:43 To: poppler@lists.freedesktop.org Cc: Maria, Marti; Till Kamppeter; seb...@ubuntu.com Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Dilluns, 23 de gener de 2012, a les 11:16:03, Maria, Marti va escriure: Hi, In my testings lcms2 is significantly faster that lcms1 except when using floating point, then lcms2 favors precision. Is this precision is so important to justify a 10x slowliness? Maybe it'd be a good idea to have a fallback fast mode for those not willing to take that 10x hit? http://littlecms2.blogspot.com/2010/03/xput-comparative-119- vs-2 0. ht ml Altona test does many different color conversions it would be interesting to know which transformation is going slow. Attached the callgrind output of running poppler there, you can see the time is almost totally spent on creating the transforms. Wild guess: I'm wondering if the thing is that not transformations are all precalculated (meaning a faster overall if you do lots of access) and previously they were done each time and thus if we end up doing few transformations it was just much faster? Cheers, Albert Regards Marti From: Till Kamppeter [till.kamppe...@gmail.com] Sent: Monday, January 23, 2012 8:58 AM To: Albert Astals Cid Cc: poppler@lists.freedesktop.org; Maria, Marti; Sebastien Bacher; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 On 01/22/2012 11:18 PM, Albert Astals Cid wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Bon dia Albert, That makes a lot of sense. Lcms2 spends more time on optimizing the transform in order to make it faster. That means create transform is currently slower that lcms1 but applying transforms is way faster. This was indeed a design decision, as most of time creation of transforms happens only once at the very beginning and then this transform is applied to huge amounts of raster. The performance tests I send didn't take creation time into account. I will take this action item to review creation time in the next release. Otherwise, you may consider reusing transforms. That would speed up both lcms1 and lcms2. If this is not feasible, there is a flags cmsFLAGS_NOOPTIMIZE, that makes transform creation fast, at the expense of slower dotransfom operation. This is not recommended at all because you disable all optimizations, but may solve the issue when creating transforms that are applied only to few bytes. Again, thanks for reporting. I'm putting the transform creation time issue high in my priority list. Best regards Marti Maria, Color Engineer HP Large Format Printers Division - Barcelona marti.ma...@hp.com -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: jueves, 26 de enero de 2012 19:43 To: poppler@lists.freedesktop.org Cc: Maria, Marti; Till Kamppeter; seb...@ubuntu.com Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Dilluns, 23 de gener de 2012, a les 11:16:03, Maria, Marti va escriure: Hi, In my testings lcms2 is significantly faster that lcms1 except when using floating point, then lcms2 favors precision. Is this precision is so important to justify a 10x slowliness? Maybe it'd be a good idea to have a fallback fast mode for those not willing to take that 10x hit? http://littlecms2.blogspot.com/2010/03/xput-comparative-119-vs-20.html Altona test does many different color conversions it would be interesting to know which transformation is going slow. Attached the callgrind output of running poppler there, you can see the time is almost totally spent on creating the transforms. Wild guess: I'm wondering if the thing is that not transformations are all precalculated (meaning a faster overall if you do lots of access) and previously they were done each time and thus if we end up doing few transformations it was just much faster? Cheers, Albert Regards Marti From: Till Kamppeter [till.kamppe...@gmail.com] Sent: Monday, January 23, 2012 8:58 AM To: Albert Astals Cid Cc: poppler@lists.freedesktop.org; Maria, Marti; Sebastien Bacher; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 On 01/22/2012 11:18 PM, Albert Astals Cid wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? I downloaded altona_technical_1v2_x3.pdf from http://www.eci.org/doku.php?id=es:downloads and tried pdftops on Ubuntu Oneiric (11.10, lcms1) and on Precise (12.04, lcms2, Koji Otani's patch) and with lcms1 it takes 3.5 seconds and with lcms2 17.5 seconds. The same problem occurs with Ghostscript: There the same transition happened from Oneiric to Precise and here Oneiric is much faster with this file, too. In Precise PDF rendering for printing is done by Ghostscript and not by Poppler, so lcms2 is already used for printing in Precise for some time. As there are no performance complaints by users yet, it seems that for everyday files there is not such a significant performance loss. and this Marti, can you check what is the problem with lcms2 and this PDF file and also why most files are somewhat slower with lcms2? Till ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Divendres, 27 de gener de 2012, a les 10:39:18, Maria, Marti va escriure: Bon dia Albert, Hola That makes a lot of sense. Lcms2 spends more time on optimizing the transform in order to make it faster. That means create transform is currently slower that lcms1 but applying transforms is way faster. This was indeed a design decision, as most of time creation of transforms happens only once at the very beginning and then this transform is applied to huge amounts of raster. The performance tests I send didn't take creation time into account. I will take this action item to review creation time in the next release. Otherwise, you may consider reusing transforms. We reuse the transforms, it is just that this file has lots of them. That would speed up both lcms1 and lcms2. If this is not feasible, there is a flags cmsFLAGS_NOOPTIMIZE, that makes transform creation fast, at the expense of slower dotransfom operation. This is not recommended at all because you disable all optimizations, but may solve the issue when creating transforms that are applied only to few bytes. Not sure if i can now to how many bytes it'll be applied but i'll do some testing and maybe just enable it for the time being so at least we have the same behaviour than when using lcms1, might not be faster but we not slower either. Thanks, Albert Again, thanks for reporting. I'm putting the transform creation time issue high in my priority list. Best regards Marti Maria, Color Engineer HP Large Format Printers Division - Barcelona marti.ma...@hp.com -Original Message- From: Albert Astals Cid [mailto:tsdg...@gmail.com] On Behalf Of Albert Astals Cid Sent: jueves, 26 de enero de 2012 19:43 To: poppler@lists.freedesktop.org Cc: Maria, Marti; Till Kamppeter; seb...@ubuntu.com Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 El Dilluns, 23 de gener de 2012, a les 11:16:03, Maria, Marti va escriure: Hi, In my testings lcms2 is significantly faster that lcms1 except when using floating point, then lcms2 favors precision. Is this precision is so important to justify a 10x slowliness? Maybe it'd be a good idea to have a fallback fast mode for those not willing to take that 10x hit? http://littlecms2.blogspot.com/2010/03/xput-comparative-119-vs-20.html Altona test does many different color conversions it would be interesting to know which transformation is going slow. Attached the callgrind output of running poppler there, you can see the time is almost totally spent on creating the transforms. Wild guess: I'm wondering if the thing is that not transformations are all precalculated (meaning a faster overall if you do lots of access) and previously they were done each time and thus if we end up doing few transformations it was just much faster? Cheers, Albert Regards Marti From: Till Kamppeter [till.kamppe...@gmail.com] Sent: Monday, January 23, 2012 8:58 AM To: Albert Astals Cid Cc: poppler@lists.freedesktop.org; Maria, Marti; Sebastien Bacher; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 On 01/22/2012 11:18 PM, Albert Astals Cid wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? I downloaded altona_technical_1v2_x3.pdf from http://www.eci.org/doku.php?id=es:downloads and tried pdftops on Ubuntu Oneiric (11.10, lcms1) and on Precise (12.04, lcms2, Koji Otani's patch) and with lcms1 it takes 3.5 seconds and with lcms2 17.5 seconds. The same problem occurs with Ghostscript: There the same transition happened from Oneiric to Precise and here Oneiric is much faster with this file, too. In Precise PDF rendering for printing is done by Ghostscript and not by Poppler, so lcms2 is already used for printing in Precise for some time. As there are no performance complaints by users yet, it seems that for everyday files there is not such a significant performance loss. and this Marti, can you check what is the problem with lcms2 and this PDF file and also why most files are somewhat slower with lcms2? Till ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
On 1/22/12 5:18 PM, Albert Astals Cid aa...@kde.org wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? Things to look at in general with lcms usage: * integer vs. floating point conversion * caching of return values (esp. on raster images) * use of their pixel iterators instead of your own Leonard ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
On 01/22/2012 11:18 PM, Albert Astals Cid wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? I downloaded altona_technical_1v2_x3.pdf from http://www.eci.org/doku.php?id=es:downloads and tried pdftops on Ubuntu Oneiric (11.10, lcms1) and on Precise (12.04, lcms2, Koji Otani's patch) and with lcms1 it takes 3.5 seconds and with lcms2 17.5 seconds. The same problem occurs with Ghostscript: There the same transition happened from Oneiric to Precise and here Oneiric is much faster with this file, too. In Precise PDF rendering for printing is done by Ghostscript and not by Poppler, so lcms2 is already used for printing in Precise for some time. As there are no performance complaints by users yet, it seems that for everyday files there is not such a significant performance loss. and this Marti, can you check what is the problem with lcms2 and this PDF file and also why most files are somewhat slower with lcms2? Till ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Hi, In my testings lcms2 is significantly faster that lcms1 except when using floating point, then lcms2 favors precision. http://littlecms2.blogspot.com/2010/03/xput-comparative-119-vs-20.html Altona test does many different color conversions it would be interesting to know which transformation is going slow. Regards Marti From: Till Kamppeter [till.kamppe...@gmail.com] Sent: Monday, January 23, 2012 8:58 AM To: Albert Astals Cid Cc: poppler@lists.freedesktop.org; Maria, Marti; Sebastien Bacher; Koji Otani Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 On 01/22/2012 11:18 PM, Albert Astals Cid wrote: Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? I downloaded altona_technical_1v2_x3.pdf from http://www.eci.org/doku.php?id=es:downloads and tried pdftops on Ubuntu Oneiric (11.10, lcms1) and on Precise (12.04, lcms2, Koji Otani's patch) and with lcms1 it takes 3.5 seconds and with lcms2 17.5 seconds. The same problem occurs with Ghostscript: There the same transition happened from Oneiric to Precise and here Oneiric is much faster with this file, too. In Precise PDF rendering for printing is done by Ghostscript and not by Poppler, so lcms2 is already used for printing in Precise for some time. As there are no performance complaints by users yet, it seems that for everyday files there is not such a significant performance loss. and this Marti, can you check what is the problem with lcms2 and this PDF file and also why most files are somewhat slower with lcms2? Till ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Sorry, but I have never program with CMake yet. I'm afraid that I can't support CMake right now. - Koji Otani From: Albert Astals Cid aa...@kde.org Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Sun, 22 Jan 2012 23:12:34 +0100 Message-ID: 2870811.Y7snKq6PYz@xps aacid El Divendres, 13 de gener de 2012, a les 18:39:56, Koji Otani va escriure: aacid Sorry, There is a silly bug in previous path. aacid Please use this patch. aacid aacid The patch misses CMake support, can you please give it a go? aacid aacid Albert aacid aacid aacid Koji Otani. aacid aacid From: Koji Otani s...@bbr.jp aacid Subject: [poppler] Migrating poppler to liblcms2 from liblcms1 aacid Date: Fri, 13 Jan 2012 18:26:25 +0900 (JST) aacid Message-ID: 20120113.182625.27577732@bbr.jp aacid aacid sho Hi, aacid sho I'm Koji Otani aacid sho aacid sho poppler is using liblcms1 for color-management. aacid sho But liblcms1 is not maintained any more upstream as it is aacid sho replaced by liblcms2. liblcms1 has no good protection against aacid sho crashes (segmentation faults) and issues with color accuracy. aacid sho aacid sho So, I think that we should poppler from liblcms1 to liblcms2. aacid sho aacid sho I made a patch to do so and attach it. aacid sho It can also use liblcms1 for old platform. aacid sho aacid sho Please check it and apply it to the repository. aacid sho aacid sho Thanks in advance. aacid sho aacid sho -- aacid sho Koji Otani aacid sho aacid sho aacid ___ aacid poppler mailing list aacid poppler@lists.freedesktop.org aacid http://lists.freedesktop.org/mailman/listinfo/poppler aacid ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Koji Otani wrote: Sorry, but I have never program with CMake yet. I'm afraid that I can't support CMake right now. I can add CMake stuff to the patch when C++ part will be accepted. -- Yury G. Kudryashov, mailto: ur...@mccme.ru ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
[ Please always Reply to all, I am not subscribed. ] Hi, I only want to say that liblcms1 is not maintained any more upstream and has a lot of crash bugs (possible security vulnerabilities). The replacement is liblcms2 and to get something more reliable, maintained and supported, we are migrating to liblcms2 at Ubuntu: https://bugs.launchpad.net/ubuntu/+source/poppler/+bug/885324 I think this migration should also be done with Poppler upstream, as having a reliable crash-free Poppler is more important than being 5-10 % faster. Most users do not perceive if their PDF rendering takes 5-10 % more time, but they will perceive when less crashes happen. Also security fixes will get rolled out more quickly if a library is maintained upstream. Also the color accuracy (and that is what Color Management is about) is much better with liblcms2. So I highly recommend to pass Poppler upstream to liblcms2 (and note that the patch does not drop the liblcms1 support). Till ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Dijous, 19 de gener de 2012, a les 16:54:34, Koji Otani va escriure: From: Albert Astals Cid aa...@kde.org Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Wed, 18 Jan 2012 18:32:13 +0100 Message-ID: 1432078.MIF33pG9fd@xps aacid El Dimecres, 18 de gener de 2012, a les 18:24:52, Koji Otani va escriure: aacid Hi. aacid aacid I mesured performance with some PDF files. aacid Poppler with lcms2 was slower than one with lcms1 by 5 - 10 %. aacid Is it not acceptable? aacid aacid 5% to 10% of slowlyness for no gain seems a bit too bad, do you have any aacid contact with the lcms author at all? We should contact him about what is his aacid opinion about why lcms2 seems to be slower than lcms1, could you do that? Or aacid prefer me to do it? aacid Could you do that? Sure, no worries. Albert - Koji Otani ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Dissabte, 21 de gener de 2012, a les 22:16:00, Till Kamppeter va escriure: [ Please always Reply to all, I am not subscribed. ] Hi, I only want to say that liblcms1 is not maintained any more upstream and has a lot of crash bugs (possible security vulnerabilities). The replacement is liblcms2 and to get something more reliable, maintained and supported, we are migrating to liblcms2 at Ubuntu: https://bugs.launchpad.net/ubuntu/+source/poppler/+bug/885324 Not that it matters much to poppler what downstreams do. I think this migration should also be done with Poppler upstream, as having a reliable crash-free Poppler is more important than being 5-10 % faster. Most users do not perceive if their PDF rendering takes 5-10 % more time, but they will perceive when less crashes happen. I've yet to find any pdf that crashes in lcms code. Also 10% might not be alot in your i7 laptop, but then go to an arm core and tellme 10% is not a lot. Also security fixes will get rolled out more quickly if a library is maintained upstream. Also the color accuracy (and that is what Color Management is about) is much better with liblcms2. So I highly recommend to pass Poppler upstream to liblcms2 (and note that the patch does not drop the liblcms1 support). I'm not against it, i just want someone to speak to the lcms1 devel and ask him if he is aware of the speed regressions in lcms2, if they are to be expected or maybe we are just using the api wrong or maybe he did not profile lcms2 much and it can be improved. Actually i remember reading in his webpage that lcms2 should be much faster than lcms1, that's why i did the porting to lcms2 in 2010, and it was my idea to make it mandatory for 0.16 until i found that a pdf went from 753 msecs to 7123 msecs in rendering. I will now check again what is the speed in that particular pdf lcms1 vs lcms2. Albert Till ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Divendres, 13 de gener de 2012, a les 18:39:56, Koji Otani va escriure: Sorry, There is a silly bug in previous path. Please use this patch. The patch misses CMake support, can you please give it a go? Albert Koji Otani. From: Koji Otani s...@bbr.jp Subject: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Fri, 13 Jan 2012 18:26:25 +0900 (JST) Message-ID: 20120113.182625.27577732@bbr.jp sho Hi, sho I'm Koji Otani sho sho poppler is using liblcms1 for color-management. sho But liblcms1 is not maintained any more upstream as it is sho replaced by liblcms2. liblcms1 has no good protection against sho crashes (segmentation faults) and issues with color accuracy. sho sho So, I think that we should poppler from liblcms1 to liblcms2. sho sho I made a patch to do so and attach it. sho It can also use liblcms1 for old platform. sho sho Please check it and apply it to the repository. sho sho Thanks in advance. sho sho -- sho Koji Otani sho sho ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Divendres, 13 de gener de 2012, a les 18:39:56, Koji Otani va escriure: Sorry, There is a silly bug in previous path. Please use this patch. Also it would be nice if the summary at the end of configure/cmake tell you if you are going to use lcms1 or lcms2. Albert Koji Otani. From: Koji Otani s...@bbr.jp Subject: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Fri, 13 Jan 2012 18:26:25 +0900 (JST) Message-ID: 20120113.182625.27577732@bbr.jp sho Hi, sho I'm Koji Otani sho sho poppler is using liblcms1 for color-management. sho But liblcms1 is not maintained any more upstream as it is sho replaced by liblcms2. liblcms1 has no good protection against sho crashes (segmentation faults) and issues with color accuracy. sho sho So, I think that we should poppler from liblcms1 to liblcms2. sho sho I made a patch to do so and attach it. sho It can also use liblcms1 for old platform. sho sho Please check it and apply it to the repository. sho sho Thanks in advance. sho sho -- sho Koji Otani sho sho ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Diumenge, 22 de gener de 2012, a les 23:06:07, Albert Astals Cid va escriure: El Dissabte, 21 de gener de 2012, a les 22:16:00, Till Kamppeter va escriure: [ Please always Reply to all, I am not subscribed. ] Hi, I only want to say that liblcms1 is not maintained any more upstream and has a lot of crash bugs (possible security vulnerabilities). The replacement is liblcms2 and to get something more reliable, maintained and supported, we are migrating to liblcms2 at Ubuntu: https://bugs.launchpad.net/ubuntu/+source/poppler/+bug/885324 Not that it matters much to poppler what downstreams do. I think this migration should also be done with Poppler upstream, as having a reliable crash-free Poppler is more important than being 5-10 % faster. Most users do not perceive if their PDF rendering takes 5-10 % more time, but they will perceive when less crashes happen. I've yet to find any pdf that crashes in lcms code. Also 10% might not be alot in your i7 laptop, but then go to an arm core and tellme 10% is not a lot. Also security fixes will get rolled out more quickly if a library is maintained upstream. Also the color accuracy (and that is what Color Management is about) is much better with liblcms2. So I highly recommend to pass Poppler upstream to liblcms2 (and note that the patch does not drop the liblcms1 support). I'm not against it, i just want someone to speak to the lcms1 devel and ask him if he is aware of the speed regressions in lcms2, if they are to be expected or maybe we are just using the api wrong or maybe he did not profile lcms2 much and it can be improved. Actually i remember reading in his webpage that lcms2 should be much faster than lcms1, that's why i did the porting to lcms2 in 2010, and it was my idea to make it mandatory for 0.16 until i found that a pdf went from 753 msecs to 7123 msecs in rendering. Same thing, altona_technical_1v2_x3.pdf still goes up from x seconds to 10x seconds when going from lcms1 to lcms2. That is in my opinion not acceptable (of course i'm not ruling out that we in poppler are using lcms2 wrong). Till, does your ubuntu work cover fixing the regressions of moving from lcms1 to lcms2 or all your work covers is making stuff compile? Cheers, Albert I will now check again what is the speed in that particular pdf lcms1 vs lcms2. Albert Till ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Hi. I mesured performance with some PDF files. Poppler with lcms2 was slower than one with lcms1 by 5 - 10 %. Is it not acceptable? --- Koji Otani From: Koji Otani s...@bbr.jp Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Mon, 16 Jan 2012 15:09:02 +0900 (JST) Message-ID: 20120116.150902.69540157@bbr.jp sho From: Albert Astals Cid aa...@kde.org sho Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 sho Date: Fri, 13 Jan 2012 18:47:10 +0100 sho Message-ID: 2206093.FOZ66yNrbT@xps sho sho aacid El Divendres, 13 de gener de 2012, a les 18:39:56, Koji Otani va escriure: sho aacid Sorry, There is a silly bug in previous path. sho aacid Please use this patch. sho aacid sho aacid I sent a similar patch ages ago to the list, then i realized lcms2 was giving sho aacid us much worse performance numbers than lcms1 and dropped the patch. Have you sho aacid done some measuing of the performance? sho aacid sho sho Sorry, I didn't know that. I'll do some more investigation. sho --- sho Koji Otani. sho sho aacid sho aacid sho aacid Koji Otani. sho aacid sho aacid From: Koji Otani s...@bbr.jp sho aacid Subject: [poppler] Migrating poppler to liblcms2 from liblcms1 sho aacid Date: Fri, 13 Jan 2012 18:26:25 +0900 (JST) sho aacid Message-ID: 20120113.182625.27577732@bbr.jp sho aacid sho aacid sho Hi, sho aacid sho I'm Koji Otani sho aacid sho sho aacid sho poppler is using liblcms1 for color-management. sho aacid sho But liblcms1 is not maintained any more upstream as it is sho aacid sho replaced by liblcms2. liblcms1 has no good protection against sho aacid sho crashes (segmentation faults) and issues with color accuracy. sho aacid sho sho aacid sho So, I think that we should poppler from liblcms1 to liblcms2. sho aacid sho sho aacid sho I made a patch to do so and attach it. sho aacid sho It can also use liblcms1 for old platform. sho aacid sho sho aacid sho Please check it and apply it to the repository. sho aacid sho sho aacid sho Thanks in advance. sho aacid sho sho aacid sho -- sho aacid sho Koji Otani sho aacid sho sho aacid sho sho aacid ___ sho aacid poppler mailing list sho aacid poppler@lists.freedesktop.org sho aacid http://lists.freedesktop.org/mailman/listinfo/poppler sho aacid sho ___ sho poppler mailing list sho poppler@lists.freedesktop.org sho http://lists.freedesktop.org/mailman/listinfo/poppler sho ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
From: Albert Astals Cid aa...@kde.org Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Wed, 18 Jan 2012 18:32:13 +0100 Message-ID: 1432078.MIF33pG9fd@xps aacid El Dimecres, 18 de gener de 2012, a les 18:24:52, Koji Otani va escriure: aacid Hi. aacid aacid I mesured performance with some PDF files. aacid Poppler with lcms2 was slower than one with lcms1 by 5 - 10 %. aacid Is it not acceptable? aacid aacid 5% to 10% of slowlyness for no gain seems a bit too bad, do you have any aacid contact with the lcms author at all? We should contact him about what is his aacid opinion about why lcms2 seems to be slower than lcms1, could you do that? Or aacid prefer me to do it? aacid Could you do that? - Koji Otani ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
From: Albert Astals Cid aa...@kde.org Subject: Re: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Fri, 13 Jan 2012 18:47:10 +0100 Message-ID: 2206093.FOZ66yNrbT@xps aacid El Divendres, 13 de gener de 2012, a les 18:39:56, Koji Otani va escriure: aacid Sorry, There is a silly bug in previous path. aacid Please use this patch. aacid aacid I sent a similar patch ages ago to the list, then i realized lcms2 was giving aacid us much worse performance numbers than lcms1 and dropped the patch. Have you aacid done some measuing of the performance? aacid Sorry, I didn't know that. I'll do some more investigation. --- Koji Otani. aacid aacid aacid Koji Otani. aacid aacid From: Koji Otani s...@bbr.jp aacid Subject: [poppler] Migrating poppler to liblcms2 from liblcms1 aacid Date: Fri, 13 Jan 2012 18:26:25 +0900 (JST) aacid Message-ID: 20120113.182625.27577732@bbr.jp aacid aacid sho Hi, aacid sho I'm Koji Otani aacid sho aacid sho poppler is using liblcms1 for color-management. aacid sho But liblcms1 is not maintained any more upstream as it is aacid sho replaced by liblcms2. liblcms1 has no good protection against aacid sho crashes (segmentation faults) and issues with color accuracy. aacid sho aacid sho So, I think that we should poppler from liblcms1 to liblcms2. aacid sho aacid sho I made a patch to do so and attach it. aacid sho It can also use liblcms1 for old platform. aacid sho aacid sho Please check it and apply it to the repository. aacid sho aacid sho Thanks in advance. aacid sho aacid sho -- aacid sho Koji Otani aacid sho aacid sho aacid ___ aacid poppler mailing list aacid poppler@lists.freedesktop.org aacid http://lists.freedesktop.org/mailman/listinfo/poppler aacid ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
Sorry, There is a silly bug in previous path. Please use this patch. Koji Otani. From: Koji Otani s...@bbr.jp Subject: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Fri, 13 Jan 2012 18:26:25 +0900 (JST) Message-ID: 20120113.182625.27577732@bbr.jp sho Hi, sho I'm Koji Otani sho sho poppler is using liblcms1 for color-management. sho But liblcms1 is not maintained any more upstream as it is sho replaced by liblcms2. liblcms1 has no good protection against sho crashes (segmentation faults) and issues with color accuracy. sho sho So, I think that we should poppler from liblcms1 to liblcms2. sho sho I made a patch to do so and attach it. sho It can also use liblcms1 for old platform. sho sho Please check it and apply it to the repository. sho sho Thanks in advance. sho sho -- sho Koji Otani sho sho diff -ru poppler-0.18.2.org/config.h.in poppler-0.18.2/config.h.in --- poppler-0.18.2.org/config.h.in 2011-12-04 23:46:48.0 +0900 +++ poppler-0.18.2/config.h.in 2012-01-13 18:35:53.0 +0900 @@ -194,6 +194,9 @@ /* Use single precision arithmetic in the Splash backend */ #undef USE_FLOAT +/* Defines if use lcms1 */ +#undef USE_LCMS1 + /* Version number of package */ #undef VERSION diff -ru poppler-0.18.2.org/configure poppler-0.18.2/configure --- poppler-0.18.2.org/configure 2011-12-04 23:46:37.0 +0900 +++ poppler-0.18.2/configure 2012-01-13 18:35:30.0 +0900 @@ -622,6 +622,8 @@ POPPLER_MAJOR_VERSION PC_REQUIRES_PRIVATE PC_REQUIRES +USE_LCMS1_FALSE +USE_LCMS1_TRUE USE_CMS_FALSE USE_CMS_TRUE LCMS_LIBS @@ -22725,6 +22727,78 @@ pkg_cv_LCMS_CFLAGS=$LCMS_CFLAGS elif test -n $PKG_CONFIG; then if test -n $PKG_CONFIG \ +{ { $as_echo $as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \lcms2\; } 5 + ($PKG_CONFIG --exists --print-errors lcms2) 25 + ac_status=$? + $as_echo $as_me:${as_lineno-$LINENO}: \$? = $ac_status 5 + test $ac_status = 0; }; then + pkg_cv_LCMS_CFLAGS=`$PKG_CONFIG --cflags lcms2 2/dev/null` + test x$? != x0 pkg_failed=yes +else + pkg_failed=yes +fi + else +pkg_failed=untried +fi +if test -n $LCMS_LIBS; then +pkg_cv_LCMS_LIBS=$LCMS_LIBS + elif test -n $PKG_CONFIG; then +if test -n $PKG_CONFIG \ +{ { $as_echo $as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \lcms2\; } 5 + ($PKG_CONFIG --exists --print-errors lcms2) 25 + ac_status=$? + $as_echo $as_me:${as_lineno-$LINENO}: \$? = $ac_status 5 + test $ac_status = 0; }; then + pkg_cv_LCMS_LIBS=`$PKG_CONFIG --libs lcms2 2/dev/null` + test x$? != x0 pkg_failed=yes +else + pkg_failed=yes +fi + else +pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo $as_me:${as_lineno-$LINENO}: result: no 5 +$as_echo no 6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then +_pkg_short_errors_supported=yes +else +_pkg_short_errors_supported=no +fi +if test $_pkg_short_errors_supported = yes; then + LCMS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs lcms2 21` +else + LCMS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs lcms2 21` +fi + # Put the nasty error message in config.log where it belongs + echo $LCMS_PKG_ERRORS 5 + + lcms2=no +elif test $pkg_failed = untried; then + { $as_echo $as_me:${as_lineno-$LINENO}: result: no 5 +$as_echo no 6; } + lcms2=no +else + LCMS_CFLAGS=$pkg_cv_LCMS_CFLAGS + LCMS_LIBS=$pkg_cv_LCMS_LIBS +{ $as_echo $as_me:${as_lineno-$LINENO}: result: yes 5 +$as_echo yes 6; } + lcms2=yes +fi + if test x$lcms2 = xno; then + +pkg_failed=no +{ $as_echo $as_me:${as_lineno-$LINENO}: checking for LCMS 5 +$as_echo_n checking for LCMS... 6; } + +if test -n $LCMS_CFLAGS; then +pkg_cv_LCMS_CFLAGS=$LCMS_CFLAGS + elif test -n $PKG_CONFIG; then +if test -n $PKG_CONFIG \ { { $as_echo $as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \lcms\; } 5 ($PKG_CONFIG --exists --print-errors lcms) 25 ac_status=$? @@ -22807,6 +22881,7 @@ $as_echo yes 6; } fi + fi elif test x$enable_cms = xtry; then pkg_failed=no @@ -22817,6 +22892,80 @@ pkg_cv_LCMS_CFLAGS=$LCMS_CFLAGS elif test -n $PKG_CONFIG; then if test -n $PKG_CONFIG \ +{ { $as_echo $as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \lcms2\; } 5 + ($PKG_CONFIG --exists --print-errors lcms2) 25 + ac_status=$? + $as_echo $as_me:${as_lineno-$LINENO}: \$? = $ac_status 5 + test $ac_status = 0; }; then + pkg_cv_LCMS_CFLAGS=`$PKG_CONFIG --cflags lcms2 2/dev/null` + test x$? != x0 pkg_failed=yes +else + pkg_failed=yes +fi + else +pkg_failed=untried +fi +if test -n $LCMS_LIBS; then +pkg_cv_LCMS_LIBS=$LCMS_LIBS + elif test -n $PKG_CONFIG; then +if test -n $PKG_CONFIG \ +{ { $as_echo $as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \lcms2\; } 5 + ($PKG_CONFIG --exists --print-errors lcms2) 25 + ac_status=$? +
Re: [poppler] Migrating poppler to liblcms2 from liblcms1
El Divendres, 13 de gener de 2012, a les 18:39:56, Koji Otani va escriure: Sorry, There is a silly bug in previous path. Please use this patch. I sent a similar patch ages ago to the list, then i realized lcms2 was giving us much worse performance numbers than lcms1 and dropped the patch. Have you done some measuing of the performance? Cheers, Albert Koji Otani. From: Koji Otani s...@bbr.jp Subject: [poppler] Migrating poppler to liblcms2 from liblcms1 Date: Fri, 13 Jan 2012 18:26:25 +0900 (JST) Message-ID: 20120113.182625.27577732@bbr.jp sho Hi, sho I'm Koji Otani sho sho poppler is using liblcms1 for color-management. sho But liblcms1 is not maintained any more upstream as it is sho replaced by liblcms2. liblcms1 has no good protection against sho crashes (segmentation faults) and issues with color accuracy. sho sho So, I think that we should poppler from liblcms1 to liblcms2. sho sho I made a patch to do so and attach it. sho It can also use liblcms1 for old platform. sho sho Please check it and apply it to the repository. sho sho Thanks in advance. sho sho -- sho Koji Otani sho sho ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler