agisoft-llc / cloud-scripts

Configuration scripts for cloud instances with GPUs to make possible usage of OpenGL GUI applications in TurboVNC using VirtualGL.
MIT License
70 stars 18 forks source link

Metashape on Google Cloud #5

Closed tinco closed 5 years ago

tinco commented 5 years ago

Hi, Google has a slightly different offering from EC:

https://cloud.google.com/compute/pricing#gpus

Do I understand correctly from your suggestions that Metashape can not (efficiently) leverage the V100 and P100 series accelerators, and we're best off picking the best performing regular type GPU, so in Google's current case the T4 with 4 GPU's?

PolarNick239 commented 5 years ago

Metashape scales pretty well with multiple GPUs and with powerful V100 and P100. But V100 and P100 often have worse value.

You can roughly estimate GPU power with its GFlops (for example see wikipedia about Teslas and GTX 10X0):

GPUs GFlops GPU speed Google Cloud price Value (GFlops/$)
K80 3500 x0.35 $0.45 N/A
GTX1080 8500 x1.0 N/A N/A
2 x M60 8500 x1.38 N/A N/A
4 x M60 17000 x2.58 N/A N/A
1 x V100 14400 x2.05 $2.48 5806
4 x V100 57600 x6.95 $9.92 5806
1 x P100 9385 N/A $1.46 6428
4 x P100 37540 N/A $5.84 6428
1 x T4 8100 N/A $0.95 8526
4 x T4 32400 N/A $3.80 8526
1 x P4 4795 N/A $0.60 7992
4 x P4 19180 N/A $2.40 7992

So it seems that T4 should have the best value. But keep in mind that this prediction is based on GFlops. If you need to have more precise measurements - you can build big depth maps on each GPU model in big enough dataset, write down time of calculations, and calculate value as (GPU speed)/$, where (GPU speed)=1/(time of calculations).

tinco commented 5 years ago

Ah, so if I want to maximize the value of my Metashape license and increase my mesh generation turn around time, it might actually be better to go for a 4xV100 because it's 43% faster? Are their concerns about things like software (or drivers) support with these GPU's? I think I read something about bad OpenGL support on a forum post but that might have been years old already.

Thanks!

PolarNick239 commented 5 years ago

Yes, 4xV100 can be more cost effective for you.

Note that not all parts of processing utilize GPUs. But images matching, depth maps building and new depth maps-based model building - are all GPU-based.

We tested V100 on AWS EC2 with OpenGL GUI + TurboVNC. Scripts from this repository works just fine.