RENDER ZONE

http://www.ontmoeting.nl/renderzone/

homepage 

16 aug. 2017

 

CPU VERSUS GPU

het eeuwig durende steekspel

waar techniek samen moet komen met de commercie en ieder zijn eigen vrije invulling daarvan geeft
 
 
Renderen met CPU en/of GPU het blijft lastig te beoordelen
 
Dan eerst maar wat harde feiten
 
1. Het meest universeel is CPU renderen, dat biedt in het algemeen de meeste opties in het renderprogramma. Universeel omdat het programmeren voor de CPU nu eenmaal twee niveaus "makkelijker" gaat dan voor de GPU. Lang niet alle computer gebruikers beschikken over een geschikte externe grafische kaart, waardoor alleen met GPU renderen een nieuwe computer noodzakelijk maakt. Of kunnen deze er later niet bijplaatsen (Laptops / Apple computers)
 
2. Renderen alleen maar in de GPU is hip en modern. Software fabrikanten proberen allemaal een graantje mee te pikken van deze hype. Toch zit hier een addertje onder het gras: het ontwikkelen van een goed werkend GPU renderprogramma (CUDA of OpenCL) is een kwestie van jaren en dus van veel investeringsgeld. Doorzettingsvermogen en de juiste hoogwaardig opgeleide ontwikkelaars en programmeurs.
 
3. GPU renderen is al vanaf het begin vele malen sneller, dan CPU renderen, dat zal niemand durven te ontkennen *. We zien op deze pagina's wetenschappenlijk uitgevoerde onderzoeken waaruit duidelijk blijkt dat de GPU tot veel meer in staat is dan welke CPU dan ook.
 
4. Een CUDA core bij NVIDIA grafische kaart is niet te vergelijken met een Intel Core van de CPU. Het is qua prestatie ondergeschikt aan de CPU Core, maar omdat er veel meer CUDA cores in één GPU ondergebracht kunnen worden tegen goede prijsverhouding, die allemaal parallel werken, is het een veel aantrekkelijker hardware platform.
 
5. Bij AMD hebben ze de Compute Cores. Hoe meer hoe beter. HSA (Heterogeneous System Architecture) brengt de CPU en GPU dichter bij elkaar met Compute Cores. Ze kunnen nu dezelfde programmeertaal spreken en dezelfde opdracht / data verwerken. En heel belangrijk ze kunnen toegang krijgen tot elkaars geheugen. Waardoor de communicatie tussen deze twee aardsrivalen sneller en efficiënter kan verlopen. De techniek wordt hUMA (Heterogeous Uniform memroy Access) genoemd. Daar aan gekoppeld werd hQ (Heterogeneous Queuing) uitgebracht.
"A compute core is: any core capable of running at least one process in its own context and virtual memory space, independently from other cores. Based on the above definition, a single Compute Core can be either a CPU core or GPU core." aldus AMD
Link AMD
 
6. Beweringen over snelheids winsten voor zowel de CPU (Intel & AMD) markt als de GPU (NVIDIA & AMD) zonder degelijk wetenschappenlijke onderbouwing (in kleine lettertjes en met render voorbeelden) is meestal alleen maar terug te voeren tot lose beweringen met een commerciële achtergrond. Kom maar met degelijke bewijzen zouden we willen zeggen.
 
7. Render snelheid op CPU of GPU of beiden is één deel van de medaille. De andere is die van de gebruikersinterface vriendelijkheid, hand in hand met de kwaliteit van de documentatie.
 
* behalve Corona, zie bij documentatie op deze pagina hieronder.
 
Rendering in Radeon ProRender van audio buizenversterker gemaakt met Cinema4d
door Glen Johnson
 
Link AMD
 
https://twitter.com/the_glenster?lang=nl
https://www.behance.net/glenjohnson1353
 
 

 
"Iedereen weet dat grafische kaarten met hun vele parallele processen (echt) vele malen sneller kunnen werken, dan welke CPU opstelling dan ook."
 
samenvatting Renderen
CPU en GPU
http://www.ontmoeting.nl/renderzone/23-samenvatting.html
 
 
 

50x

Octane
"Use OctaneRender to create images of the highest possible quality at speeds up to 50x faster than CPU-based, unbiased renderers." Dat lijkt overtrokken. Maar er zou in de toekomst nog veel meer kunnen uitkomen met de CUDA Render Engine bij V-Ray.
https://home.otoy.com/render/octane-render/
 
