Puget Systems print logo

https://www.pugetsystems.com

Read this article at https://www.pugetsystems.com/guides/1465
Article Thumbnail

Metashape 1.5.1: Intel Core i7 & Core i9 vs AMD Threadripper Performance

Written on May 28, 2019 by William George
Share:

Introduction

Metashape, formerly known as PhotoScan, is a photogrammetry program that takes a set of images and combines them to create a 3D model or map. Processing of those images into point clouds and 3D meshes/textures is time-consuming, heavily using a computer's CPU and GPU. We have updated our benchmark tools, following the recent rebranding of this software, so in our first article focusing on the new Metashape we will take a look at how Intel's Core i7 and i9 processors stack up against AMD's Threadripper chips.

Test Hardware

Here is a list of the hardware we tested Metashape on. The video card and RAM capacity were kept the same across all platforms, to avoid either of those throwing off the comparison. All results included here are from after the recent Windows 10 security patch addressing MDS vulnerabilities in some Intel processors, but we did see a small increase in Core i7 9700K and i9 9900K performance when we moved to the newer Z390 motherboard - which helped offset some of the performance those chips lost because of the update.

Benchmark Details

We have improved our benchmarking for Metashape compared to previous articles. Now we have four image sets that we own the rights to, covering both smaller and larger size Model and Map projects. The smaller image sets are included in our public Metashape benchmark, which you can download and run if you want to compare your system's performance to what we measured in our testing.

  • Rock Model - 36 photos at 20 megapixels each
  • School Map - 51 photos at 18 megapixels each
  • School Model - 439 photos at 18 megapixels each
  • Park Map - 792 photos at 18 megapixels each

We also split our "model" testing into two branches: one using the creation of a dense point cloud to create the model / mesh, and the other skipping that step and using just the depth maps for mesh creation. These methods utilize the hardware in a computer differently, and we wanted to reflect both approaches in our benchmark. This is also why we ran Metashape 1.5.1 instead of the newer 1.5.2: it was reported to us by a reader than 1.5.2 has some odd behavior with depth maps, and we didn't want that to affect these results.

Each image set was processed 2-3 times on each CPU, and the fastest overall result was used for the comparisons below.

Results Overview

Here are charts for each of the four image sets, showing the total time (in seconds) they took to process on each CPU. The processors are listed in the same order on all charts, regardless of performance, to make it easy to see how they stack up. Intel's chips are shown in blue, with AMD's in red, and the fastest result on each project is highlighted (bold) to ensure it stands out from the crowd.

Detailed Results

For those who want to dig further into the differences in how each CPU performs, here is a table showing the times for each step within Metashape on each of the image sets:

Metashape 1.5.1 Intel Core i7 & i9 versus AMD Threadripper Performance Table

Analysis

Across most of our testing, Intel's Core i7 9700K and i9 9900K traded off coming in first and second in performance. This seems to indicate that, in general, clock speed matters more for Metashape than core count - and that Hyperthreading, the biggest feature difference between these two processors, doesn't play much of a role either.

However, there is one odd outlier - the larger of the two models (not maps) when using the Dense Cloud method of mesh creation. There was some very strange behavior in that part of the benchmark:

  • It is the only test where building the dense cloud was faster with more cores
  • The Core i9 9980XE took oddly long to build the mesh (this happened in multiple runs)

I can't explain the 9980XE's slowness at building the mesh, but even if that hadn't happened I think the 9940X would still have been the fastest in this situation. It has a good combination of clock speed and core count, so with the core count suddenly benefiting performance in the most time-consuming step it came out on top by a wide margin. Remember, though, that this was a lone outlier among our results.

Conclusion

For most projects in Metashape 1.5.1, either Intel's Core i7 9700K or i9 9900K will give you the best performance - at least when using a single video card (we'll be testing multiple GPU configurations in the near future to see if that changes anything). The one possible exception is processing larger models using a dense point cloud, rather than just depth maps, where a processor with more cores while still maintaining very high clock speeds can take the lead. Such processor can often support higher amounts of memory as well, which may be a factor if you work with particularly large projects or use very high quality settings.

Stay tuned for more coverage of Metashape, including video card performance comparisons and a look at multi-GPU scaling.

Looking for a
Photogrammetry Workstation?

Puget Systems offers a range workstations tailored for Pix4D, Metashape, and RealityCapture. Even in the most demanding situations, our workstations and designed to minimize downtime and allow you to work as efficiently as possible.

Tags: Metashape, photogrammetry, Performance, CPU, Intel, Intel 9th Gen, Intel X-series, AMD, AMD Threadripper 2nd Gen

This is so weird. Building dense cloud Metashape uses all my OC Ryzen 2700 cores so I would expect that more cores = faster build. But no, it looks almost opposite.
Is it mean that Metashape scales badly?
Did you consider testing Metashape speed with different memory speeds?
I'm downloading your public benchmark and I'll be happy to share my results.

Posted on 2019-06-14 07:36:56

Yeah, I agree that something seems wrong about more cores leading to lower performance in parts of Metashape. I'm really not sure what is going on there, and would love to see your Ryzen results. We'll be looking at the new 3rd gen Ryzen stuff when it comes out, and may get the chance to look at different memory speeds around the same time.

Posted on 2019-06-14 16:21:14

Something to keep in mind is that just because all the CPU cores are loaded, that does not mean that the application is making effective use of all those cores. We used to do things like examine CPU load during benchmarks in order to estimate whether more cores would improve performance, and while you could make pretty good guesses most of the time, sometimes it was just way off. Not sure if it is due too some reporting issue (maybe having to do with the polling interval?), applications doubling up on some tasks, or some other factor, but it definitely isn't foolproof.

Posted on 2019-06-14 16:54:48

I'm using Linux and "run script" didn't run for me so I've trided just smallest set (rock model) with manually setting same parameters as
script had. I my results in places where only CPU was used were between Intel and Threadripper - nonsense, or maybe I set something wrong. My
hardware is: Ryzen 2700@4.1GHz, RAM 128GB 3000MHz, Samsung 980 evo 1TB.
Software: Metashape 1.5.1 + Linux Manjaro with 5.1.9 kernel.
Tests where GPU was used were way faster but I do have 2x1080Ti.
In conclusion I think my results cannot be compared, but they not seems to be way off in comparison with your results.
Maybe you could export batch processing in xml format? this should work well.

PS I'm waiting for ryzen 3000 as well :)

Posted on 2019-06-17 10:37:24

The more I work with Metashape, the more it seems like anything above about 8 cores actually starts to slow down performance in key steps - even if clock speeds stay about the same. So I am not at all surprised that your Ryzen chip is faster than Threadripper (because it isn't being hurt by having more cores, and is at a fairly high clock speed) but slower than Intel's 9900K (which is even higher clocked at the same number of cores). And yeah, GPU-accelerated steps being faster with your two video cards makes sense as well :)

What I am even more curious about, though, would be Windows vs Linux on the same hardware. In a lot of situations like that, Linux seems to come out on top - but I've never tried Metashape on it. I may have to give that a try sometime.

Posted on 2019-06-17 16:34:00