|TIFF and LibTiff Mailing List Archive|
LibTiff Mailing List
2015.01.05 14:07 "Re: Fast TIFF Reading on Windows", by Aaron Boxer
On Mon, Jan 5, 2015 at 8:47 AM, Aaron Boxer <firstname.lastname@example.org> wrote: > > ---------- Forwarded message ---------- > From: Aaron Boxer <email@example.com> > Date: Mon, Jan 5, 2015 at 8:44 AM > Subject: Re: [Tiff] Fast TIFF Reading on Windows > To: Bob Friesenhahn <firstname.lastname@example.org> > > > > > On Sun, Jan 4, 2015 at 11:49 PM, Bob Friesenhahn < > email@example.com> wrote: > >> On Sun, 4 Jan 2015, Aaron Boxer wrote: >> >> Another finding: reading files with four threads (I have a quad core i7) >>> is about twice as fast as single threaded >>> reads. >>> >> >> With this approach do you have one thread calling libtiff APIs at a time? > > > With the threaded approach, I have a thread safe list of files in a > directory, and each thread gets the next > file name in the list and loads with libtiff. So, yes, I haven't changes > the library, just calling it from multiple threads. > > What would be interesting is to use multiple threads to read a single TIFF > image. This would be particularly advantageous > for BigTIFF. My library is using C++11, so threading support is baked > in. Its quite easy, keeping in mind that threads are evil. > For libtiff, one would need to find a good cross platform C threading > library. > > For a single file, the approach could be similar: a thread safe list of > strips, and each thread gets the next strip and reads it in. > > Actually, this would be a perfect job for OpenMP. And you wouldn't need a thread safe list, just divide up the strips evenly across threads.