Octane Render GPU Performance comparison
april 2016
You will notice that we are primarily focusing on GeForce and only testing a couple Quadro cards. This is because there is rarely a need to use Quadro for rendering but we wanted to include a couple Quadro cards to act as comparison points to make sure there are no surprises with Octane Render.
 
What all our testing comes down to is that you should use GeForce if possible (although mixing Quadro and GeForce should work fine if you need a primary Quadro card for other tasks besides rendering) and to prioritize having multiple video cards before worrying about the individual performance of each card.
 
Unlike most GPU-accelerated programs (even other GPU-based rendering engines like Iray), the performance gain you should see with multiple video cards is almost perfectly linear. Going from one card to two should result in about half the render time, one card to three should cut it to a third, and going from one card to four should result in about a quarter of the render time.
 
https://www.pugetsystems.com/labs/articles/Octane-Render-GPU-Performance-Comparison-790/
 
 
 

400x - 800x

400 tot 800 x sneller
https://en.bitcoin.it/wiki/Why_a_GPU_mines_faster_than_a_CPU
 
 
 

14 x

 
Op de NVIDIA site bij de blog lezen we:

 

"GPUS ARE ONLY UP TO 14 TIMES FASTER THAN CPUS" SAYS INTEL (2010)
Het is een van de zeldzame keren dat deze wereldleider in het maken van CPU's laat doorschermen dat de door hen geproduceerde processoren 1/14 van de snelheid behalen als met een grafische kaart mogelijk is. In hetzelfde artikel wordt fijntjes gewezen op het duidelijk en eerlijk vermelden van testgegevens bij Benchmarks, vooral over de zeer gevoelige onderwerpen van CPU versus GPU.
 
https://blogs.nvidia.com/blog/2010/06/23/gpus-are-only-up-to-14-times-faster-than-cpus-says-intel/
 
"Debunking the 100x GPU vs CPU Myth" is in wezen een loze kreet, in de pratijk (2017) worden de CPU's (AMD & Intel) steeds sneller en bezitten meer Cores tegen betaalbare prijzen dan ooit te voren.
 
In de kretologie van de commercie wordt vaak afgerekend met het fabeltje dat een GPU 100x sneller is dan de CPU (Corona render). In de praktijk komen we op 5 x tot max. 10 x uit, hetgeen bij het maken van renderingen zeker niet te versmaden is. Indien u voor enkele opdrachten 3 uur rendertijd heeft geklokt, dan zou u dat in 3/5 tot 3/10 van de tijd of te wel in slechts 36 minuten tot 18 minuten kunnen uitvoeren met een GPU renderprogramma en goede grafische kaart.
 
Vergeet de 100 x factor!

 

Of lees bijgaand artikel, waarbij universiteiten met opmerkelijke snelheidsverbeteringen komen van 100 x tot aan 300 x sneller aan toe voor heel bepaalde specifieke applicaties.
 
Monte Carlo simulation of photon migration in 3D turbid media accelerated by graphics processing units (2009)
 

 

3x - 15x

What is GPU rendering?
FurryBall
met grafieken en afbeeldingen uit de NVIDIA stal. Waarbij de grafieken niet onderbouwd worden, het moet een globale indruk geven over de te verwachten ontwikkelingen.
 
http://furryball.aaa-studio.eu/aboutFurryBall/whyGpu.html
 
 
"Tot nu toe hebben alle GPU renderers technische problemen en beperkingen",
Furry Ball heeft dat voor u opgelost:
 
FurryBall render
Up to this date almost ALL GPU renderers have many technical problems and limitations (memory, texture limits, output size, quality, lack of features), FurryBall deals with all of these:
 
* Up to 3x - 15x faster than conventional CPU ray tracing
 
* Much cheaper (3x-15x less rendering units than CPU)
* Easy scalable (Multi-GPU on single computer)
* More artistic freedom (much faster results)
* Less heating and electricity consumption (less rendering units)
* Unbiased and Biased rendering
* Unlimited output resolution
* Hair and Fur
* Displacement
* NO precalculation
* Unlimited number of textures
* Unlimited number of lights
* Raytraced Physically-based full global illumination ray tracing
* and much more
 

6x - 14x

http://furryball.aaa-studio.eu/aboutFurryBall/whyGpu.html
 
GPU vs CPU - GPU rendering vs Software CPU rendering
http://furryball.aaa-studio.eu/aboutFurryBall/compare.html
 
Scene 1
6 x sneller ten opzichte van Arnold
 
