Fernando Sahmkow
2018-Sep-11 19:13 UTC
[Nouveau] Questions on Maxwell/Pascal Texture Instructions Modes
Hello, I got some doubts on how texture modes work on TEX, TEXS, TLD4, etc instructions. I got: DC, AOFFI, NDV, NODEP, MZ, PTP modes as well as LZ Mode. How does this work or change the behavior of the texture instruction. So far of those I know AOFFI defines an Offset but I'm on blanks for the rest. -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20180911/1fc69500/attachment.html>
Ilia Mirkin
2018-Sep-11 19:36 UTC
[Nouveau] Questions on Maxwell/Pascal Texture Instructions Modes
DC = depth compare (extra arg with compare reference) AOFFI = texel offset (extra arg with offsets encoded). Note that TLD4 can also have a iirc AOFFIS variant which takes 4 offsets encoded in 2 sequential regs. and iirc at 8 bits per offset, while other ops do 4 bits per offset. check what nouveau does, it's right and took me forever to track it all down. NDV = don't run the texture call for lanes that are masked (which can cause downstream derivatives to be wrong) NODEP = i forget, but check the nouveau emitter, I think we set it. has something to do with additional texture ops being run shortly after... or something. it was called "S" and "T" on fermi iirc, those may be the terms we use. MZ = ? perhaps something related to MS textures, clamping the sample to zero? dunno. never heard of it. PTP = ? never heard of it. LZ = level zero LL = level lod (extra arg with lod) Really, check nouveau code - it's accurate and took considerable effort to work out. https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp#n841 https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp#n2722 You're missing out bits like indirect handles, TXD arguments being weird... probably other bits. On Tue, Sep 11, 2018 at 3:13 PM, Fernando Sahmkow <fsahmkow27 at gmail.com> wrote:> Hello, I got some doubts on how texture modes work on TEX, TEXS, TLD4, etc > instructions. > > I got: > DC, AOFFI, NDV, NODEP, MZ, PTP modes as well as LZ Mode. How does this work > or change the behavior of the texture instruction. So far of those I know > AOFFI defines an Offset but I'm on blanks for the rest. > > > > _______________________________________________ > Nouveau mailing list > Nouveau at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/nouveau >
Possibly Parallel Threads
- [PATCH] maxwell,pascal: add scheduling data to shaders
- [PATCH] gm107/ir: use lane 0 for manual textureGrad handling
- [PATCH v2 6/7] copy: add maxwell/pascal copy engine classes
- [PATCH xf86-video-nouveau] Add Pascal family support, identical to Maxwell
- Render Targets and Pitch Linear Textures in Maxwell/Pascal Question