TileShare: Training-Free Acceleration of Overlapping Tiled ViT Decoding
Abstract
Fixed-window Vision Transformer (ViT) decoders run at deployment resolution as overlapping tiles: every token in an overlap band is processed by several full decoder instances. In the 2.4B-parameter MiniMax-H3 video decoder, about half of all per-token computation is duplicated. Removing the tiles fails because attention, global tokens and coordinates are bound to them. TileShare keeps each released tile's attention and computes every other operation once per token. The released computation changes at one kind of step only: an overlap token's per-tile results are blended into one shared state with the released weights. Interventions show that this blend costs quality where attention reads the shared states, mainly in the first few layers, which TileShare therefore keeps per tile. Without training, keeping six layers per tile decodes 1.38-1.51x faster than batched and compiled tiling on two GPU types (up to 1.96x with FP8) and is equivalent to the released decoder in PSNR, LPIPS and DISTS on DAVIS videos. On unseen UVG videos with the setting frozen beforehand, it matches PSNR and DISTS and improves LPIPS. TileShare carries over to two further decoders and is again confirmed on unseen data. It is equivalent in PSNR and DISTS on MAGI-1. On the ViTok-v2 image autoencoder at 2K-4K, it matches overlapping tiling in PSNR, improves LPIPS and DISTS and decodes 1.5-1.8x faster. How many layers stay per tile is measured once per model (for decoders, without labels); we report it for 14 decoders and encoders. Optionally, two GPU-hours of self-distillation let MiniMax-H3 share every layer without a loss in PSNR, and a coordinate field trained while the network stays frozen brings fully shared CLIP-based open-vocabulary segmentation to parity with sliding windows on seven benchmarks.
Figures & tables
| Shared operations | PSNR | FLOPs | PSNR | FLOPs |
|---|---|---|---|---|
| none (per-tile states throughout) | 1.000 | 1.000 | ||
| QKV only | 0.924 | 0.914 | ||
| out-projection only | 0.975 | 0.971 | ||
| MLP only | 0.695 | 0.657 | ||
| all (TileShare) | 0.593 | 0.543 | ||
| DAVIS-30 | UVG (prospective) | |||||
| Method | PSNR | P / L / D | PSNR, 704p | PSNR, 1080p | P / L / D | Speed-up |
| Released tiling (batched) | 0 | 0 | 0 | 1.00 / 1.00 / 1.00 | ||
| Hard stitching | [ ] | / – / – | – | – | – | |
| TileShare-0 | [ ] | / / | – | – | 1.69 / 1.54 / 1.61 | |
| TileShare-4 | [ ] | ✓ / / | [ ] | [ ] | ✓ / ✓ / ✓ | 1.56 / 1.44 / 1.50 |
| TileShare-6 | [ ] | ✓ / ✓ / ✓ | [ ] | [ ] | ✓ / / ✓ | 1.51 / 1.41 / 1.45 |
| Fastest third (All-38) | Corners (1080p) | Steps (‰) | HF (%) | |
|---|---|---|---|---|
| TileShare-4 | [ ] | 4.8 / 5.7 / 2.6 | / | |
| TileShare-6 | [ ] | 2.0 / 1.3 / 0.7 | / |
| Decoder, data | PSNR | P / L / D | Whole | Speed-up | |
|---|---|---|---|---|---|
| MAGI-1, DAVIS-10 | 3 | [ ] | ✓ / ✓ / ✓ | / | |
| MAGI-1, UVG-16 | 3 | [ ] | ✓ / / ✓ | – | – |
| ViTok-v2, DIV8K-40 | 0 | [ ] | ✓ / / | / | |
| [ ] | ✓ / / | / | |||
| ViTok-v2, Commons-40 | 0 | [ ] | ✓ / / | – | |
| [ ] | ✓ / / | – |
| Model | Positions | Whole tiled | Speed-up | |
| Whole input as good in quality | ||||
| DINOv3-B/16 (enc.) [ 45 ] | RoPE | 8/12 | – | |
| DINOv3-L/16 (enc.) | RoPE | 16/24 | – | |
| PE-Spatial-B/16 (enc.) [ 6 ] | RoPE + abs. | 0/12 | 1.32 | |
| ViTok-v2 5B (image dec.) ¶ [ 16 ] | RoPE | 0/40 | 1.61 | |
| Tiling needed, small | ||||
| Variant | Trained | [95% CI] | Worst | Speed-up |
|---|---|---|---|---|
| MiniMax-H3, All-38 | ||||
| TileShare-0 | – | [ ] | 1.69 | |
| TileShare-0 + LoRA self-distillation | 51.9M | [ ] | 1.69 | |
| TileShare-0 + coordinate field | 1.3M | [ ] | – | |
| CLIP open-vocabulary segmentation, mean over seven benchmarks | ||||
| SCLIP, TileShare-0 | – | [ ] | – | 1.71–2.15 |
Appendix figures & tables17 assets
Supplementary material from the paper’s appendix.
Appendix
| Operation | Layer 0 | Layers |
|---|---|---|
| post_quant_conv , proj_in | once per token; same input in all tiles, exact | – |
| Registers / zero token | one set per tile, as released | per tile; attend only to their own tile |
| Norm1, QKV, QK-RMSNorm | once per token; exact | once, on the shared state |
| RoPE | per tile, on tile coordinates, as released | as released |
| Attention (dense, per tile) | released key set, coordinates and registers; exact | keys and values from shared states |
| Blend of attention outputs | the only approximation (overlap tokens) | in every layer |
| Method | DAVIS-30 | Dev-8 | All-38 [95% CI] | 1080p-26 | UVG 704p | UVG 1080p | LPIPS | DISTS |
|---|---|---|---|---|---|---|---|---|
| Hard stitching | [ ] | – | – | – | – | |||
| TileShare-0 | [ ] | – | – | |||||
| TileShare-4 | [ ] | |||||||
| TileShare-6 | [ ] | |||||||
| FP8 MLP layers only | [ ] | – | – | – | – | |||
| TileShare-4 + FP8 | [ ] | – | – |
| Set | Method | Slow | Medium | Fast | |
|---|---|---|---|---|---|
| All-38 | TileShare-4 | [ ] | |||
| All-38 | TileShare-6 | [ ] | |||
| All-38 | spatio-temporal | [ ] | – | ||
| 1080p-26 | TileShare-4 | [ ] | |||
| 1080p-26 | TileShare-6 | [ ] |
| Set | Method | WE (%) | Flicker | Jump |
|---|---|---|---|---|
| All-38 | TileShare-4 | / | ||
| All-38 | TileShare-6 | / | ||
| All-38 | spatio-temporal | / | ||
| 1080p-26 | TileShare-4 | / | ||
| 1080p-26 | TileShare-6 | / | ||
| 1080p-26 | spatio-temporal | / |
| Method | 704p | 768p | 1080p | Mem. |
|---|---|---|---|---|
| V0, per tile, eager (released) | 28.31 (0.32) | 27.42 (0.23) | 29.76 (0.26) | 12.6 |
| V0, batched, compiled | 8.92 (1.00) | 6.25 (1.00) | 7.60 (1.00) | 14.9 |
| V0 + FP8 | 6.59 (1.35) | 4.62 (1.35) | 5.63 (1.35) | 16.2 |
| TileShare-0 | 5.28 (1.69) | 4.06 (1.54) | 4.72 (1.61) | 15.7 |
| TileShare-4 | 5.71 (1.56) | 4.34 (1.44) | 5.07 (1.50) | 15.1–16.8 |
| TileShare-6 | 5.92 (1.51) | 4.43 (1.41) | 5.23 (1.45) | 15.1 |
| Component | V0 | TileShare-4 | Saved | Ratio |
|---|---|---|---|---|
| MLP GEMMs | 4674 | 2596 | 2079 | 0.56 |
| QKV + out-projection GEMMs | 1596 | 913 | 683 | 0.57 |
| Attention (SDPA) | 851 | 842 | 9 | 0.99 |
| RMSNorm + residual | 626 | 410 | 216 | 0.66 |
| QK-norm + RoPE (+ gather) | 334 | 311 | 23 | 0.93 |
| SwiGLU gate | 597 | 327 | 270 | 0.55 |
| Shared | FLOPs | FLOPs | ||
|---|---|---|---|---|
| none | 1.000 | 1.000 | ||
| q | 0.924 | ( ) | 0.914 | |
| o | 0.975 | 0.971 | ||
| m | 0.695 | ( ) | 0.657 | |
| q + o | 0.898 | 0.886 | ||
| q + m ( all) | 0.619 | 0.571 |
| PSNR [95% CI] | LPIPS | DISTS | HF (%) | Corners | |
|---|---|---|---|---|---|
| 0 | [ ] | ||||
| 2 | [ ] | ||||
| 3 | [ ] | ||||
| 4 | [ ] | ||||
| 5 | [ ] | ||||
| 6 | [ ] |
| SCLIP | NACLIP | ClearCLIP | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Benchmark | V0 | W | F | V0 | W | F | V0 | W | F | |||
| VOC21 | 59.6 | 57.6 | 51.8 | |||||||||
| Context60 | 32.6 | 33.4 | 33.8 | |||||||||
| COCO-Obj. | 33.5 | 33.2 | 33.0 | |||||||||
| VOC20 | 81.5 | 77.1 | 80.9 | |||||||||
| Context59 | 34.1 | 35.2 | 35.8 | |||||||||
| Change | PSNR | Speed-up |
|---|---|---|
| Whole-frame decoding | / | |
| Larger tiles (320 / 384 / 512 px) | / / | – |
| Less overlap (16 / 0 px) | / | / (704p) |
| Temporal re-chunking | to | – |
| Best single-pass sliding window | / |
| Set, size | Variant | PSNR | LPIPS / DISTS ( ) | P / L / D |
|---|---|---|---|---|
| DIV8K, 2048 | Whole | [ ] | / | / / |
| Hard | [ ] | / | ✓ / ✓ / | |
| TileShare-0 | [ ] | / | ✓ / / | |
| TileShare-2 | [ ] | / | ✓ / / | |
| TileShare-4 | [ ] | / | ✓ / / | |
| TileShare-8 | [ ] | / | / / |
| Model, size | Scope | Tiled | Whole | TileShare | vs. tiled | vs. whole |
|---|---|---|---|---|---|---|
| 350M, 2048 | decoder | 76.9 | 110.2 | 43.5 | ||
| pipeline | 89.9 | 128.3 | 55.7 (50.5) | ( ) | ( ) | |
| 350M, 4096 | decoder | 271.9 | 1310.6 | 178.4 | ||
| pipeline | 322.8 | 1553.9 | 229.2 (216.5) | ( ) | ( ) | |
| 5B, 4096 | decoder | 3036.5 | 7828.7 | 1885.2 | ||
| pipeline | 3401.9 | 8636.5 | 2212.1 (2089.5) | ( ) | ( ) |
Efficient ViTs
Efficient Vision Transformers reduce the compute, memory, energy, or latency needed to process images and video while retaining useful accuracy.
See all 243 papers