The Shape of Everything
A website mostly about Mac stuff, written by August "Gus" Mueller
» Acorn
» Retrobatch
» Mastodon
» Micro.blog
» Instagram
» Github
» Maybe Pizza?
» Archives
» Feed
» Micro feed
December 6, 2019

A Retrobatch customer recently wrote in with a problem where it was crashing when processing a bunch of images overnight, seemingly from gobbling up all the available memory on the system. After a bit of questioning I've narrowed down at least one source of the problem- Core Graphics is leaking like a sieve when generating thumbnails from 16 bit per component tiff files.

I have a sample project which simply opens up an image source and then loads the thumbnail 500 times in a loop. It releases the thumbnail immediately so the system can reclaim the memory for other operations.

When run against an 8bpc tiff file, memory grows to around 75 megabytes. When run against a 16bpc image, memory spikes to almost 4 gigabytes, and the memory is never reclaimed.

Obviously most apps don't open up 16bpc tiff images 500 times in a row, but this is exactly what Retrobatch was designed in part to do.

Filed as FB7482388.