Forum

Author Topic: Is External GPU an good way to increase performance?  (Read 7528 times)

ChrisC

  • Newbie
  • *
  • Posts: 19
    • View Profile
Is External GPU an good way to increase performance?
« on: May 29, 2019, 12:15:02 AM »
I asked my IT department to upgrade the GPU on the computer we use for SfM work. They agreed but want to add an external GPU instead of a better internal graphics card.  So I am wondering:

1. Is external GPU a good way to increase performance?
 
2. Are there any external GPUs that are known to work well with Metashape?

3. Conversely, are there any external GPUs to stay away from?



Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15177
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #1 on: May 29, 2019, 01:51:51 PM »
Hello ChrisC,

I think it mostly depends on the GPU performance (number of CUDA cores / shader processor units) and the data transfer band between computer and external card.

We have not so much experience with particular external GPU devices, but have quite good results with the docker stations (for example, ROG 2) that are able to use almost any kind of modern GPU devices, however, such docker stations are mostly focusing on the gamer class cards.
Best regards,
Alexey Pasumansky,
Agisoft LLC

WSurvey

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #2 on: May 29, 2019, 04:04:33 PM »
Hello ChrisC,

I think it mostly depends on the GPU performance (number of CUDA cores / shader processor units) and the data transfer band between computer and external card.

We have not so much experience with particular external GPU devices, but have quite good results with the docker stations (for example, ROG 2) that are able to use almost any kind of modern GPU devices, however, such docker stations are mostly focusing on the gamer class cards.

Hello Alexey,

IS there any specification of a GPU that correlates most strongly to performance when processing in metashape?

e.g. CUDA cores, GPU clock speed, GPU memory?

I'm wondering if there was a systematic way to maximise dollar-for-performance when buying a GPU.

Cheers.
« Last Edit: May 29, 2019, 04:43:29 PM by WSurvey »

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15177
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #3 on: May 29, 2019, 05:08:08 PM »
Hello WSurvey,

For image matching and depth maps calculation higher number of CUDA cores and higher frequency means better performance. For build mesh from depth maps (although some sub-steps are still CPU only) and refine mesh operations amount of VRAM is also important and would have effect on the performance.
Best regards,
Alexey Pasumansky,
Agisoft LLC

RHenriques

  • Full Member
  • ***
  • Posts: 228
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #4 on: May 29, 2019, 06:37:17 PM »
Simple and short answer - YES, a lot!
I recommend, at least, the Nvidia GTX 1080 Ti or better.

wizprod

  • Jr. Member
  • **
  • Posts: 85
    • View Profile
    • Dronographica
Re: Is External GPU an good way to increase performance?
« Reply #5 on: May 30, 2019, 10:24:31 PM »
I would say it depends on what you got currently.

- Slow GPU (like in a laptop): Yep, go for it
- Already have fast internal GPU's: Nop, not worth the money then.


There is a mem-transfer penalty from "slow" Thunderbolt 3 cable (40 gbit), so compared to a GPU mounted internally on the PCI Express bus, you will see the card behave quite a bit slower in an EGPU enclosure.

WSurvey

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #6 on: June 25, 2019, 11:44:46 AM »
Hello WSurvey,

For image matching and depth maps calculation higher number of CUDA cores and higher frequency means better performance. For build mesh from depth maps (although some sub-steps are still CPU only) and refine mesh operations amount of VRAM is also important and would have effect on the performance.

Alexey, another question. If Metashape is performing a GPU accelerated operation, am I right in thinking that as long as the CPU is able to feed the GPU fast enough to keep it at 100% utilization, then a CPU beyond that speed will make little difference to the time taken in that step?

WSurvey

  • Newbie
  • *
  • Posts: 32
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #7 on: June 28, 2019, 03:03:19 PM »


Hi Alexey,

If Metashape is performing a GPU accelerated operation, am I right in thinking that as long as the CPU is able to feed the GPU fast enough to keep it at 100% utilization, then a CPU beyond that speed will make little difference to the time taken in that step?

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15177
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #8 on: June 28, 2019, 03:27:23 PM »
Hello WSurvey,

There still could be some intermediate steps that are performed on CPU only (for example, considerable amount of those during new meshing method), so CPU is not only feeding the data to GPUs.
Best regards,
Alexey Pasumansky,
Agisoft LLC

mellinger

  • Newbie
  • *
  • Posts: 5
    • View Profile
Re: Is External GPU an good way to increase performance?
« Reply #9 on: June 28, 2019, 10:02:16 PM »
I had great results with an AMD Vega 64 in a Razer Core X eGPU enclosure.