1 of 14

VTK-m: What it is, Why we need it, and How to use it

Kenneth Moreland

Oak Ridge National Laboratory

ORNL is managed by UT-Battelle LLC for the US Department of Energy

1

1

2 of 14

Contour

Streams

Clip

Render

CPU

Surface

Normals

Ghost Cells

Warp

1996

2

2

3 of 14

Contour

Streams

Clip

Render

CPU

Surface

Normals

Ghost Cells

Warp

2000

3

3

4 of 14

Contour

Streams

Clip

Render

CPU

Surface

Normals

Ghost Cells

Warp

2000

4

4

5 of 14

Contour

Streams

Clip

Render

CUDA

Xeon Phi

CPU

Radeon

Xe

Surface

Normals

Ghost Cells

Warp

2021

5

5

6 of 14

Contour

Streams

Clip

Render

CUDA

Xeon Phi

CPU

Radeon

Xe

Surface

Normals

Ghost Cells

Warp

?

?

?

?

2021

6

6

7 of 14

Contour

Streams

Clip

Render

CUDA

Xeon Phi

CPU

Radeon

Xe

Surface

Normals

Ghost Cells

Warp

2021

7

7

8 of 14

VTK-m Framework

Execution Environment

Cell Operations

Field Operations

Basic Math

Make Cells

Control Environment

Grid Topology

Array Handle

Invoke

Device Adapter

Allocate

Transfer

Schedule

Sort

Worklet

8

8

9 of 14

Hardware-optimized faster

VTK-m faster

9

9

10 of 14

Libsim

Simulations

GUI / Parallel Management

Base Vis Library

(Algorithm Implementation)

In Situ Vis Library

(Integration with Sim)

ASCENT

Multithreaded Algorithms

Processor Portability

10

10

11 of 14

11

11

12 of 14

12

12

13 of 14

Conclusion

  • VTK-m makes data discovery possible on modern HPC systems
    • DOE’s only solution for visualization algorithms on GPU accelerators
  • VTK-m has abstractions that make it possible to port across different processors and future-proof for changing features
    • Proven portability with little overhead
  • VTK-m is collaborating with other visualization products to update tools to new systems
    • Providing a seamless path to support existing users on new systems

13

13

14 of 14

Acknowledgements

  • This material is based upon work supported by the U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research, under Award Numbers 10-014707, 12-015215, and 14-017566.
  • This research was supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.
  • This work was supported by the Scientific Discovery through Advanced Computing (SciDAC) program in the U.S. Department of Energy.
  • Thanks to many, many partners in labs, universities, and industry.

14

14