Forum

Author Topic: Investing on a PC  (Read 10691 times)

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Investing on a PC
« on: November 01, 2013, 05:36:39 AM »
Hi Folks,

I am planning to invest on a new PC to handle 80+ pics. I want the workflow including generating point cloud, depth reconstruction, generating mesh etc of 500k polygon (with high resolution) can be completed in 20 mins. Here is my current configuration, please feel free to comment:

CPU: Intel Core i7-4770K,
RAM: 32G RAM,
Video: GTX770  2GB DDR5

Does dual GPU such as 7990 help in this case?

 

hengefjes

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Investing on a PC
« Reply #1 on: November 01, 2013, 12:43:43 PM »
I doubt that you will be able to complete those tasks with 80+ high res pics in 20 mins on any of todays "consumer hardware". In case you want to process larger datasets, the amount of RAM seems to be the only limitation fo PS to get the job done. You could consider a mainboard with 8 slots for RAM-chips, like the ASUS P9X79 to be able to upgrade in case you hit the limits. That mainboard also comes in two versions where the more expensive one can take more graphic cards - if you want to upgrade in that direction

Added: In another thread David Cockey gave this very useful tip on how to overcom ram limitations:
I have only run into memory limitations with build geometry. My work-around in that case is to:
1) Align
2) Duplicate the resulting chunk
3) Adjust the "box" in each chunk so that it only covers a portion of the geometry, with the chunks overlapping.
4) Build Geometry in each chunk.
« Last Edit: November 04, 2013, 11:56:03 AM by hengefjes »

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: Investing on a PC
« Reply #2 on: November 01, 2013, 01:20:16 PM »
Hi hengefjes,

Thanks for your message.  The memory requirement should be  12 GB - 36 GB for 50-100 photos with high quality. Can the process get faster if it use more ram? It seems there is not much information telling where is the bottleneck for small group of photos.

 ;D

hengefjes

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Investing on a PC
« Reply #3 on: November 01, 2013, 03:21:23 PM »
Can the process get faster if it use more ram?
No, I guess not, - but its nice to have some "headroom". If you read some of the other threads about hardware on here, you will find that the GPU(s) is the key to speed in Photoscan.

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: Investing on a PC
« Reply #4 on: November 01, 2013, 03:40:17 PM »
In your opinion, do you think a dual GPU config can get the performance much closer to my target?  ;D

hengefjes

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Investing on a PC
« Reply #5 on: November 01, 2013, 06:04:12 PM »
Yes, - more so than spending the same amount of money on a faster cpu.

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: Investing on a PC
« Reply #6 on: November 01, 2013, 07:22:18 PM »
Thanks I will consider GPU upgrade first. How about CPU? is it already good enough?

I read some posts, it seems there is not much enhance to use Xeon, am I correct?  ???

hengefjes

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Investing on a PC
« Reply #7 on: November 01, 2013, 10:54:01 PM »
Xeon platforms will give you the ability to run several processors. Having 24 cores running at 3 GHz would certainly improve the cpus contribution on chewing data - but that costs money! I would probably switch to the LGA2011 socket and the Intel 4820K - I think that would give you more "bang for the bucks" since you already have decided to put some hefty gpu in there. The Asus P9X79 WS gives you four PCIe 3.0x16 slots and the option to use 8x8 Gb's of RAM - if you need to. The extra RAM will let you use your computer for other things aswell when processing in PS - without beeing afraid to touch it in case anything freezes. The extra PCIe slots lets you play with more graphic cards - say; if you borrowed a couple from frends to experiment.

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: Investing on a PC
« Reply #8 on: November 02, 2013, 02:15:09 AM »
Thanks for your explanation. One thing I am not sure is what is the performance improvement of having more cores. But from your information, it seems more cores won't make a proportional leap in performance. :D

hengefjes

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Investing on a PC
« Reply #9 on: November 02, 2013, 03:34:45 AM »
I'm no expert on this - by no means, so somebody please correct me if im wrong. From what I understand, the more cores - the better the computer can handle multi-tasking. Some servers run virtual desktops for a whole lot of thin clients, this means that all software for a whole bunch of people doing all kinds of stuff, runs on the server - the "thin clients" only show the desktop screen and sends keystrokes and mouse-movement/-clicks etc. to the server where everything is processed. I guess in these cases the multiprocessors with a bunch of cores come in handy. Some software, like Photoscan, can take advantage of all available cores. Although - I think Alexey Pasumansky wrote somwhere here that at some stage in the mesh triangulation (87% into build geometry?) only one core is used exclusively.

