XYZboom opened a new issue, #20060:
URL: https://github.com/apache/tvm/issues/20060

   ### Expected behavior
   
   `relax.build(mod, target="cuda")` should compile successfully for any valid 
Relax IR module, including `relax.op.argmin` with any valid input shape. The 
compiled module should execute and produce correct argmin results.
   
   ### Actual behavior
   
   
   `relax.build` crashes with an `InternalError` during CUDA codegen:
   
   ```
   tvm.error.InternalError: Check failed: scope != "global" (global vs. global) 
: Cannot allocate global memory when targeting CUDA. You must pass all global 
arrays as input instead
   ```
   
   ### Environment
   
   - **OS**: Linux (x86_64, conda environment)
   - **GPU**: NVIDIA GeForce RTX 3080 Ti (12GB VRAM, CUDA 580.76.05)
   - **TVM version**: 0.25.0.post1
   - **Target**: `cuda` (GPU compilation)
   - **Python**: 3.12
   
   ### Steps to reproduce
   
   ```python
   import tvm
   from tvm import relax
   
   bb = relax.BlockBuilder()
   v = relax.Var("x", relax.TensorStructInfo(shape=[1], dtype="float32"))
   with bb.function("f", [v]):
       out = bb.emit(relax.op.astype(relax.op.argmin(v, axis=-1), 
dtype="float32"))
       bb.emit_func_output(out)
   mod = bb.get()
   
   # Crashes here during CUDA codegen
   ex = relax.build(mod, target="cuda")
   ```
   
   ### Triage
   
   * bug
   * cuda
   * needs-triage
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to