Open Bug 1548395 Opened 1 year ago Updated 5 months ago

Test software rasterizer backend for WR

Categories

(Core :: Graphics: WebRender, task, P3)

task

Tracking

()

People

(Reporter: gw, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [wr-q4])

Once the improved picture caching work is in place, we should do some testing with swiftshader and/or llvmpip as a fallback rasterizer backend.

The goal of this bug is to identify the immediate major overheads and low hanging fruit that can be fixed in order to get some more realistic profiling numbers.

Assignee: nobody → gwatson
Type: defect → task
Whiteboard: [wr-q2][wr-may]
Blocks: wr-investigate
No longer blocks: 1554436
See Also: → 1528397
Priority: -- → P3
Depends on: 1562788
Whiteboard: [wr-q2][wr-may] → [wr-q3][wr-july]

KDE/Debian Testing/Macbook Pro A1502: LIBGL_ALWAYS_SOFTWARE=1 firefox/firefox
YouTube video playback is horribly delayed when Nightly is maximized, regardless which low video quality. 1080p looks smooth when snapped to one side of the screen. Basic is always smooth.

Whiteboard: [wr-q3][wr-july] → [wr-q3][wr-sept]
Whiteboard: [wr-q3][wr-sept] → [wr-q4]

I did some rough tests on my Linux laptop running llvmpipe, with the most recent picture caching work (including tile occlusion).

Specs are:

  • Intel i7-8550U @ 1.8 GHz
  • 16 GB RAM
  • Renderer: llvmpipe (LLVM 9.0, 256 bits), Mesa 19.2.1

Pages:

  • cnn.com, en.wikipedia.org, reddit.com

Results:

  • 1920 x 1080 resolution

    • 60 fps or close to 60 fps while (smooth) scrolling on the pages above.
  • 3840 x 2160

    • 20-30 fps while (smooth) scrolling.

There's a noticeable pause during the initial rasterization or when a lot of content is changing. Scrolling performance seems quite good at 1080p or below. If I disable smooth scrolling, it's quite usable at 4k resolution, but there are noticeable pauses when a lot of content changes at once.

I'm not sure if there's other experiments we want to do right now. Jeff, anything else in particular to check now? Should we close this off / dup it in favor of some of the tasks you're working on?

Flags: needinfo?(jmuizelaar)

It would be good if we can try to get a feel for what the bottlenecks are when running on llvmpipe. i.e. what percentage of time is spent in vertex shading vs pixel shading.

Flags: needinfo?(jmuizelaar)

Unassigning for now, since it's unlikely I'll have time to work on this in the near future, so perhaps someone else can pick it up.

Assignee: gwatson → nobody
You need to log in before you can comment on or make changes to this bug.