The GPU is better suited for the calculation types in most of the steps on the way from pics to textured model, while some stages has to be processed on the CPU. Sure it will run faster on an extremely fast CPU, but overall the stages where the CPU does the work represents a small percentage of the whole workflow in Photoscan. Thats why you should spend your money on some good GPUs, instead of an expensive CPU - if Photoscan is your main reason to invest.

If I bring up the perfomance monitor while working in Photoscan, I can see that all cores are working hard most of the time. Now, if there where more of them I guess they would be working just as hard at the same speed as the others. Most of this workload is shared with the GPU, but the majority of calculations, while processing in Photoscan, seems to fit the GPU-processors better. I understand it as if the GPU is better at smaller, quick math-pieces, while the CPU has to deal with the hard stuff.

Again - somebody, please correct me if I'm wrong. I know I have a lot to learn :)

Added: Heres what was said in that other thread:
Hello Andy,

At 87% of mesh generation phase mesh is being triangulated at this step really doesn't use all the cores. It may take quite a long time depending on the dense point cloud quality (and number of points in the cloud).
« Last Edit: November 04, 2013, 01:47:25 AM by hengefjes »

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: Investing on a PC
« Reply #10 on: November 02, 2013, 10:58:46 AM »
I have the chance do some timing using the same config on the chunk with 36 photos 18M pixels

OpenGL Vendor: NVIDIA Corporation
OpenGL Renderer: GeForce GTX 770/PCIe/SSE2
OpenGL Version: 4.4.0

Matching points...
Finished processing in 318.986 sec (exit code 1)

Reconstructing depth...
finished depth reconstruction in 361.597 seconds
Device 1 performance: 114.135 million samples/sec (CPU)
Device 2 performance: 602.764 million samples/sec (GeForce GTX 770)
Total performance: 716.899 million samples/sec

Generating mesh...
Finished processing in 1500.09 sec (exit code 1)

Parameterizing texture atlas...
Finished processing in 111.771 sec (exit code 1)


The most time killing task is the mesh generation as expected but you can see in the attachment, PS does not use GPU to offload CPU in mesh generation. So I guess the bottleneck is still CPU in my scenario. :-\


hengefjes

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Investing on a PC
« Reply #11 on: November 02, 2013, 02:28:37 PM »
You should try to do that same test with the beta version 1,0 of PS. They have changed the workflow a little, and you could probably see some different results there. I have used it for a while now, and have had no problems with it.

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: Investing on a PC
« Reply #12 on: November 02, 2013, 04:14:12 PM »
Hi I redo the test with 1.0.0. The processing time is improved but PS only loaded GPU in mesh generation depth reconstruction. If I want to improve overall process, maybe no of CPU core is the answer. Just my thought :D

OpenGL Vendor: NVIDIA Corporation
OpenGL Renderer: GeForce GTX 770/PCIe/SSE2
OpenGL Version: 4.4.0

Finished processing in 316.623 sec (exit code 1)

finished depth reconstruction in 367.215 seconds
Device 1 performance: 117.283 million samples/sec (CPU)
Device 2 performance: 604.202 million samples/sec (GeForce GTX 770)
Total performance: 721.485 million samples/sec

Generating dense point cloud...
Finished processing in 438.976 sec (exit code 1)

Generating mesh...
Finished processing in 827.538 sec (exit code 1)

Blending textures...
Finished processing in 58.645 sec (exit code 1)
« Last Edit: November 03, 2013, 05:16:07 AM by meshmixup »

David Cockey

  • Full Member
  • ***
  • Posts: 209
    • View Profile
Re: Investing on a PC
« Reply #13 on: November 02, 2013, 09:45:20 PM »
but PS only loaded GPU in mesh generation.

My experience with 1.0 is the GPU is used during point cloud creation, not mesh generation.

meshmixup

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: Investing on a PC
« Reply #14 on: November 03, 2013, 05:23:53 AM »
You are right, I make my correction above: gpu is only loaded in depth reconstruction. Does anyone have experience how the mesh generation can be improved? :)