nak: Turing starts at SM73
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run

The low-end Turing cards (TU117 for sure) are SM73, not SM75.  These are
the cards on which we have tensor cores but they're so slow as to be
almost useless.  We're not back-porting this because nouveau currently
returns 75 for these cards and because Volta binaries work fine on
Turing so they'll just be a little slower.  We have, however, seen this
advertised by NVRM so we want our handling of shader models to be
correct.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34201>
This commit is contained in:
Faith Ekstrand 2025-03-26 17:39:10 -05:00 committed by Marge Bot
parent 5df68ffac1
commit f26cf5633d
4 changed files with 5 additions and 5 deletions

View file

@ -22,7 +22,7 @@ impl ShaderModel70 {
}
fn has_uniform_alu(&self) -> bool {
self.sm >= 75
self.sm >= 73
}
}
@ -161,7 +161,7 @@ impl SM70Encoder<'_> {
}
fn set_ureg(&mut self, range: Range<usize>, reg: RegRef) {
assert!(self.sm.sm >= 75);
assert!(self.sm.sm >= 73);
assert!(range.len() == 8);
assert!(reg.file() == RegFile::UGPR);
assert!(reg.base_idx() <= 63);

View file

@ -110,7 +110,7 @@ impl ShaderProgramHeader {
SPHV3_T1_SPH_TYPE_TYPE_01_VTG
};
let sph_version = if sm >= 75 { 4 } else { 3 };
let sph_version = if sm >= 73 { 4 } else { 3 };
res.set_sph_type(sph_type, sph_version);
res.set_shader_type(shader_type);

View file

@ -1073,7 +1073,7 @@ nak_postprocess_nir(nir_shader *nir,
bool lcssa_progress = nir_convert_to_lcssa(nir, false, false);
if (nak->sm >= 75) {
if (nak->sm >= 73) {
if (lcssa_progress) {
OPT(nir, nak_nir_mark_lcssa_invariants);
}

View file

@ -30,7 +30,7 @@ c = 'c'
s = 's'
# common conditions to improve readability
volta = 'nak->sm >= 70 && nak->sm < 75'
volta = 'nak->sm >= 70 && nak->sm < 73'
algebraic_lowering = [
# Volta doesn't have `IMNMX`