PhD Seminar • Computer Graphics • RCGP: Resource Contracts for Graphics Programming

Monday, November 9, 2026 10:00 am - 11:00 am EST (GMT -05:00)

Please note: This PhD seminar will take place online.

Xiaochun Tong, PhD candidate
David R. Cheriton School of Computer Science

Supervisor: Professor Toshiya Hachisuka

Ensuring correctness across CPU and GPU code is a persistent challenge in modern graphics programming. Computer graphics applications are sophisticated heterogeneous programs that orchestrate numerous components, including shaders, pipelines, resource descriptors, and command streams. In modern graphics workflows, communication between these components is mediated by resources such as shader I/O, storage buffers, and resource bindings. To make this communication correct, developers must uphold resource contracts. These contracts cover agreements on type, layout, binding locations, synchronization requirements, and related properties. In standard practice, these contracts are satisfied implicitly through conventions. As a result, contract breaches are often detected too late, at runtime by validation layers, or worse, as visual artifacts in rendered output.

In this talk, I will present RCGP, a system proposed by Sivaram et al. that mechanistically enforces resource contracts between components of a graphics program. RCGP formalizes contracts, which are centralized through single-source-of-truth resource declarations, as statically introspectable units that can be verified. Objects from distinct program components are mapped to modules that import and export contracts. Modules are then composed into larger components via combinators, which check compatibility between the corresponding contracts and compute the residual contracts for the result. Finally, RCGP upholds these contracts through a set of witnesses, which encode the necessary promises.

Using a prototype implementation in C++ and Vulkan, the authors demonstrate that this formulation converts common classes of late failures, such as descriptor-type mismatches, layout drift, and missing synchronization barriers, into early, actionable compile-time diagnostics. It would be interesting to discuss the system’s trade-offs and its implications for the design of graphics programming frameworks.


Attend this PhD seminar virtually on Zoom.