Forum

Author Topic: Specifications to reduce processing time  (Read 9306 times)

raphaelfp

  • Newbie
  • *
  • Posts: 2
    • View Profile
Specifications to reduce processing time
« on: September 27, 2019, 07:59:35 PM »
Hi, I’m part of a team who uses Drone Deploy for flight planning in a cartographic boundary project, and it covers a considerable amount of area in South America. Capturing the images hasn’t been a problem at all so far, however we’re going through a hard time when it comes to processing them on Agisoft Photoscan Professional Edition (version 1.2.0 build 2152, 64 bit), because it’s running on a workstation which is too good for a home computer, and too unfit for such a tough task.

Our first attempt covered an area of 4,25 km², mapping each square kilometer (containing 1329 photos) at a time because of the drone battery limit. So we would merge all these separate captures in a whole picture of the island in the end. We are aiming for minimum precision of 5 cm. When we imported the files on Agisoft to process it, the estimated time was around 150 days! And we could not do it in a single shot - each flight had to be processed separately, so we could join the images together at the end. Obviously that means we are prone to imprecision even having control points set in every flight (obtained with dual frequency GPS, L1 and L2), but it was the only way we could find to work with the available equipment.

The next step is doing the same work with a much bigger and detailed area (17,42 km²), which is set to last 400 DAYS to process once we take all the pictures we need. More than a year of work, and we are pretty sure we can reduce that estimative with proper infrastructure. Maybe even achieving to do all the processing one time only. That means we are trying to find out specifically what kind of workstation we should buy aiming a better performance, considering our resources are around US$19,000.

Here is our current setup. It’s not a brand new but it’s all we’ve got. Any advice on what to buy is welcome.

    Intel Xeon CPU E3-1225 v5 @ 3.30GHz 3.31GHz
    RAM: 16 GB
    Windows 10 Pro 64 bit
    NVIDIA GeForce GTX 1050 Ti

Thanks in advance!

wizprod

  • Jr. Member
  • **
  • Posts: 79
    • View Profile
    • Dronographica
Re: Specifications to reduce processing time
« Reply #1 on: September 27, 2019, 11:07:13 PM »
Hmm, neither processor or GFX will give you a lot of umph.
Get a more modern processor with a lot of cores, and multiple GPU's.

If you google a bit, it also also quite easy to find hardware recommendations on Photoscan/Metashape, along with performance studies.

SAV

  • Hero Member
  • *****
  • Posts: 710
    • View Profile
Re: Specifications to reduce processing time
« Reply #2 on: September 28, 2019, 07:50:44 AM »
Hi raphaelfp,

Check out this website. They have tested Metashape performance on various hardware:
https://www.pugetsystems.com/recommended/Recommended-Systems-for-Agisoft-Metashape-145/Hardware-Recommendations

It seems like following components do a good job:
- i9 9900K
- RTX 2080 Ti

I've recently processed a large scale dataset (18km2, 2800 images, 20MP each). In total it took about 3 days (including manual masking of lakes/rivers/etc to generate a clean point cloud). All was processed in a single chunk with image alignment, dense cloud and mesh at HIGH quality settings. The system it was run on had 64GB RAM, an Intel Xeon W-2155 CPU and a Nvidia Quadro RTX5000 graphics card. The i9-9900K and RTX 2080 Ti should give you a very similar performance (I think even better). The whole system should cost you much less than US$ 19k.

I also highly recommend to update to the latest version of Agisoft Metashape instead of using 1.2.0 as mentioned in your post. A lot of performance improvements have been built-into the code and GPU acceleration is much better in the recent version of Metashape.

All the best. If you need some more specific advice, feel free to PM me.

Regards,
SAV

« Last Edit: October 01, 2019, 04:21:17 AM by SAV »

raphaelfp

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Specifications to reduce processing time
« Reply #3 on: September 30, 2019, 04:47:46 PM »
Thank you both for all the information. I'll discuss them with the rest of the team and we have good hopes for it. Let's see what happens and I may tell the results some other day!

khedar012

  • Newbie
  • *
  • Posts: 11
    • View Profile
Re: Specifications to reduce processing time
« Reply #4 on: November 28, 2019, 04:17:54 PM »
What system did you end up getting ;)

MikeZ

  • Newbie
  • *
  • Posts: 23
    • View Profile
Re: Specifications to reduce processing time
« Reply #5 on: November 29, 2019, 12:27:43 AM »
1300 photos is not a huge project. You should easily process it in one day.

You can try online services or buy a PC. For 19K dollars is will be super easy. I think for 3K you will create a monster that will process it in hours.

AMD CPU take a look at new Ryzen 9 series 12 thread
RTX 2080TI - if money doesn't matter you can double it but there is no significant change. I would say that 2070 will be enought.
64gb or 128gb of ram and a fast SSD as Virtual Memory - but must be plugged in the motherboard to achieve higher speed
and the "rest"

If it is not fast enough, buy two or four of those and use networking. This setup will give you the possibility to calculate not 1300 photos but 130000. 1,5k I do at my station and It is a bit weaker than the spec I gave.

bgroff

  • Newbie
  • *
  • Posts: 21
    • View Profile
    • Groff Engineering
Re: Specifications to reduce processing time
« Reply #6 on: November 30, 2019, 07:00:27 PM »
I would add to this that the user must ensure that Agisoft is actually using the NVIDIA graphics card. For systems with both integrated graphics cards and NVIDIA GPU, the system often defaults to the integrated card and the user has to manually assign the program to the GPU through the NVIDIA control panel. See attached image.

Carl Bromell

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Specifications to reduce processing time
« Reply #7 on: December 26, 2019, 09:22:15 PM »
Hi,

I've recently upgraded my system to a PC with Intel i9 9900K and a GeForce Nvidia 2080ti with 32 gigs of RAM. I thought this to be a fast system from what information i've gathered online, but i'm still struggling with long processing times, mostly on the dense cloud process.

I know this to be the most demanding of processes, but with 600 images i have a process time of 34 hours on setting "high".
I've tried the "neighbors tweak" and then it is a lot faster but i'm not happy with the quality i'm getting.

I did the benchmark test on the Puget site, and i got good, or even really good results from that when i compare it to other similar systems. The test they have is with fewer images, around 50. (https://www.pugetsystems.com/labs/articles/Metashape-Benchmark-1457/)

So, what have i missed?
Do i have to setup something else, is there anything i've overlooked?

My computer is using the 2080ti, although very little or not at all when doing the dense point cloud, and the CPU is working 100% all the time.
My RAM is  working at 90% when running 600 images, could that be the problem?

What can i do to speed up the process?

Mak11

  • Sr. Member
  • ****
  • Posts: 371
    • View Profile
Re: Specifications to reduce processing time
« Reply #8 on: December 26, 2019, 10:19:21 PM »
Carl,

1) What type of project are you working on with those 600 images? Does this project requires you to generate a Dense Cloud? If not (which is often the case ) you should generate the mesh via the depth maps which is for the most part GPU accelerated and now totally out of core in version 1.6. (Dense Cloud génération is CPU only after the Depth Maps are generated). You will see a enormous reduction in processing time using this workflow (can be up to 8x faster depending on the project).

2) Puget's photogrammetry benchmarks are far from representative of real life projects (they are far to simple)

Cheers

Mak


Carl Bromell

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Specifications to reduce processing time
« Reply #9 on: December 26, 2019, 11:20:38 PM »
Mak,

Thanks for the quick reply.

Not all projects need a dense cloud, so thats a great alternative, although some do and then it's a pain with the long processing times. I was certain that they would go down more with my new setup, is 34 h really normal for a  600 images project run on high?

When generating depth maps the GPU is only using 4-5%, shouldn't it be working harder or does that just mean i have a great GPU?

I'll try to test the new version soon!

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 14003
    • View Profile
Re: Specifications to reduce processing time
« Reply #10 on: December 27, 2019, 01:56:43 PM »
Hell
When generating depth maps the GPU is only using 4-5%, shouldn't it be working harder or does that just mean i have a great GPU?

Hello Carl,

Which tool you are using to monitor GPU activity during the processing, NVIDIA SMI, GPU-Z? If you have enabled your NVIDIA card in GPU preferences of Metashape window you should see the [GPU] related lines in the Console pane during the depth maps generation and the utilization of GPU should be very high (over 80-90%).
Best regards,
Alexey Pasumansky,
Agisoft LLC

Carl Bromell

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Specifications to reduce processing time
« Reply #11 on: January 08, 2020, 10:04:06 PM »
I use windows task manager to monitor the activity. I'm fairly new to PC, been using macs the last two decades. However, i saw that it loaded about 9 Gb into the GPU now, does that mean that it's working alright?
It's also loading about 75 Gb into my RAM.
I'm running a test on a project with 2500 pictures now, and i'm creating a mesh from depth maps as suggested, on setting high. It's still running and has been doing so for the past 30+ hours. I found something in the details window that caught my attention.

Does "Devices performance: -100%" mean minus?

"Devices performance:
 - 100%    done by [GPU 1]  with timings: 66448 s = 0% fetch + 3% init + 79% hist (33% GPU) + 4% init + 9% iters (100% + 0%) + 3% updating
IO utilization: 6%
Unpacker utilization: 4%
Level done in 66533.4 sec
Surface estimated in 139169 sec
Generating mesh..."

Does the details in this info seem right, good/bad?

Cheers

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 14003
    • View Profile
Re: Specifications to reduce processing time
« Reply #12 on: January 09, 2020, 11:29:18 AM »
Hello Carl,

Are you using the latest release version of Metashape 1.6.0 build 9925? If so, then which quality for the depth maps you have selected?

As for the "minus" sign in the log - it is just a bullets symbol in the list. In the current case there only one element in the list related to the single GPU.
Best regards,
Alexey Pasumansky,
Agisoft LLC

jean

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Specifications to reduce processing time
« Reply #13 on: November 20, 2020, 01:19:52 PM »
Hello,


What is best configuration for program settings for nvidia control panel ?

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 14003
    • View Profile
Re: Specifications to reduce processing time
« Reply #14 on: November 21, 2020, 01:52:49 PM »
Hello Jean,

I think it should be sufficient, if you enable high performance NVIDIA processor for Metashape in program 3D settings, and in the detailed settings select NVIDIA card for OpenGL rendering and switch to Max Performance in power management line.
Best regards,
Alexey Pasumansky,
Agisoft LLC