|
From: | Florian Kainz |
Subject: | Re: [Openexr-devel] OpenEXR from shared libs. |
Date: | Fri, 02 Mar 2007 18:32:45 -0800 |
User-agent: | Mozilla Thunderbird 1.0 (X11/20041207) |
At least on Linux, the #else version of the AutoArray code, which allocates memory on the stack, is significantly faster than the #if version, which calls new[] and delete[]. I tried reading a sequence of piz-compressed frames (1000x750 pixels, Y, RY and BY channels) using three parallel threads. The #if and #else versions of the AutoArray code run at 25fps and 34fps respectively. I wonder if there is a way to construct and destroy AutoArrays faster on systems that have small per-thread run-time stacks. Florian Florian Kainz wrote:
I'll do a couple of tests to see whether there's a significant speed difference between the #if and the #else versions of the code. If they are close, I think I'll remove the #else version alltogether. darby johnston wrote:--- Florian Kainz <address@hidden> wrote:I wonder if the problem has something to do with the size of the stack when threads are enabled.Nice one; looks like that fixed it. How about: #if defined (HAVE_DARWIN) || defined (_WIN32) \ || defined (_WIN64) || defined(__FreeBSD__) Or would a test in the configure script be better? Thanks, Darby _______________________________________________ Openexr-devel mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/openexr-devel
[Prev in Thread] | Current Thread | [Next in Thread] |