VTK Hackathon – May 13, 2026
On May 13, 2026, the Visualization Toolkit (VTK) developer community gathered for a hands-on hackathon. As an open source project, VTK relies on the contributions of its community, and this event highlighted the collective effort to maintain and improve the toolkit.
The objectives for the day included reducing technical debt, triaging issues, stabilizing builds, and implementing core improvements. Significant progress was made on code quality, thread-safety, and cross-platform reliability.
Issue Triage and Resolution
A large, long‑lived open source project inevitably accumulates a growing backlog of issues. Developers worked through the backlog and successfully closed ~50+ issues spanning a wide variety of problems. Notable fixes included:
- Thread‑safety in
vtkSMPMergePoints::Merge - Unhashable regressions in
trame-vtk - Segmentation faults in
vtkXML(parallel XML format) readers crashing with duplicate DataArray namesvtkCutterwhen operating on polyhedron cellsvtkXYZMolReader2with XMOL files with no time steps
To improve long-term project maintenance, contributors also:
- Applied ~40+ classification labels (for example,
triage:confirmed,triage:needinfo, andtriage:hasexample) - Formally assigned ~25+ issues to specific contributors to ensure clear ownership and follow‑through
This work not only reduced noise in the tracker but also created a more actionable, better‑organized pipeline of future work.
Focusing on Thread‑Safety and Concurrency
Performance is central to VTK, and performance today almost always implies concurrency. A major theme of the hackathon was addressing thread‑safety problems and data races identified by ThreadSanitizer (TSan).
Work included:
- Identifying and triaging data races and synchronization issues
- Assigning these issues for sustained follow‑up
- Implementing fixes in heavily used, performance‑critical classes
Key areas of focus included:
vtkFreeTypeToolsvtkSMPMergePointsvtkStaticCellLocatorvtkSurfaceNets
Several developers have committed to long-term ownership of these concurrency tasks to ensure VTK remains scalable and stable under modern multi-threaded workloads.
WebAssembly, I/O, and Build Improvements
The hackathon also yielded several architectural improvements in the following areas:
WebAssembly & Platform Support
Contributors addressed issues that prevented WebAssembly examples from running correctly with rendering enabled. They also resolved CMake configuration problems that caused platform‑specific build failures on Apple systems.
These updates improve VTK’s reliability across different platforms and modern web-based environments.
Data Formats & I/O
I/O and data format compatibility were another key focus. The community:
- Improved support for formats such as Exodus, XDMF2, and XML
- Updated the ExodusReader to correctly handle double‑precision data
- Fixed long‑standing issues in the VTK Legacy file format reader, specifically around handling
sizeof(long)
These improvements ensure better handling of large-scale, heterogeneous datasets in HPC environments.
Build System and Compiler Compatibility
To keep VTK aligned with contemporary toolchains, contributors invested in the build and compiler layer as well:
- Addressed C++20 compliance issues in
vtkDataReader - Improved compatibility with the GCC‑10.x family of compilers
These changes help developers integrate VTK more easily into modern C++ projects and CI/CD pipelines.
Rendering
Rendering correctness issues were addressed through several changes:
- Fixed
vtkScalarBarActortick label visibility issues - Added
vtkGradientFiltersupport for quadratic triangles - Enabled volume rendering with 16-bit arrays (Int16/Uint16) in WebAssembly environments
- Resolved Mesa 25.3.6 issues regarding shader memory layouts
- Documented the NVIDIA Vulkan driver
XCloseDisplayissue, accompanied by a sample reproduction case
These improvements ensure that VTK’s rendering engine remains robust across modern hardware and web-based platforms.
Moving Forward
The hackathon closed with ~15+ new merge requests opened in a single day. The immediate next steps for the community include:
- Reviewing and merging these MRs
- Maintaining the strong momentum on the added improvements
The work done during this event lays a solid foundation for a more stable, scalable, and future‑proof VTK.
Thank You to Our Attendees
This progress was made possible by the dedicated developers who contributed their time and expertise.
We would like to extend a sincere thank you to our attendees:
Jefferson Amstutz, Martin Bellehumeur, Benjamin, Ben Boeckel, Alexandru Ciobanu, Paul Elliott, Berk Geveci, Shreeraj Jadhav, Sankhesh Jhaveri, Sebastien Jourdain, Sean McBride, Seun Odutola, Jaswant Panchumarti, Cory Quammen, and Spiros Tsalikis.
Thank you again to everyone who contributed to making VTK better. Your time, expertise, and attention to detail made this hackathon a real success.
Partner With Kitware
If your organization is working with scientific visualization, HPC, or large-scale data processing workflows, Kitware can help. Our team develops production-ready, open source solutions built for scalability, reliability, and long-term maintainability.
To learn more about working with Kitware or contributing to the VTK ecosystem, contact us.