-
Notifications
You must be signed in to change notification settings - Fork 278
Software backend
Jeff Muizelaar edited this page Jul 31, 2019
·
32 revisions
llvmpipe vs swiftshader current performance investigation
- Try to figure out the per pixel shading times to compare between llvmpipe and swiftshader
llvmpipe and swiftshader both run the pixel shader on 2x2 blocks of pixels. A pixel is represented as something like Pixel{ a[f32; 4], r: [f32; 4], g: [f32; 4], b: [f32; 4]}
or specifically Vector4f
in SwiftShader. This way, all "a" for a block are placed in a SIMD word and processed together, same for "r"s, "g"s, and "b"s.
The vertex shader is similarly run on 4 vertices at a time.