Source-linked AI summary
TileGS: Tile-Local Depth Binning for Gaussian Splatting Rasterization
Wei Tan, Matias Turkulainen, Lauri Ilola, Hamed Rezazadegan Tavakoli, Juho Kannala
TL;DR
Standard 3DGS rasterization uses globally sorted tile streams that create long per-tile ranges and heavy geometry-attribute traffic. TileGS replaces that traversal with tile-local depth binning and selective repair while preserving the rendering semantics. Across nine scenes on two Ada GPUs, it improves rasterization and end-to-end frame time over gsplat while matching its output up to numerical noise.
Problem
Standard 3DGS rasterization traverses globally sorted tile streams, producing long per-tile ranges and heavy geometry-attribute traffic.
Method
TileGS reorganizes each tile’s workload into front-to-back coarse depth bins with selective exact repair, without changing Gaussian representation or compositing semantics.
Results
Across nine scenes on Ada GPUs, TileGS improves rasterization-kernel and end-to-end frame time over gsplat while preserving image quality up to numerical noise.
Takeaways & Limitations
The results support reduced effective raster traversal work as the performance explanation, rather than improved occupancy, SM throughput, coalescing, or lower byte volume.
Takeaways & Limitations
Evaluation covers only NVIDIA Ada-generation GPUs, and full-resolution RTX 1000 Ada profiling was unavailable for four raster-heavy scenes.
Abstract
from arXiv · showhide
Real-time 3D Gaussian Splatting (3DGS) achieves high rendering quality, but standard rasterization still traverses a globally sorted tile stream that creates long per-tile ranges and heavy geometry-attribute traffic. We present TileGS, a tile-local reorganization of Gaussian splatting. TileGS turns each long tile range into a sequence of shorter depth-local ranges, rasterizes those ranges in front-to-back order, and applies selective repair where coarse ordering is insufficient to match baseline compositing. Across a 9-scene benchmark on desktop and laptop Ada GPUs, our default No-GW (No Geometry-Write) variant delivers a mean 1.44x raster-kernel speedup on RTX 4090 and mean end-to-end frame speedups of 1.069x on RTX 4090 and 1.094x on RTX 1000 Ada over gsplat--a widely used optimized open-source 3DGS implementation--while matching the gsplat output up to numerical noise (|Delta PSNR| < 0.001 dB, |Delta SSIM| < 0.001, |Delta LPIPS| < 0.001). Full-suite RTX 4090 Nsight Compute profiling reveals TileGS is faster despite lower SM throughput, lower active-warp occupancy, and higher DRAM traffic, while total SASS thread instructions fall by 1.26x. Source-attributed profiling confirms that geometry attributes dominate the remaining memory pressure (85.8% of total raster traffic and 88.6% of excess sectors). Together, these counters support the interpretation that TileGS improves raster performance by reducing effective raster traversal work, rather than by reducing byte volume, improving coalescing, increasing occupancy, or directly reducing measured warp divergence.
1. Introduction
TileGS addresses a rasterization bottleneck in 3DGS by reorganizing globally traversed tile workloads into tile-local depth-binned ranges. It preserves the Gaussian representation and compositing semantics while targeting traversal granularity and reporting speedups against gsplat.
- Motivation: Standard 3DGS rasterizers assign work to image-space tiles but consume each tile through one long globally sorted tile-depth range.Gaussian IDs in those ranges can refer to widely separated locations in scene-attribute arrays.
- Motivation: TileGS targets raster-heavy workloads because long irregular traversal ranges amplify geometry-attribute traffic and limit the benefit of tile-parallel execution.The largest gains are expected when raster work amortizes added binning and repair overhead.
- Positioning: The paper positions TileGS as an execution-structure optimization distinct from representation, compositing, and other renderer-level changes.Its focus is how surviving Gaussians are consumed during rasterization rather than what is rendered.
- Method: TileGS splits each long tile range into shorter depth-local ranges, then rasterizes those ranges in front-to-back order.The method assigns projected Gaussian–tile entries to coarse depth bins and builds compact bin-offset ranges.
- Method: TileGS preserves the Gaussian representation, projected inputs, splat evaluation equations, and compositing semantics while changing traversal order and granularity.Selective exact repair supports baseline-equivalent alpha compositing up to numerical noise.
- Results: 1.069× end-to-end frame speedup on RTX 4090 and 1.094× on RTX 1000 Ada over gsplat across nine scenes.The reported speedups use the optimized gsplat implementation as the baseline.
3. TileGS pipeline
TileGS replaces globally sorted tile-depth traversal with tile-local depth-binned execution, then selectively repairs segments where coarse ordering cannot preserve baseline compositing.
- The default No-GW path consumes the tile-local Gaussian-ID stream directly without an additional pre-raster geometry-materialization stage.Packed-GW is retained as a bandwidth-oriented variant rather than the default method.
- TileGS partitions each tile’s Gaussian entries into coarse depth bins, traverses them front-to-back, and selectively repairs high-risk segments while preserving the same inputs and compositing semantics.The design changes traversal order and granularity rather than the Gaussian representation, projected inputs, or splat evaluation equations.
- TileGS leaves the underlying Gaussian-index scatter largely unchanged, reducing mean |∆g| by only 1–3% while keeping the monotonic warp fraction below 0.4%.The reported interpretation is that performance comes from changed traversal granularity rather than improved memory locality or coalescing.
- TileGS uses robust depth-range estimation and log-based binning to allocate finer separation near the camera while keeping the total number of bins moderate.The mapping is a coarse performance-oriented ordering device; exactness is handled by repair rather than binning alone.
- TileGS constructs tile-bin ranges by counting entries, prefix-summing bin offsets, scattering Gaussian IDs, and materializing a tile-bin-major stream.Bins are grouped by tile and ordered front-to-back within each tile, producing contiguous sub-ranges for rasterization.
- After repair, TileGS matches baseline output up to numerical noise, with |∆PSNR| < 0.001 dB, |∆SSIM| < 0.001, and |∆LPIPS| < 0.001.The repaired path is therefore empirically equivalent to baseline compositing within numerical precision under the reported benchmarks.
4. Experimental setup
The evaluation compares TileGS No-GW with the optimized gsplat baseline across nine scenes on controlled desktop and laptop Ada GPU platforms, using end-to-end GPU frame time and image-quality metrics.
- The hardware platforms are an RTX 4090 and an RTX 1000 Ada, with controlled clock presets that fix each platform’s compute-to-bandwidth operating point.Cross-platform comparisons are limited to measurements under the stated presets.
- TileGS is evaluated on a 9-scene benchmark spanning Mip-NeRF 360, Tanks and Temples, and Deep Blending, including raster-heavy and lighter scenes.The suite is designed to expose both TileGS’s expected high-benefit regime and cases where binning and repair overheads are more visible.
- The primary comparison is between gsplat’s globally sorted tile-depth traversal and TileGS No-GW with K = 64, the strongest end-to-end variant.Packed-GW is included only as a bandwidth-oriented ablation.
- End-to-end frame time covers the full GPU forward pass, including projection, sorting, rasterization, and TileGS auxiliary stages, measured with CUDA events.Python host overhead, parameter transfers, and the backward pass are excluded.
- TileGS matches gsplat output up to numerical noise, with |∆PSNR| < 0.001 dB, |∆SSIM| < 0.001, and |∆LPIPS| < 0.001 on all reported scenes.Image quality is measured against the gsplat output.
- Nsight Compute analysis measures DRAM traffic, cache behavior, effective throughput, and theoretical L2 sector counts to characterize memory pressure.Source-attributed sector counts are used as a proxy because raw DRAM bytes are not directly attributable to individual source lines.
5. Results
TileGS No-GW improves end-to-end performance across all nine scenes on both tested Ada GPUs while preserving baseline-equivalent image quality. Its raster-kernel gains exceed frame-level gains because bin construction and repair add overhead.
- 5.1. End-to-end frame time: 1.069× on RTX 4090 and 1.094× on RTX 1000 Ada are the mean end-to-end speedups across all nine scenes.TileGS No-GW improves every scene, with larger gains on raster-heavy workloads.
- 5.2. Rasterization-kernel speedup: 1.439× on RTX 4090 is the complete nine-scene mean raster-kernel speedup, while the Ada mean is 1.441× over five captured scenes.Four heavy Ada scenes lacked kernel captures because of profiler resource-acquisition failures, although their end-to-end timings remained available.
- 5.2. Rasterization-kernel speedup: 6.9–9.4% end-to-end gains remain after bin construction and repair costs consume part of the raster-kernel improvement.On bicycle and garden, bin construction and repair are the dominant added costs.
- 5.3. Depth-bin ablation: K = 64 is the best fixed depth-bin setting across the full suite, while K = 32 remains a strong near-optimal alternative.Quality remains effectively invariant across the bin-count sweep.
- 5.4. Image quality and repair: |∆PSNR| < 0.001 dB, |∆SSIM| < 0.001, and |∆LPIPS| < 0.001 show TileGS matches gsplat within numerical noise.Removing repair instead causes maximum errors of 2.03 dB PSNR and 0.0579 SSIM on the representative subset.
6. Mechanism analysis
TileGS is faster because tile-local depth bins reduce effective raster traversal work, not because they improve occupancy, throughput, coalescing, or byte volume. Profiling identifies geometry-attribute accesses as the dominant remaining memory bottleneck and shows auxiliary stages limit frame-level gains.
- 6. Mechanism analysis: 1.26× fewer SASS thread instructions accompany faster execution despite lower SM throughput, lower active-warp occupancy, and higher DRAM traffic.SM throughput falls from 76.94% to 59.61%, occupancy from 91.32% to 62.18%, and DRAM traffic rises from 136.65 MB to 185.53 MB.
- 6. Mechanism analysis: 5.12%, 6.20%, and 4.77% fewer Gaussian tests per pixel are measured on bicycle, garden, and kitchen, respectively.The diagnostic uses repeated fixed-view profiling passes and directly supports reduced effective traversal work.
- 6. Mechanism analysis: 1.42–1.46× kernel speedups on raster-heavy scenes are consistent with traversal-work reductions scaling with raster-range length.Bicycle and garden allocate approximately 48% of GPU time to rasterization.
- 6.1. Pipeline stage breakdown: 0.803 ms and 0.689 ms of raster-kernel savings on bicycle and garden dominate net gains after bin construction and repair costs.The global-sort replacement also saves 0.441 ms and 0.640 ms, but added bin construction and repair are larger together on both scenes.
- 6.2. Remaining bottleneck: geometry-attribute scatter: 85.8% of total source-attributed raster traffic and 88.6% of excess sectors come from geometry attributes.The remaining bottleneck is scattered access to conic parameters, projected means, colors, and opacities rather than bin metadata.
- 6.2. Remaining bottleneck: geometry-attribute scatter: Bandwidth-oriented fixes produce no net gain because added control, synchronization, decoding, or helper-kernel costs outweigh reduced attribute traffic.The current No-GW path benefits partly from keeping the raster inner loop simple.
7. Discussion, limitations, and future work
TileGS isolates traversal organization as a separate optimization axis and reports speedups despite unchanged representation and compositing semantics. Its evidence is limited to Ada GPUs, selected profiling coverage, specific scene distributions, native resolutions, and forward rasterization.
- TileGS changes traversal granularity without altering representation or compositing, and remains complementary to memory-layout optimization.The remaining bottleneck is geometry-attribute traffic, motivating raster-order-aware storage or AoSoA-style layouts.
- The evaluation covers only NVIDIA Ada GPUs, so quantitative claims do not extend to other GPU generations, vendors, or mobile architectures.Hardware scheduling, cache behavior, and memory service may change the magnitude of tile-bin-major reordering.
- Profiling on RTX 1000 Ada excludes four raster-heavy scenes, making its reported 1.441× kernel mean a five-scene subset rather than a full-suite average.A 50% Gaussian diagnostic covered all nine scenes but is supporting evidence only.
- The benchmark uses natural captures, while systematic stress tests for sparse, dense, and bimodal synthetic depth distributions remain future work.Such tests would characterize when binning overhead dominates or the repair budget becomes active.
- The reported settings were evaluated at native resolution and standard held-out views without independent resolution or view-count sweeps.Higher resolutions may alter tile counts, per-tile Gaussian counts, and suitable binning or repair settings.
- The current implementation targets forward rasterization only; training integration requires backward traversal in the same repaired tile-bin-major order.The authors leave this integration to future work.
8. Conclusion
TileGS reorganizes Gaussian splatting into tile-local depth-binned traversal with selective exact repair while preserving the representation, inputs, and compositing semantics. Across nine scenes on Ada GPUs, it improves kernel and frame time over gsplat while preserving image quality up to numerical noise.
- TileGS replaces globally sorted tile-depth traversal with bin-organized tile-local rasterization and selective exact repair.The method keeps the Gaussian representation, projected inputs, and compositing semantics unchanged while changing workload-consumption granularity.
- Across a 9-scene Ada-GPU benchmark, TileGS preserves image quality while improving rasterization-kernel and end-to-end frame time over gsplat.These gains include added depth-range estimation, bin construction, and repair stages.
- TileGS is faster despite higher DRAM traffic and lower occupancy and SM-throughput counters, while SASS thread instructions fall by 1.26×.Geometry-attribute access remains the dominant unresolved memory bottleneck.
COMPUTER GRAPHICS forum
The supplied material identifies the paper and supplemental algorithm, then outlines TileGS’s forward path from projected Gaussian attributes to a baseline-matching rendered image. The pipeline estimates depth ranges, constructs tile-bin-major streams, repairs selected segments, and rasterizes bins in order.
- The material identifies TileGS: Tile-Local Depth Binning for Gaussian Splatting and its Rasterization Supplemental Material.The listed authors are affiliated with Aalto University and Nokia Technologies.
- Algorithm 1 takes projected Gaussian attributes and baseline Gaussian–tile entries, then outputs a rendered image matching baseline compositing up to numerical noise.The configured bin count is K = 64.
- The forward path estimates a robust depth range, builds tile-bin-major offsets, applies selected exact repair, and rasterizes the repaired stream.These stages are described as the implementation-level execution structure.
1. Notation and Default Configuration
TileGS represents Gaussian–tile entries with tile identifiers, Gaussian identifiers, and baseline sort keys, then assigns each entry to one of K coarse depth bins. Per-tile offsets delimit the flattened intervals used for bin traversal.
- Each Gaussian–tile entry stores a tile id, Gaussian id, and original baseline sort key before assignment to a coarse bin.The bin index ranges from 0 through K − 1.
- For each tile, binOffsets[t,0...K] defines concatenated intervals, with bin b occupying [binOffsets[t,b],binOffsets[t,b+1]).
2. Tile-Local Bin Construction
TileGS constructs a tile-bin-major stream by assigning tile entries to coarse depth bins, scanning bin counts, and scattering baseline keys with Gaussian IDs into contiguous bin ranges.
- 2. Tile-Local Bin Construction: The default implementation uses exact sampled-depth percentiles to form a robust clipped range, while histogram-based percentile estimation remains an unused alternative.The reported results use kthvalue order statistics over sampled candidates.
- 2. Tile-Local Bin Construction: TileGS assigns each entry to a clamped log-depth bin and produces tile offsets, bin offsets, and a tile-bin-major pair stream.The default mapping uses the same near-depth-shifted key used for range estimation.
- 2. Tile-Local Bin Construction: The construction pass counts entries per tile and bin, exclusive-scans those counts, and atomically scatters each baseline key and Gaussian ID into its bin range.
- 2. Tile-Local Bin Construction: TileGS changes traversal organization without changing Gaussian inputs, representation, or splat evaluation equations.
3. Selective Exact Repair
Selective repair restores baseline ordering for selected coarse bin segments before rasterization, using fixed thresholds and a bounded repair-entry budget.
- 3. Selective Exact Repair: Selective repair sorts selected tile-bin segments by their original baseline key while leaving non-selected segments in tile-bin-major order.The reported policy uses fixed global thresholds rather than per-scene tuning.
- 3. Selective Exact Repair: The repair procedure applies a budget of Brep = ⌊0.25M⌋ and selects segments using length, relative tile span, and early-bin criteria.
4. Binned Raster Traversal
The default binned raster traversal scans each tile’s repaired contiguous interval in front-to-back bin order, retaining the baseline’s block-level control flow and early termination.
- 4. Binned Raster Traversal: Each tile scans the concatenated interval [binOffsets[t,0], binOffsets[t,K]) after repair, with coarse bins laid out back to back in front-to-back order.
- 4. Binned Raster Traversal: Within bins, entries retain scatter-produced order unless selective repair restored exact baseline depth order for that segment.
- 4. Binned Raster Traversal: The raster kernel uses one CUDA block per tile, loads Gaussian attributes, and applies per-pixel early termination during batched traversal.
5. Synthetic Scale-Up Stress Diagnostic
On a fixed high-workload bicycle view, synthetic scaling from 5M to 30M Gaussians shows cheaper TileGS sort/reordering and raster stages, while total-frame gains are smaller and non-monotonic.
- 5. Synthetic Scale-Up Stress Diagnostic: At 30M emitted entries, TileGS improves the sort stage by 1.71× and the raster stage by 1.42× on RTX 4090.These measurements come from the fixed bicycle-view scale-up diagnostic.
- 5. Synthetic Scale-Up Stress Diagnostic: Both TileGS stages remain cheaper across the tested 5M–30M workload range, with absolute timing gaps widening as scale increases.
- 5. Synthetic Scale-Up Stress Diagnostic: Total-frame speedup is smaller and non-monotonic because synthetic scaling includes non-raster and auxiliary overheads unaffected by the binned raster path.