2017-12-16 Next Build Soon
Posted in : TerreSculptor on by : dgreen Comments:
The next TerreSculptor build will be available within the next two weeks, before Christmas.
This next build has many more of the core methods updated to full multi-threading.
The new Displace and Terrace transform modifiers are complete, and they perform powerful terrain modification.
Both of these new tools are fully threaded, so their performance is virtually instantaneous.
Many more of the user interface elements are converted over to the dark user interface color theme.
As soon as all of the user interface is converted over, additional skin themes beyond the two currently available will be supported on the Professional Edition.
I will be adding additional videos to the TerreSculptor YouTube channel over the next two weeks, on the Extractors, the new Displace and Terrace tools, and I am also starting a series called “The Two Minute Terrain” that will feature quick steps to getting high quality terrains.
I also plan on putting up videos that highlight how to use some of the existing tools.
One of the new features coming in this next release is the Hydraulic Erosion is now fully threaded.
It required a lot of customization to the algorithm to allow for support of threading.
The multi-threading requires about one-and-a-half erosion passes and twice the amount of memory to accomplish.
The threading is also scaled based on the size of the datamap heightmap length.
Some Hydraulic Erosion Multi-Thread Benchmarks:
System: Intel i7-6800K 6-Core 12-Thread 3.4GHz, 32GB RAM, Windows 10.
Datamap: 2048×2048 terrain with a preset Gradient heightmap.
Hydraulic Erosion: default parameters, Time=500 passes.
Note that on the Intel processors with Hyper-Threading, a Hyper-Thread gives a maximum throughput of approximately 10% compared to a full Core.
So a 6-Core 12-Thread processor has the processing throughput of approximately 6.6 Cores.
A 4-Core 8-Thread processor has the processing throughput of approximately 4.4 Cores.
Cores are what counts, and having as many cores as possible will improve performance of this software.
Single-threaded (1): 156074 ms (156 seconds = 2 minutes and 36 seconds)
Multi-threaded (12): 46448 ms (46.5 seconds)
The multi-threaded mode took only 0.2976 the length of time to erode the datamap.
That is a speed and performance improvement of 3.36 times faster.
There are a few more array setup calls and one more loop that will be getting threaded, which should squeeze out at least another 5% to 10% speed performance.