Scene 2
14 x sneller ten opzichte van Mental Ray
 
De scenes zijn als download beschibkaar gesteld, zodat u met uw eigen computer de testen zelf kunt uitvoeren.
 
Test workstation:
Intel Core i7-930 2,80 GHz, 16 GB RAM, Nvidia Geforce GTX Titan - 6 GB Memory
Because every renderer has totally a different setting, there is no possible to have the same settings. We tried to set the optically similar quality for each renderer. We set brute force in all renderer (without any tweaking).
 
De Intel Core i7-630 werd in het eerste kwartaal van 2010 geïntroduceerd, inmiddels is deze processor uit het Intel programma. Basis kloksnelheid 2.80 GHz, 4 cores, 8 threads, DDR3 800/1066 aansturing.
Het wordt dus wel tijd om deze testen op de pagina te vervangen met nieuwe hardware.
 

6,2 x

halverwege de pagina
Comparing Results V-Ray 8 cores Xeon versus 2688 CUDA cores
Thus, the GPU (2688 CUDA cores) was 6.2 times (620%) faster than the CPU.
 
Link naar blog van Boxx
 
 

1,5 x

CPU vs. GPU - Performance comparison for the Gram-Schmidt algorithm (2012)
We find that a NVIDIA GeForce GTX580 GPU is about 50% faster than a corresponding Intel X5650 Westmere Hexacore CPU.
Figure 10 shows the performance of our code on CPUs and GPUs. The fastest GPU (GeForce GTX580) outperforms a single multi-core CPU (Xeon X5650) by about 50%, but is already slower than two multi-core CPUs on one node.
 
Link researchgate
 
 

VEEL SNELLER

Introduction to TensorFlow. . . . CPU vs GPU
You see that the GPU (a GTX 1080 in my case) is much faster than the CPU (Intel i7).
https://medium.com/@erikhallstrm/hello-world-tensorflow-649b15aed18c
 
 

1,5 x - 2,1 x

Performance comparison of CPU and GPU on a discrete heterogeneous architecture
When the task size is increased GPU is found to be approximately 51% faster than the multithreaded CPU when GPU achieves 100% occupancy. Throughput of GPU is found to be 2.1 times higher than that of CPU for large task size. The GPU used is NVIDIA's GeForce GT630M with CPU of Intel's i5 3210M 3rd generation processor.
 
http://ieeexplore.ieee.org/document/6839271/?reload=true
 
 
 

Waarom is de GPU sneller dan CPU ?

Why Modern GPU's Perform Faster Than CPU's & Good At Parallel Computing Part 1
Most CPU's now are remaining around the mid 3 GHz clock frequency which they’d reached back in the Intel Pentium 4 era. It's not because transistors have stopped becoming "smaller and faster" it's a slightly different issue – heat. Running millions (billions) of transistor generates lots of heat. This is mething Intel learned all to well with the Pentium 4 (Netburst) architecture. Originally Intel planned to reach 10 GHz(!) with Netburst, but reality struck and they were stuck at around 4 GHz.
 
Link redgamingtech
 
 
 

van 1 GPU naar 2 GPU's 33% sneller

NVIDIA Iray GPU Performance Comparison
april 2016
On average, going from one card to two reduced render times by about 33% (a third). Going from one card to three cards results in about half the render times (49% to be exact), and going from one card to four cards reduced render times by a bit less than two thirds (60%). This is enough of a gain that the strategy of using multiple, more affordable cards should give you better performance than fewer, more expensive cards.
https://www.pugetsystems.com/labs/articles/NVIDIA-Iray-GPU-Performance-Comparison-785/
 
 
 
What is GPU-accelerated computing?
http://www.nvidia.com/object/what-is-gpu-computing.html
 
 
 
Recommended Rendering Workstations
optimaizing your workstation for
V-Ray, KeyShot, Arnold, Octane Render, Redshift, Iray en furryball RT
https://www.pugetsystems.com/solutions/content_creation/rendering.php
 
 
 
NVIDIA Iray CPU Scaling
april 2016
Combined with the results from our NVIDIA Iray GPU Performance Comparison article, this makes it very clear that if you are designing a new system specifically for Iray you should prioritize your budget towards purchasing a high number of powerful video cards long before worrying about upgrading the CPU. A faster CPU can help with things like scene load times, but a system with plenty of GPU power will make your CPU choice basically moot when it comes to rendering
 
