PNGImageWriter 1.12 over 100% faster

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

PNGImageWriter 1.12 over 100% faster

Steven Kelly
Just a quick note to anyone who uses PNGImageWriter: I've published a
new version, 1.12, which is over 100% faster than the previous version.

It still works with a wide variety of VW versions and zlib backends. I'd
recommend using Compression-ZLibWrite (1.2.1) from the public store for
best performance and accuracy. This works on all platforms without any
extra libraries, just using the zlib built into the VM.

Do people think these are worth adding as goodies to the distro?

Share and enjoy,
Steve

PS If you are already using Cairo in your application (or badly need
even more PNG writing speed and don't mind adding the external
libraries), you can get even faster (and don't need PNGImageWriter or
Compression-ZLibWrite):

savePixmap: pixmap toPNGFile: filename
        cairoSurface := CairoGraphics.Surface concreteDisplayClass
pixmap: pixmap.
        [cairoSurface writeToPng: filename] ensure: [cairoSurface
release]

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: PNGImageWriter 1.12 over 100% faster

Steffen Märcker
Yes, I think they are worth to be in the distro and appreciate your work!

Regards, Steffen


Am 11.03.2011, 17:52 Uhr, schrieb Steven Kelly <[hidden email]>:

> Just a quick note to anyone who uses PNGImageWriter: I've published a
> new version, 1.12, which is over 100% faster than the previous version.
>
> It still works with a wide variety of VW versions and zlib backends. I'd
> recommend using Compression-ZLibWrite (1.2.1) from the public store for
> best performance and accuracy. This works on all platforms without any
> extra libraries, just using the zlib built into the VM.
>
> Do people think these are worth adding as goodies to the distro?
>
> Share and enjoy,
> Steve
>
> PS If you are already using Cairo in your application (or badly need
> even more PNG writing speed and don't mind adding the external
> libraries), you can get even faster (and don't need PNGImageWriter or
> Compression-ZLibWrite):
>
> savePixmap: pixmap toPNGFile: filename
> cairoSurface := CairoGraphics.Surface concreteDisplayClass
> pixmap: pixmap.
> [cairoSurface writeToPng: filename] ensure: [cairoSurface
> release]
>
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: PNGImageWriter 1.12 over 100% faster

Holger Guhl
In reply to this post by Steven Kelly
  That's good to hear. +1 from me if you want to share this as a Contrib on the CD. I still prefer a
slim image w/o having Store loaded. And if internet is not available, I cannot read the Public
Repository at all. A parcel in the distribution set is always at hand and loads fast w/o overhead.
Recently, I had a support case where the question arose about tools for image post-processing (i.e.
save as...). The set of available tools is not too abundant. There is a PNG writer in ADvance and an
Arbor GIF writer. That's all. Hints on more tools I might have missed are welcome. Your tool would
be useful.

Cheers
Holger

Am 11.03.2011 17:52, schrieb Steven Kelly:

> Just a quick note to anyone who uses PNGImageWriter: I've published a
> new version, 1.12, which is over 100% faster than the previous version.
>
> It still works with a wide variety of VW versions and zlib backends. I'd
> recommend using Compression-ZLibWrite (1.2.1) from the public store for
> best performance and accuracy. This works on all platforms without any
> extra libraries, just using the zlib built into the VM.
>
> Do people think these are worth adding as goodies to the distro?
>
> Share and enjoy,
> Steve
>
> PS If you are already using Cairo in your application (or badly need
> even more PNG writing speed and don't mind adding the external
> libraries), you can get even faster (and don't need PNGImageWriter or
> Compression-ZLibWrite):
>
> savePixmap: pixmap toPNGFile: filename
> cairoSurface := CairoGraphics.Surface concreteDisplayClass
> pixmap: pixmap.
> [cairoSurface writeToPng: filename] ensure: [cairoSurface
> release]
>
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: PNGImageWriter 1.12 over 100% faster

Josef Springer
In reply to this post by Steven Kelly
Hello Steven,

i am interested in using PNGWriterImage for tasks is our Bussiness-Process-Management-Suite OfficeTalk. Currently we are using ICC.ADvance.ICCPNGGenerator in a VW7.7.1 environment.
Makes it sense to replace it with PNGWriterImage ? If yes, can you tell me a source please (i do not have access to the public repository yet).
Signature

mit freundlichen Grüßen / best regards,
Josef Springer
(Geschäftsleitung/Management)

