Intel

No hyperthreading VS hyperthreading. Testing with V-Ray Next

What is the speed difference when rendering with V-Ray Next on the same CPU with and without hyperthreading. How does hyperthreading work and more inside!


 

Where the Journey Starts - Hyperthreading

Hey guys, we’ve disabled our hyper-threading!
Although enabling it sounds like more fun, we decided to test how much of a difference it actually makes when it comes to rendering in V-Ray Next. Some people might be quite familiar with Intel’s hyper-threading technology which first launched back in 2002, and on first glance looks like your Intel CPU will do double the work. Or not double? Maybe some of you find this question quite familiar. How much of a speed boost does hyperthreading give when it comes to rendering? That is what we are here to find out when it comes to the world of CPU ray tracing.

The short description of hyperthreading is simple – it is a technology allowing one physical core of your CPU to act as two logical cores and therefore do more work simultaneously.

Imagine you are waiting in line in the supermarket. Only one cash registry is opened, it’s slow, everybody has to wait for the person before them to finish shopping. Ping-ping, they open another cash registry. Now half of the line can go to the other cash registry and maybe it will be twice faster for you. Or maybe not, depends on how many families shopping for the month are there in front of you. So, imagine hyperthreading like that.

The main question we are here to answer is… What is the speed difference when rendering with V-Ray Next on the same CPU with and without hyperthreading.

 

Setting Up the Picture

Let’s introduce you to our set up. We have the same machines (produced by the super trendy and friendly Bulgarian PC manufacturer Persy Ltd). With the same hardware. We’ve disabled hyperthreading (yes, from the BIOS) on one of them. We’ve installed the same software on both. We use the same scene files. The climate in the room is the same, the machines are just a couple of meters away from each other. Sorry, it’s not in a vacuum.

Now, let’s bring in the competitors:
The Hardware in short:
Intel Core i7-8700 @3.20 GHz, 6 Core, 12 Threads
32GB RAM – DDR4 2400
256GB SSD + 1TB of HDD
Nvidia RTX 2070 – 8GB GDDR6 – because we can 😉

 

Screenshot of Windows 10 showing Control Panel, System, Processor Intel® Core ™ i7-8700 SPU @ 3.20GHz 3.19 GHz

 

The software:
Windows Pro 10 x64
V-Ray Standalone for x64 core version 4.20.00 from 14.06.2019
V-Ray Next Benchmark, hotfix 3 from 22.05.2019

NB:
The scenes used here are just examples of different rendering situations. The render time will always depend on the scene you are rendering.

The first item on our cash registry is the latest official Chaosgroup V-Ray Benchmark. It is a software designed and created to… well, benchmark. So it should be the fairest of them all:

 

Screenshot of V-Ray Next Benchmark and opened Task Manager showing 6 CPU and disabled hyperthreading, ready to start.

 

Screenshot of V-Ray Next Benchmark and opened Task Manager showing 6 CPU and disabled hyperthreading, processing the image.

 

Screenshot of V-Ray Next Benchmark and opened Task Manager showing 12 CPU and hyperthreading on, ready to start.

 

Screenshot of V-Ray Next Benchmark and opened Task Manager showing 12 CPU and hyperthreading on, processing the image.

 

As you can see, we were not lying about disabling our hyperthreading. One of the machines is running on 6 cores, while the other on – on visibly twelve. They are all engaged and all trying to do the work.

 

Screenshot of V-Ray Next Benchmark worked with disabled hyperthreading and showing 7095 internal statistics of the calculations per minute.

 

Screenshot of V-Ray Next Benchmark worked with hyperthreading on and showing 9168 internal statistics of the calculations per minute.

Behind the numbers

The score is here, 7 095 vs. 9 168. Yes, the test was done a couple of times just to be sure. The results were 7 095 vs. 9 102; 7 086 vs. 9 168; 7 086 vs. 9159. Very similar indeed.

But what do these numbers mean? The long version you can find on Chaosgroup’s official docs page but the short one is “internal statistics of the calculations per minute” displayed in samples… Which, let’s be honest, are not a real value… but according to Chaosgroup is a linear value, allowing us to compare results.

Since the original configuration of the CPUs we are testing was WITH hyperthreading and turning it off was the modification, let’s take the second score as 100%. So, the result from the V-Ray Benchmark is:
The CPU without hyperthreading worked at around 77% of its original capacity. Or in other words, the HT provides 29% more performance compared to no HT

But this is just one test based on one software. And it is testing software. Let’s compare a few real scenes. All of them were exported before and rendered for this test in V-Ray Standalone so there is no slowing down because of the original 3D platform and exporting geometry.

 

Screenshot of V-Ray Next Standalone processing image of blue pot and flying bubbles with opened Task Manager showing 6 CPU and Speed: 3.74 GHz.

 

Screenshot of V-ray frame buffer showing in Details of Preview that the image rendering time with no hyper-threading is 0h 16m 41.0s.

 

Screenshot of V-ray frame buffer showing zoomed rendered image and Details of Preview, rendering time with no hyper-threading: 0h 16m 41.0s.

 

 

Screenshot of V-Ray Next Standalone processing image of blue pot and flying bubbles with opened Task Manager showing 12 CPU and Speed: 4.28 GHz.

 

