Agisoft Metashape

Agisoft Metashape => Bug Reports => Topic started by: WarrenSchultz on April 28, 2017, 09:42:29 PM

Title: Radeon Pro not being used for GPU calculations on photo alignment
Post by: WarrenSchultz on April 28, 2017, 09:42:29 PM
Testing out a new Precision 5720 with an integrated Radeon Pro WX7100, the dense point calculation uses the GPU all the way through, but during the alignment phase, none of the images are flagged as [GPU], compared to when I've run it on other systems.
In the GPU configuration tab (I'm running the latest build of PS Standard), the chip identifies by the codename, Ellesmere, rather than the retail part number.
Title: Re: Radeon Pro not being used for GPU calculations on photo alignment
Post by: Alexey Pasumansky on April 29, 2017, 12:33:18 AM
Hello WarrenSchultz,

Can you please provide the log related to the image matching stage?
Title: Re: Radeon Pro not being used for GPU calculations on photo alignment
Post by: WarrenSchultz on May 01, 2017, 07:08:54 PM
Log attached below. Thanks.
Title: Re: Radeon Pro not being used for GPU calculations on photo alignment
Post by: Alexey Pasumansky on May 01, 2017, 07:20:48 PM
Hello WarrenSchultz,

From the log I see that the GPU is used for the point detection and image matching:

Code: [Select]
2017-04-28 15:36:53 Detecting points...
2017-04-28 15:36:53 Using device: Ellesmere, 36 compute units, 8192 MB global memory, OpenCL 2.0
2017-04-28 15:36:53   max work group size 256
2017-04-28 15:36:53   max work item sizes [256, 256, 256]
2017-04-28 15:36:53   max mem alloc size 5952 MB
2017-04-28 15:36:53   wavefront width 64

Code: [Select]
2017-04-28 15:40:22 Selecting pairs...
2017-04-28 15:40:22 Using device: Ellesmere, 36 compute units, 8192 MB global memory, OpenCL 2.0
2017-04-28 15:40:22   max work group size 256
2017-04-28 15:40:22   max work item sizes [256, 256, 256]
2017-04-28 15:40:22   max mem alloc size 5952 MB
2017-04-28 15:40:22   wavefront width 64
2017-04-28 15:40:31 667194 matches found in 8.485 sec
2017-04-28 15:40:31 matches combined in 0.093 sec
2017-04-28 15:40:31 matches filtered in 0.36 sec
2017-04-28 15:40:31 3178 pairs selected in 0 sec
2017-04-28 15:40:31 Matching points...
2017-04-28 15:40:31 Using device: Ellesmere, 36 compute units, 8192 MB global memory, OpenCL 2.0
2017-04-28 15:40:31   max work group size 256
2017-04-28 15:40:31   max work item sizes [256, 256, 256]
2017-04-28 15:40:31   max mem alloc size 5952 MB
2017-04-28 15:40:31   wavefront width 64

The lines are not just marked with [GPU] prefix during Align Photos stage, even though the part of the operations are performed on GPU.


Title: Re: Radeon Pro not being used for GPU calculations on photo alignment
Post by: WarrenSchultz on May 01, 2017, 07:28:51 PM
Ok, that seems odd, since trying the same thing on a Mac (OpenCL 1.2) or Windows laptop (CUDA) it shows the [GPU] annotations during those phases on the same version of the software.
Title: Re: Radeon Pro not being used for GPU calculations on photo alignment
Post by: Alexey Pasumansky on May 01, 2017, 07:35:26 PM
Hello WarrenSchultz,

[GPU]/[CPU] prefix is shown if the images are split into tiles during the Align Photos stage. If the full size image is used for the feature point detection, then no prefix is displayed.
Title: Re: Radeon Pro not being used for GPU calculations on photo alignment
Post by: WarrenSchultz on May 01, 2017, 10:12:02 PM
Ah! That makes a lot more sense then, thank you.

I only did one test, but alignment appeared to take twice as long on the newer/faster system, which is what made me look into this further. Not sure if there's an optimization issue for Agisoft to look at or not, if that's the case, but it did seem counter intuitive.