A toolkit of scientific visualization algorithms for emerging processor architectures.

Image Credit: Matthew Larsen, LLNL. This image is of an idealized Inertial Confinement Fusion (ICF) simulation of a Rayleigh-Taylor instability with two fluids mixing in a spherical geometry.

Getting started

Download the latest release and then follow the instructions. If you're not already a VTK user and want to learn more about the original toolkit, check it out.

Download

What is VTK-m?

One of the biggest recent changes in high-performance computing is the increasing use of accelerators. Accelerators contain processing cores that independently are inferior to a core in a typical CPU, but these cores are replicated and grouped such that their aggregate execution provides a very high computation rate at a much lower power. Current and future CPU processors also require much more explicit parallelism. Each successive version of the hardware packs more cores into each processor, and technologies like hyperthreading and vector operations require even more parallel processing to leverage each core’s full potential.

VTK-m is a toolkit of scientific visualization algorithms for emerging processor architectures. VTK-m supports the fine-grained concurrency for data analysis and visualization algorithms required to drive extreme scale computing by providing abstract models for data and execution that can be applied to a variety of algorithms across many different processor architectures.

VTK-m Publications

Please use the first paper when referencing VTK-m in scientific publications.

bib file

  1. Moreland, K., Sewell, C., Usher, W., Lo, L.-T., Meredith, J., Pugmire, D., Kress, J., Schroots, H., Ma, K.-L., Childs, H., Larsen, M., Chen, C.-M., Maynard, R., & Geveci, B. (2016). VTK-m: Accelerating the Visualization Toolkit for Massively Threaded Architectures. IEEE Computer Graphics and Applications, 36(3), 48–58. https://doi.org/10.1109/MCG.2016.48
  2. Moreland, K. (2024). The VTK-m User’s Guide (Techreport ORNL/TM-2024/3443; Number ORNL/TM-2024/3443). Oak Ridge National Laboratory. https://gitlab.kitware.com/vtk/vtk-m-user-guide/-/wikis/home
  3. Moreland, K., Athawale, T. M., Bolea, V., Bolstad, M., Brugger, E., Childs, H., Huebl, A., Lo, L.-T., Geveci, B., Marsaglia, N., Philip, S., Pugmire, D., Rizzi, S., Wang, Z., & Yenpure, A. (2024). Visualization at exascale: Making it all work with VTK-m. The International Journal of High Performance Computing Applications, 38(5), 508–526. https://doi.org/10.1177/10943420241270969
  4. Bolstad, M., Moreland, K., Pugmire, D., Rogers, D., Lo, L.-T., Geveci, B., Childs, H., & Rizzi, S. (2023, August). VTK-m: Visualization for the Exascale Era and Beyond. ACM SIGGRAPH 2023 Talks. https://doi.org/10.1145/3587421.3595466
  5. Philip, S., Moreland, K., & Maynard, R. (2023). VTK-m Accelerated Filters in VTK and ParaView. Kitware Source.
  6. Wang, Z., Athawale, T. M., Moreland, K., Chen, J., Johnson, C. R., & Pugmire, D. (2023, May). FunMC2: A Filter for Uncertainty Visualization of Marching Cubes on Multi-Core Devices. Eurographics Symposium on Parallel Graphics and Visualization (EGPGV). https://doi.org/10.2312/pgv.20231081
  7. Carr, H. A., Rübel, O., Weber, G. H., & Ahrens, J. P. (2021). Optimization and Augmentation for Data Parallel Contour Trees. IEEE Transactions on Visualization and Computer Graphics, 28(10), 3471–3485. https://doi.org/10.1109/TVCG.2021.3064385
  8. Farber, R. (2021). ECP Brings Much Needed Visualization Software to Exascale and GPU-Accelerated Systems. ECP Technical Highlights.
  9. Moreland, K., Maynard, R., Pugmire, D., Yenpure, A., Vacanti, A., Larsen, M., & Childs, H. (2021). Minimizing Development Costs for Efficient Many-Core Visualization Using MCD^3. Parallel Computing, 108(102834). https://doi.org/10.1016/j.parco.2021.102834
  10. Pugmire, D., Ross, C., Thompson, N., Kress, J., Atkins, C., Klasky, S., & Geveci, B. (2021). Fides: A General Purpose Data Model Library for Streaming Data. ISC High Performance, 495–507. https://doi.org/https://doi.org/10.1007/978-3-030-90539-2_34
  11. Sane, S., Johnson, C. R., & Childs, H. (2021). Investigating In Situ Reduction via Lagrangian Representations for Cosmology and Seismology Applications. Computational Science – ICCS 2021, 436–450. https://doi.org/10.1007/978-3-030-77961-0_36
    Winner: Best Paper
  12. Sane, S., Yenpure, A., Bujack, R., Larsen, M., Moreland, K., Garth, C., Johnson, C. R., & Childs, H. (2021, June). Scalable In Situ Computation of Lagrangian Representations via Local Flow Maps. Eurographics Symposium on Parallel Graphics and Visualization (EGPGV). https://doi.org/10.2312/pgv.20211040
    Winner: Best Paper
  13. Schwartz, S. D., Childs, H., & Pugmire, D. (2021). Machine Learning-Based Autotuning for Parallel Particle Advection. Eurographics Symposium on Parallel Graphics and Visualization (EGPGV). https://doi.org/10.2312/pgv.20211039
  14. Lessley, B., Li, S., & Childs, H. (2020). HashFight: A Platform-Portable Hash Table for Multi-Core and Many-Core Architectures. Electronic Imaging, Visualization and Data Analysis, 376–371-376–313(13). https://doi.org/10.2352/ISSN.2470-1173.2020.1.VDA-376
  15. Perciano, T., Heinemann, C., Camp, D., Lessley, B., & Bethel, E. W. (2020). Shared-Memory Parallel Probabilistic Graphical Modeling Optimization: Comparison of Threads, OpenMP, and Data-Parallel Primitives. High Performance Computing, 127–145. https://doi.org/10.1007/978-3-030-50743-5_7
  16. Wang, K.-C., Xu, J., Woodring, J., & Shen, H.-W. (2019). Statistical Super Resolution for Data Analysis and Visualization of Large Scale Cosmological Simulations. IEEE Pacific Visualization Symposium (PacificVis), 303–312. https://doi.org/10.1109/PacificVis.2019.00043
  17. Yenpure, A., Childs, H., & Moreland, K. (2019). Efficient Point Merging Using Data Parallel Techniques. Eurographics Symposium on Parallel Graphics and Visualization (EGPGV). https://doi.org/10.2312/pgv.20191112
  18. Lessley, B., Perciano, T., Heinemann, C., Camp, D., Childs, H., & Bethel, E. W. (2018). DPP-PMRF: Rethinking Optimization for a Probabilistic Graphical Model Using Data-Parallel Primitives. Proceedings of IEEE Symposium on Large Data Analysis and Visualization (LDAV), 34–44. https://doi.org/10.1109/LDAV.2018.8739239
  19. Pugmire, D., Yenpure, A., Kim, M., Kress, J., Maynard, R., Childs, H., & Hentschel, B. (2018). Performance-Portable Particle Advection with VTK-m. Eurographics Symposium on Parallel Graphics and Visualization (EGPGV), 45–55. https://doi.org/10.2312/pgv.20181094
  20. Lessley, B., Moreland, K., Larsen, M., & Childs, H. (2017). Techniques for Data-Parallel Searching for Duplicate Elements. IEEE Symposium on Large Data Analysis and Visualization (LDAV). https://doi.org/10.1109/LDAV.2017.8231845
  21. Lessley, B., Perciano, T., Mathai, M., Childs, H., & Bethel, E. W. (2017). Maximal Clique Enumeration with Data-Parallel Primitives. IEEE Symposium on Large Data Analysis and Visualization (LDAV). https://doi.org/10.1109/LDAV.2017.8231847
  22. Li, S., Marsaglia, N., Chen, V., Sewell, C., Clyne, J., & Childs, H. (2017). Achieving Portable Performance For Wavelet Compression Using Data Parallel Primitives. Proceedings of EuroGraphics Symposium on Parallel Graphics and Visualization (EGPGV), 73–81. https://doi.org/10.2312/pgv.20171095
  23. Carr, H., Weber, G., Sewell, C., & Ahrens, J. (2016). Parallel Peak Pruning for Scalable SMP Contour Tree Computation. Proceedings of the IEEE Symposium on Large Data Analysis and Visualization (LDAV). https://doi.org/10.1109/LDAV.2016.7874312
  24. Lessley, B., Binyahib, R., Maynard, R., & Childs, H. (2016). External Facelist Calculation with Data-Parallel Primitives. Eurographics Symposium on Parallel Graphics and Visualization (EGPGV). https://doi.org/10.2312/pgv.20161178
  25. Larsen, M., Labasan, S., Navrátil, P., Meredith, J., & Childs, H. (2015). Volume Rendering Via Data-Parallel Primitives. Eurographics Symposium on Parallel Graphics and Visualization. https://doi.org/10.2312/pgv.20151155
    (Note: work initially performed in predecessor framework to VTK-m, and was subsequently ported to VTK-m.)
  26. Larsen, M., Meredith, J. S., Navratil, P. A., & Childs, H. (2015). Ray Tracing Within a Data Parallel Framework. IEEE Pacific Visualization Symposium (PacificVis), 279–286. https://doi.org/10.1109/PACIFICVIS.2015.7156388
    (Note: work initially performed in predecessor framework to VTK-m, and was subsequently ported to VTK-m.)
  27. Moreland, K., Larsen, M., & Childs, H. (2015). Visualization for Exascale: Portable Performance is Critical. Supercomputing Frontiers and Innovations, 2(3). https://doi.org/10.14529/jsfi150306
  28. Schroots, H. A., & Ma, K.-L. (2015). Volume rendering with data parallel visualization frameworks for emerging high performance computing architectures. SIGGRAPH Asia Visualization in High Performance Computing, 3:1–3:4. https://doi.org/10.1145/2818517.2818546
  29. Sewell, C., Lo, L.-ta, Heitmann, K., Habib, S., & Ahrens, J. (2015). Utilizing many-core accelerators for halo and center finding within a cosmology simulation. IEEE 5th Symposium on Large Data Analysis and Visualization (LDAV). https://doi.org/10.1109/LDAV.2015.7348076
    (Note: work initially performed in predecessor framework to VTK-m, and was subsequently ported to VTK-m.)
  30. Maynard, R., Moreland, K., Ayachit, U., Geveci, B., & Ma, K.-L. (2013). Optimizing Threshold for Extreme Scale Analysis. Visualization and Data Analysis 2013, Proceedings of SPIE-IS&T Electronic Imaging. https://doi.org/10.1117/12.2007320
    (Note: work initially performed in predecessor framework to VTK-m, and was subsequently ported to VTK-m.)