Screenshot of V-ray frame buffer showing in Details of Preview that the image of rendering time with hyper-threading on is 0h 14m 1.2s.

 

Screenshot of V-ray frame buffer showing zoomed rendered image and Details of Preview, rendering time with hyper-threading on: 0h 14m 1.2s.

The render time here is:
No hyperthreading: 0h 16m 41.0s VS. Hyperthreading: 0h 14m 1.2s
Doing the math for you: 1 001 seconds VS. 841.2 seconds resulting in 84% of the original (with hyper-threading) speed or in 19% increase with HT.

 

Screenshot of V-Ray Next processed image of coniferous green trees showing in Details of Preview rendering time 3h 13m 8.8s.

 

Screenshot of V-Ray Next processed image of coniferous green trees showing in Details of Preview rendering time 2h 34m 9.8s.

 

The render time here is:
No hyper-threading: 3h 13m 8.8s VS. Hyper-threading: 2h 34m 9.8s
Doing the math for you: 11 588.8 seconds VS. 9 249.8 seconds resulting in 80% of the original (with hyper-threading) speed or in a 25% increase with HT.

These scenes have something in common. They are simple test scenes with V-Ray materials and without any dynamic geometry. Which led to an interesting question. What will happen if we use dynamic geometry (geometry that is not fully visible in the scene but is loaded in render time)?

 

Screenshot of V-Ray Next processed image of blue pot on white carpet and flying two feather ball showing in Details of Preview rendering time 1h 43m 33.0s.

 

Screenshot of V-Ray Next processed image of blue pot on white carpet and flying two feather ball showing in Details of Preview rendering time 1h 26m 51.6s.

 

No hyper-threading: 1h 43m 33.0s VS. Hyper-threading: 1h 26m 51.6s
Doing the math for you: 6 213 seconds VS. 5 211.6 seconds resulting in 84% of the original (with hyper-threading) speed. or in a 19% increase with HT.

 

Test Time Again - Hyperthreading Benchmark

Let’s test the same trees as above, but this time the original tree is exported as proxies and then instanced in the scene in the same way that the original geometry was.

 

Screenshot of V-Ray Next processed image of coniferous green trees showing in Details of Preview rendering time 3h 13m 4.1s.

 

Screenshot of V-Ray Next processed image of coniferous green trees showing in Details of Preview rendering time 2h 34m 1.4s.

 

No hyper-threading: 3h 13m 4.1s VS. Hyper-threading: 2h 34m 1.4s
Doing the math for you: 11 584.1 seconds VS. 9 241.4 seconds resulting in 80% of the original (with hyper-threading) speed or in a 25% increase with HT

As you can see, the results not only are almost the same with and without proxies (answering another question) but are the same time difference when comparing between with and without hyperthreading.

The sample scenes showed some numbers… but who in a real pipeline renders sample scenes? May be on Fridays just for fun, but on regular days we render real scenes.

 

Screenshot of V-Ray Next processed image of upside down coffee cups and two pillows on gray blanket showing in Details of Preview rendering time 0h 38m 24.3s.

 

Screenshot of V-Ray Next processed image of upside down coffee cups and two pillows on gray blanket showing in Details of Preview rendering time 0h 30m 49.7s.

 

No hyper-threading: 0h 38m 24.3s VS. Hyper-threading: 0h 30m 49.7s
Doing the math for you: 2 304.3 seconds VS. 1 849.7 seconds resulting in 80% of the original (with hyper-threading) speed in a 25% increase with HT.

 

Screenshot of V-Ray Next processed exterior image of cubic house with glass walls and pool showing in Details of Preview rendering time 0h 19m 38.0s.

 

Screenshot of V-Ray Next processed exterior image of cubic house with glass walls and pool showing in Details of Preview rendering time 0h 15m 59.3s.

 

No hyper-threading: 0h 19m 38.0s VS. Hyper-threading: 0h 15m 59.3s
Doing the math for you: 1 178 seconds VS. 959.3 seconds resulting in 81% of the original (with hyper-threading) speed in a 23% increase with HT.

Okay, so they’ve opened the new check out counter and you can see the results. When it comes to numbers, let’s not repeat the obvious. Let’s try to answer why, keeping in line with our shopping metaphor.
Imagine the cash registry is opened just for the small stuff. It’s one of those “a couple of items or less and none of the items should be a lawnmower” type of a cash registry. The big stuff, your new boat and washer, and dryer still need to be checked by the original processor. So you are still counting on those magical physical processors which we began with and they are still doing the heavy lifting. But the logical cores, the ones provided by hyperthreading are great helpers.

And as it is in life, so it is in rendering – you do you. Pick the hardware you like and is best suited for your individual needs. And have fun.

 

Some Notes Instead of Goodbye

1. ALL percentage values are based on the 3 symbols after the decimal point.
2. We are artiss and not mathematicians, so please do make your own checks or double-check our calculation if you want to be extremely precise. We highly encourage you to make your tests and share your results in a comment below.
3. Stay tuned to our blog for more interesting news.

Author: Kalina Panteleeva

Similar posts

Sign up for our newsletter digest

We'll send you useful articles, notifications for competitions & courses, and job ads for AEC professionals.