Postal
Address
[hidden email]
Orlando-di-Lasso Str. 2
D-85640 Putzbrunn
Phone
Office
+49 (0)89 600 6920


Phone Fax
+49 (0)89 600 69220


Web
Web
http://www.joops.com


JOOPS
(HRB München 86239)

-- the software company --

Steven Kelly wrote:
Just a quick note to anyone who uses PNGImageWriter: I've published a
new version, 1.12, which is over 100% faster than the previous version. 

It still works with a wide variety of VW versions and zlib backends. I'd
recommend using Compression-ZLibWrite (1.2.1) from the public store for
best performance and accuracy. This works on all platforms without any
extra libraries, just using the zlib built into the VM. 

Do people think these are worth adding as goodies to the distro?

Share and enjoy,
Steve

PS If you are already using Cairo in your application (or badly need
even more PNG writing speed and don't mind adding the external
libraries), you can get even faster (and don't need PNGImageWriter or
Compression-ZLibWrite): 

savePixmap: pixmap toPNGFile: filename
	cairoSurface := CairoGraphics.Surface concreteDisplayClass
pixmap: pixmap.
	[cairoSurface writeToPng: filename] ensure: [cairoSurface
release]



  



_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: PNGImageWriter 1.12 over 100% faster

Steven Kelly
Signature

Hello Josef,

 

The previous version of PNGImageWriter was about 25% faster than ICCPNGGenerator in its Smalltalk code (both use the VM’s ZLibInterface, so the time for compression will be the same). The new version of PNGImageWriter is about twice as fast as the old one, so if you’re writing a lot of PNGs you should see a noticeable improvement. For my test set of ten images (graphically close enough to BPMN), it’s 1.0 seconds in Smalltalk with the new PNGImageWriter vs. 2.5 with ICCPNGGenerator. Zlib compression time adds 1.25 to both of these, and actually drawing the diagrams ready for saving adds another 1.25 (we use gradient fills and anti-aliasing, which make it quite slow). This makes the total time the user sees 5 seconds with ICCPNGGenerator vs. 3.5 with PNGImageWriter. Using Cairo gets us down to a little over 2.5 seconds.

 

Currently the only source is the public repository, so grab PNGImageWriter and Compression-ZLibWrite from there. You can use a guest login and port 80, so there’s nothing stopping you: http://www.cincomsmalltalk.com/CincomSmalltalkWiki/PostgreSQL+Access+Page

 

All the best,

Steve

 

From: Josef Springer [mailto:[hidden email]]
Sent: 12. maaliskuuta 2011 13:59
To: Steven Kelly
Cc: VWDEV List; [hidden email]
Subject: Re: PNGImageWriter 1.12 over 100% faster

 

Hello Steven,

i am interested in using PNGWriterImage for tasks is our Bussiness-Process-Management-Suite OfficeTalk. Currently we are using ICC.ADvance.ICCPNGGenerator in a VW7.7.1 environment.
Makes it sense to replace it with PNGWriterImage ? If yes, can you tell me a source please (i do not have access to the public repository yet).

mit freundlichen Grüßen / best regards,
Josef Springer
(Geschäftsleitung/Management)

Postal

Address

[hidden email]

Orlando-di-Lasso Str. 2

D-85640 Putzbrunn

Phone

Office

+49 (0)89 600 6920

Phone

Fax

+49 (0)89 600 69220

Web

Web

http://www.joops.com

 

JOOPS

(HRB München 86239)

-- the software company --


Steven Kelly wrote:

Just a quick note to anyone who uses PNGImageWriter: I've published a
new version, 1.12, which is over 100% faster than the previous version. 
 
It still works with a wide variety of VW versions and zlib backends. I'd
recommend using Compression-ZLibWrite (1.2.1) from the public store for
best performance and accuracy. This works on all platforms without any
extra libraries, just using the zlib built into the VM. 
 
Do people think these are worth adding as goodies to the distro?
 
Share and enjoy,
Steve
 
PS If you are already using Cairo in your application (or badly need
even more PNG writing speed and don't mind adding the external
libraries), you can get even faster (and don't need PNGImageWriter or
Compression-ZLibWrite): 
 
savePixmap: pixmap toPNGFile: filename
       cairoSurface := CairoGraphics.Surface concreteDisplayClass
pixmap: pixmap.
       [cairoSurface writeToPng: filename] ensure: [cairoSurface
release]
 
 
 
  

 


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc