On Tue, Jul 17, 2018 at 01:29:26PM -0700, Kenneth Graunke wrote: > On Tuesday, July 17, 2018 10:45:28 AM PDT Nanley Chery wrote: > > On Tue, Jul 17, 2018 at 08:19:30AM -0700, Kenneth Graunke wrote: > > > Wow, I had no idea we were actually using linear depth buffers. > > > > Neither did I until Mark let me know that I regressed some tests after > > landing commit fbe01625f6bf2cef6742e1ff0d3d44a2afec003e. Whoops! > > > > I've included the Bugzilla tag locally. > > https://bugs.freedesktop.org/show_bug.cgi?id=107248 > > > > > Is there any compelling reason to use them? I can't think of one. > > > > > > > Yes. They give us the best performance and memory usage for 1D textures > > (see isl_surf_choose_tiling()). > > While 1D depth textures are certainly supported, I don't think I have > ever seen one. shader-db has no instances of them in any shader. > > It doesn't make much sense...when you use a depth buffer, you draw > objects in a scene and record their distance from the camera. Doing > that with a 1D surface just seems...unlikely? >
Good to know. > > > Y-tiling should offer better performance. PBO upload needs to be > > > done with a R32_UINT format anyway, as R24_X8 isn't renderable. > > > > > > > I don't understand how the PBO format comes into play here. Care to > > elaborate? > > PBO upload/download of texture data uses linear buffers. I was thinking > of glTexImage2D with data in a PBO. Not sure if you can do that with > depth... > I'm still a little lost, but maybe we can talk about this point offline. > > > I'm pretty sure that we used to always use Y-tiling in the old > > > miptree code...maybe this regressed when we switched to ISL? > > > > Yeah, we did always use Y-tiling. I caused the regression when I pushed > > that commit. > > > > > The hardware timeline looks like: > > > > > > BROKEN /-------------- Works??? -----------\ DISALLOWED > > > [Broadwater, Crestline, Eaglelake, Cantiga, Ironlake, Sandybridge, ...] > > > > > > Given that it was broken and ultimately became disallowed, I'm a bit > > > skeptical whether it really works, or is useful, in the meantime. > > > > > > > It seems to work. We're getting testing from these piglit tests: > > * piglit.spec.arb_shader_texture_lod.execution.tex-miplevel-selection > > *projgradarb 1dshadow > > * piglit.spec.arb_shader_texture_lod.execution.tex-miplevel-selection > > *gradarb 1dshadow > > * piglit.spec.arb_shader_texture_lod.execution.tex-miplevel-selection *lod > > 1dshadow > > * piglit.spec.!opengl 1_1.copyteximage 1d > > * piglit.spec.ext_texture_array.copyteximage 1d_array > > * piglit.spec.arb_shader_texture_lod.execution.tex-miplevel-selection > > *projlod 1dshadow > > > > On ILK and g45 they go from fail->pass with the last patch. But g965 > > needed the linear option removed completely. > > I guess if it's working and useful for 1D, while being basically no > code, we can do it, but...I have a real hard time caring about 1D depth. I don't blame you. The main reason I care is that I just broke them :/ _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev