CUDA_ERROR_NOT_FOUND in cuModuleGetFunction during PyTorch model.to(device) (YOLO11)
zluda_trace logs (tarball/zip file)
Description
I am trying to train a YOLO11 model . When running the PyTorch-based training script via ZLUDA, the application crashes exactly at the point of moving the model to the GPU (self.model = self.model.to(self.device)).
Expected behavior: The model should successfully load onto the ZLUDA-virtualized GPU and begin the training loop.
Actual behavior: The application crashes with RuntimeError: CUDA error: named symbol not found.
According to the zluda_trace logs, the initialization and device detection (AMD Radeon RX 6750 GRE 12GB [ZLUDA]) work perfectly. cuLibraryLoadData also succeeds and saves several .elf modules. However, immediately after pushing the context, cuModuleGetFunction fails to find the PyTorch vectorized elementwise kernel and returns CUDA_ERROR_NOT_FOUND.
Trace snippet:
Plaintext [ZLUDA_TRACE] cuLibraryLoadData(...) -> CUDA_SUCCESS [ZLUDA_TRACE] Saved module to module_0001_01_01.elf ... [ZLUDA_TRACE] cuModuleGetFunction(hfunc: 0x0, hmod: 0x211d6878670, name: "ZN2at6native29vectorized_elementwise_kernelILi4ENS0_11FillFunctorIfEENS_6detail5ArrayIPcLi1EEEEEviT0_T1") -> CUDA_ERROR_NOT_FOUND
Steps to reproduce
Set up a Python environment with PyTorch CUDA version (torch-2.4.1+cu121) and ultralytics (8.4.30).
Execute the YOLO11 training command using ZLUDA: zluda.exe --zluda-trace -- yolo train data=D:/ultralytics/datasets/MSMS-VF-yolo11/MSMS-VF.yaml model=yolo11n.pt epochs=100 imgsz=640
The environment initializes, successfully overrides the integrity check hash, but fails during model setup on the device.
ZLUDA version
Version 6-preview.63
Operating System
Windows 11 Pro for Workstations (Version 25H2, OS Build 26200.8039)
GPU
AMD Radeon RX 6750 GRE 12GB
Source: vosen/ZLUDA