It may seem odd that we took the time to publish a an article about CPU scaling just to say that it doesn't matter, but this is extremely useful information to have. Just as an example of how important it is to prioritize the GPU for Iray, below are two systems that you could configure on our website. One puts an emphasis on the number of CPU cores and the other on having more video cards:
 
https://www.pugetsystems.com/labs/articles/NVIDIA-Iray-CPU-Scaling-786/
 
 
 

Bijzonder SNEL

 
[OpenCV] GPU CUDA Performance Comparison
maart 2016
It is clear that GPU computation is BLOODY fast. But i HAVE to note, that only a SINGLE core of the CPU's were used for the normal CPU functions. These algo's have not really been optimized for multithreaded if I'm not mistaken. On the other hand, speed increases of >20x is too much for any intel CPU to catch up with. GPU Computing is a must if fast image processing is important.
GPU + GPU = Multi GPU
for example. I got a speed increase of 40~80% using 2 GPU's, see the nice setup i had in my desktop where i tried it. It will eventually end up in the rackserver, purely for GPU computation, for which they are ideal.
http://www.timzaman.com/2012/05/opencv-gpu-cuda-performance-comparison/
 
 
 

Met parallele verwerking bij Intel, nòg sneller ?

Comparative Performance Analysis of Intel Xeon Phi, GPU, and CPU: A Case Study from Microscopy Image Analysis
 
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4240026/
 
Intel Xeon Phi 1/2 op deze site:
http://www.ontmoeting.nl/renderzone/he/04-phi.html
 
 

met OpenCL sneller?

CPU vs GPU performance comparision with OpenCL
okt. 2011
Cleary you see that the GPU outperforms CPU at higher values of size as the program is able to use multiple threads provided by the GPU. At lower values of size there is an appreciable access time associated with GPU, so CPU performs faster. 
Link advencode wordpress
 
 
 

6x

GPU vs CPU - GPU rendering vs Software CPU rendering
Scene 1 - up to 6x faster
Unbiased rendering and Physically based full global illumination
http://furryball.aaa-studio.eu/aboutFurryBall/compare.html
 
 
 

180 x

http://people.maths.ox.ac.uk/gilesm/cuda/lecs/lec0.pdf
University of Oxford
 
Lecture 0: CPU's and GPU's
Prof. Mike Giles
 
My experience
Random number generation (mrg32k3a/Normal):
2000 M values/sec on GTX 280
70 M values/sec on Xeon using Intel's VSL library
LIBOR Monte Carlo testcase:
180x speedup on GTX 280 compared to single
thread on Xeon
 
 
 

6x met soft- ten opzichte van hardware

Stackoverflow
 
I've written a simple particle renderer, and for some reason it runs about 6 times faster with the software renderer than with the hardware renderer.
 
Link stackoverflow
 
 
 
 
 
 
 

Whitepaper Compute Cores AMD

http://www.amd.com/Documents/Compute_Cores_Whitepaper.pdf
 
 
 

Corona

Waarom alleen met de CPU?
 
Corona die GPU renderen helemaal de grond in werkt, zonder enig technisch bewijs of een poging tot een ondersteuning van de beweringen.
 
https://corona-renderer.com/features/proudly-cpu-based/
 
De aangehaald "Recent Paper" van SIGGRAPH is verouderd uit 2014
 
https://embree.github.io/papers/2014-Siggraph-Embree.pdf
 
En hoe kan het anders: door de Intel Corporation opgezet, waarbij naar de conclusie is toegewerkt. En de conclusie bij Intel is steeds: "de CPU biedt meer en is sneller dan GPU oplossingen, punt uit."
 
Vreemd dat deze semi wetenschappenlijke verhandeling door de Siggraph commissie is heen gekomen, maar Intel is een sponsor van SIGGRAPH, wie weet hoe dat toen is gegaan.
 
 

AMD Radeon ProRender

15 dec. 2016
Radeon ProRender is a powerful physically-based rendering engine that helps enable creative professionals to produce stunningly photorealistic images.
 
https://youtu.be/pu5fg5C7XHY
 

 
Op deze site
 

GPUGPU Computing

http://www.ontmoeting.nl/renderzone/08-cuda1.html
 
 

GPU render links

http://www.ontmoeting.nl/renderzone/033-gpu-links.html
 

Rendertijden versus computer hardware

http://www.ontmoeting.nl/renderzone/126-news14jul.html#start
 
 

Intel Phi voor nog sneller werken

http://www.ontmoeting.nl/renderzone/he/04-phi.html
 
 

naar boven