View Single Post
Old 07-05-2016, 04:02 PM   #1 (permalink)
Master EcoModder
freebeard's Avatar
Join Date: Aug 2012
Location: northwest of normal
Posts: 18,322
Thanks: 5,029
Thanked 6,066 Times in 4,855 Posts
OpenVDB: An Open Source Data Structure and Toolkit for High-Resolution Volumes

I don't know how much this will mean to everyone else, but I spent some years using Norton Disk Editor to walk B-trees in the Macintosh OS 9 and OSX file system; so this is 'relevant to my interests'. Open VDB is used to make, among other things, particles and smoke for Hollywood movies. It is sparse, shallow and unbounded. It uses bitwise shifting for morphological operations. There is lots of programmatic goodness here, like Bit Masks and Accessors. There's more, but I'd have to watch the video a few more times to even know the questions to ask.

The application to Computational Fluid Dynamics is not lost on me. I don't know that it has been applied yet, maybe someone can comment. But in addition to smart software there is a need for a dirt cheap supercomputer cluster. I'm starting to like the Beaglebone X15:
The BeagleBoard X15 ... is based on the TI Sitara AM5728 processor with two ARM Cortex-A15 cores running at 1.5 GHz, two ARM Cortex-M4 cores running at 212 MHz and two TI C66x DSP cores running at 700 MHz. The used processor provides USB 3.0 support and has a Power VR Dual Core SGX544 GPU running at 532 MHz.
About that Power VR SGX544 GPU:
PowerVR Series5XT SGX chips are multi-core variants of the SGX series with some updates. It is included in the PlayStation Vita portable gaming device with the MP4+ Model of the PowerVR SGX543, the only intended difference, aside from the + indicating features customized for Sony, is the cores, where MP4 denotes 4 cores (quad-core) whereas the MP8 denotes 8 cores (octo-core). The Allwinner A31 (quad-core mobile application processor) features the dual-core SGX544 MP2. The Apple iPad 2 and iPhone 4S with the A5 SoC also feature a dual-core SGX543MP2. The iPad (3rd generation) A5X SoC features the quad-core SGX543MP4.[9] The iPhone 5 A6 SoC features the tri-core SGX543MP3. The iPad (4th generation) A6X SoC features the quad-core SGX554MP4. The Exynos variant of the Samsung Galaxy S4 sports the tri-core SGX544MP3 clocked at 533 MHz
So, a 3x3" board that cost $149 in quantities of one. The GPU could be re-purposed as a PPU. As they [used to] say on Slashdot "Imagine a Beowulf cluster of those!"

Edit:There is a good interview here that shows in a general way why CFD is a good use case for OpenVDB.

BD: As an ordinary user, what can you expect from OpenVDB support in an application?

Ken: Let's put in the context of the kind of volumes people have been using for many years and also in many third-party applications. Those are usually so-called dense grids where the user has a kind of box and the effects are restricted to the enclosure of the box. The size of the box has a huge impact on the amount of memory the computer has to store. As you increase the resolution of the box, there are more and more voxels in it. A voxel is analogous to a three dimensional pixel. So the problem is that these dense grids require a lot of memory. What VDB allows you is to throw the box away. It allows you store information in a way that is very compact.
For the end user this allows for more detailed simulations like for example smoke, fire or water. For many volumetric applications, especially if they are sparse, VDB is a very good option.
Support in Blender starts with the current release, 2.77a.

Smoke simulations can now be cached using OpenVDB as a back-end (rBe9452f909cdb). The simulation fields can be found in the .vdb files under the following names:

"heat old" (the temperate at the previous fame)
"react" (reaction coordinates, used for fire)
"shadow" (the shadows of the volume computed for viewport rendering)
"texture coordinates" (used for turbulence)

The Beaglebone draws 2 watts of power and has no fan or heat sink. It stands a good chance of being my next computer vs the Raspberry Pi.

Last edited by freebeard; 07-05-2016 at 06:02 PM..
  Reply With Quote