linebender / linebender/vello

[Hybrid] Crash with (too many) large images?

Open
#1,381 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug C-gpu
Dominant language
Rust
Stars
4.3k
Forks
300
Avg merge
2d 13h
Merged PRs (30d)
61

Description

### Problem

Vello Hybrid will crash (panic) if it is given very large raster image(s). The panic message was something like "out of texture memory".

### Notes

- We're talking 5-10 images with dimensions in the 1000-3000px range.
- The large size is the source image data. The images were actually being rendered at a much smaller size
- Vello CPU and Vello Classic both were both able to correctly render the Scene (albeit not with fantastic performance).

I don't currently have a reproduction (this was happening on an older version of https://servo.org, but they have since reduced the size of their images). But it should be relatively easy to reproduce.

I'm not sure what the best solution for this is (should we handle this case? return an error? render the rest of the scene skipping the large image?), but I'm pretty sure we shouldn't crash.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the crash in Vello Hybrid with 5–10 large raster images rendered at a smaller size, then compare the result with Vello CPU and Vello Classic. Trace the reported "out of texture memory" panic and determine the intended behavior for oversized images; done means the scene no longer crashes and that behavior is covered by a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.