bugbear wrote:
>
> It appears on testing so far that blending the images into rows first,
> then blending the rows, so that the vertical seams are small, gives a great saving on CPU.
>
> I will do the "near the limit" memory test tonight, when I don't need my laptop
> to be responsive to me...
>
> BugBear
>
Short version: blend in a row-based manner for best performance.
Long Version:
OK; I've upped the test size; the output is now 33054x17290, (~0.5 GigaPixel)
The mapped TIFFs are 3.2 G, the pano roughly 15 columns x 11 rows of 8 MegaPixel images..
Mapping took from 17:24:16 until 17:44:39, around 20 minutes.
Blending:
1st run was done by creating 8 "row" panos; blending the rows took:
159,146,*728,154,164,*522,140,*512 seconds for a total 2525 seconds, or 42 minutes.
Since the "true" pano has 11 rows, the longer times are where 2 rows where merged.
Note that the time goes up by more than a factor of 2, more like 3.5. Worse than linear degradation.
Merging the rows into a final pano was done in 2 ways; first, by combing a tree of pairs,
and then "in one go";
Tree of pairs took 2408 second, "in one go" took 3552 seconds.
So; best blend time would be use the "pairs" tree, for a total of 2525 + 2408 = 4933 - 82 minutes.
I finally did a control run, simply letting enblend loose;
It had loaded 140 of 173 image after 45610 seconds (12 hours), when I killed it.
My enblend args are:
/usr/bin/enblend -m 4500 --compression=packbits
Any details about my system and software that are needed to interpret these results - just ask.
My "take home" is that performing sub-blends in a row orientated fashion is a MASSIVE win.
I do not know if this is due to better memory usage (rowed/striped access to memory is hugely better than columnar),
or wether is influences the seam calculations.
BugBear