diff --git a/tinygrad/runtime/ops_cuda.py b/tinygrad/runtime/ops_cuda.py index 34ba8d10ef..21ee7be6e8 100644 --- a/tinygrad/runtime/ops_cuda.py +++ b/tinygrad/runtime/ops_cuda.py @@ -74,7 +74,7 @@ def cuda_disassemble(lib, arch): with open(fn + ".ptx", "wb") as f: f.write(lib) subprocess.run(["ptxas", f"-arch={arch}", "-o", fn, fn+".ptx"], check=True) print(subprocess.check_output(['nvdisasm', fn]).decode('utf-8')) - except Exception as e: print("failed to generate SASS", str(e)) + except Exception as e: print("Failed to generate SASS", str(e), "Make sure your PATH contains ptxas/nvdisasm binary of compatible version.") class CUDAProgram: def __init__(self, device:CUDADevice, name:str, lib:bytes): diff --git a/tinygrad/runtime/ops_nv.py b/tinygrad/runtime/ops_nv.py index 3e13676f57..67a7ea1249 100644 --- a/tinygrad/runtime/ops_nv.py +++ b/tinygrad/runtime/ops_nv.py @@ -237,7 +237,7 @@ class NVProgram(HCQProgram): fn = (pathlib.Path(tempfile.gettempdir()) / f"tinycuda_{hashlib.md5(lib).hexdigest()}").as_posix() with open(fn + ".cubin", "wb") as f: f.write(lib) print(subprocess.check_output(["nvdisasm", fn+".cubin"]).decode('utf-8')) - except Exception as e: print("failed to disasm cubin", str(e)) + except Exception as e: print("Failed to disasm cubin:", str(e), "Make sure your PATH contains nvdisasm binary of compatible version.") if MOCKGPU: image, sections, relocs = memoryview(bytearray(lib) + b'\x00' * (4 - len(lib)%4)).cast("I"), [], [] # type: ignore else: image, sections, relocs = elf_loader(self.lib, force_section_align=128)