Search Unity

Jobs and Burst - Fluid Simulation Benchmark

Discussion in 'Data Oriented Technology Stack' started by korzen303, Mar 23, 2018.

  1. korzen303

    korzen303

    Joined:
    Oct 2, 2012
    Posts:
    172
    Hi All,

    I have just finished some tests using fluid simulation. The jobified, Burst compiled implementation is faster roughly 25-30 times than a "normal" serial code (4096 particles, 4core i7-6700K).

    There is still place for improvement as spatial partitioning and nearest neighbor search using uniform grid is burst compiled but not multi-threaded yet.

    Also, due to use of Burst, the code currently only runs in the editor, in sort of a "debug mode" with additional safety checks on NativeContainers, which slows things down.

    I want to measure against native C++ code soon but from my previous experience it seems that Burst might be really as fast as the native code!

    Well done Mr. @Joachim_Ante, very well done!

    Here is the video of my GPU compute shader implementation, just to give you impression how it looks like


    I will release the sources soon
     
  2. DwinTeimlon

    DwinTeimlon

    Joined:
    Feb 25, 2016
    Posts:
    144
    Very cool, looking forward to your release!
     
  3. Joachim_Ante

    Joachim_Ante

    Unity Technologies

    Joined:
    Mar 16, 2005
    Posts:
    4,721
    Great to hear. Btw. you can turn off the safety checks when compiling with burst. "Jobs -> Enable Burst Safety Checks"

    Turning off JobsDebugger can also be useful for profiling in editor. (In player it is disabled by default)