[GH-ISSUE #64] Memory access fault using Krea 2 INT8 CONVROT with Triton backend on AMD gfx1151 #24

Open
opened 2026-10-26 22:19:15 +00:00 by bsakaguchi · 12 comments
Owner

Originally created by @waltercool on GitHub (Jul 7, 2026).
Original GitHub issue: https://github.com/Comfy-Org/comfy-kitchen/issues/64

Hi there,

I'm testing INT8 models using ROCm and Triton backend. In this scenario, using Krea 2 leads me to a memory fault crash. This only happens when enabling Triton backend.

Tried using Flash Attention, Pytorch Cross Attention and Sub Quad Optimization, same result.

Disabling the Triton backend aparently works fine, just terribly slow, painfully slower than FP8.

Model used: https://huggingface.co/Comfy-Org/Krea-2/blob/main/diffusion_models/krea2_turbo_int8_convrot.safetensors

[ 5603.532594] amdgpu 0000:c4:00.0: [gfxhub] page fault (src_id:0 ring:24 vmid:8 pasid:94)
[ 5603.532595] amdgpu 0000:c4:00.0: Process python3 pid 135257 thread python3 pid 135257
[ 5603.532596] amdgpu 0000:c4:00.0: in page starting at address 0x00007f4d8a007000 from client 10
[ 5603.532598] amdgpu 0000:c4:00.0: GCVM_L2_PROTECTION_FAULT_STATUS:0x00801031
[ 5603.532598] amdgpu 0000:c4:00.0: Faulty UTCL2 client ID: TCP (0x8)
[ 5603.532599] amdgpu 0000:c4:00.0: MORE_FAULTS: 0x1
[ 5603.532600] amdgpu 0000:c4:00.0: WALKER_ERROR: 0x0
[ 5603.532601] amdgpu 0000:c4:00.0: PERMISSION_FAULTS: 0x3
[ 5603.532602] amdgpu 0000:c4:00.0: MAPPING_ERROR: 0x0
[ 5603.532603] amdgpu 0000:c4:00.0: RW: 0x0

ComfyUI logs:

comfyui.log

Any extra analysis, let me know, happy to provide information.

ROCM version: 7.2.0
Triton version: 3.7.1
Comfy Kitchen version: 0.2.16
ComfyUI version: 0.27.0

Footnote:
I'm also using INT8 CLIP for text generation, and this seems to work fine. Probably 20% faster than FP8. It doesn't crash.

INT8 Clip used: https://huggingface.co/Winnougan/Comfy-Qwen3-VL-INT8/blob/main/qwen3vl_4b_int8_convrot.safetensors
FP8 Clip used: huggingface.co/Comfy-Org/Qwen3-VL@8bb77f7ad3/text_encoders/qwen3vl_4b_fp8_scaled.safetensors

Originally created by @waltercool on GitHub (Jul 7, 2026). Original GitHub issue: https://github.com/Comfy-Org/comfy-kitchen/issues/64 Hi there, I'm testing INT8 models using ROCm and Triton backend. In this scenario, using Krea 2 leads me to a memory fault crash. This only happens when enabling Triton backend. Tried using Flash Attention, Pytorch Cross Attention and Sub Quad Optimization, same result. Disabling the Triton backend aparently works fine, just terribly slow, painfully slower than FP8. Model used: https://huggingface.co/Comfy-Org/Krea-2/blob/main/diffusion_models/krea2_turbo_int8_convrot.safetensors [ 5603.532594] amdgpu 0000:c4:00.0: [gfxhub] page fault (src_id:0 ring:24 vmid:8 pasid:94) [ 5603.532595] amdgpu 0000:c4:00.0: Process python3 pid 135257 thread python3 pid 135257 [ 5603.532596] amdgpu 0000:c4:00.0: in page starting at address 0x00007f4d8a007000 from client 10 [ 5603.532598] amdgpu 0000:c4:00.0: GCVM_L2_PROTECTION_FAULT_STATUS:0x00801031 [ 5603.532598] amdgpu 0000:c4:00.0: Faulty UTCL2 client ID: TCP (0x8) [ 5603.532599] amdgpu 0000:c4:00.0: MORE_FAULTS: 0x1 [ 5603.532600] amdgpu 0000:c4:00.0: WALKER_ERROR: 0x0 [ 5603.532601] amdgpu 0000:c4:00.0: PERMISSION_FAULTS: 0x3 [ 5603.532602] amdgpu 0000:c4:00.0: MAPPING_ERROR: 0x0 [ 5603.532603] amdgpu 0000:c4:00.0: RW: 0x0 ComfyUI logs: [comfyui.log](https://github.com/user-attachments/files/29736227/comfyui.log) Any extra analysis, let me know, happy to provide information. ROCM version: 7.2.0 Triton version: 3.7.1 Comfy Kitchen version: 0.2.16 ComfyUI version: 0.27.0 Footnote: I'm also using INT8 CLIP for text generation, and this seems to work fine. Probably 20% faster than FP8. It doesn't crash. INT8 Clip used: https://huggingface.co/Winnougan/Comfy-Qwen3-VL-INT8/blob/main/qwen3vl_4b_int8_convrot.safetensors FP8 Clip used: https://huggingface.co/Comfy-Org/Qwen3-VL/blob/8bb77f7ad334bc594cd68c0c48e868abd1e0f719/text_encoders/qwen3vl_4b_fp8_scaled.safetensors
Author
Owner

@jnolck commented on GitHub (Jul 7, 2026):

I have the same issue. I can anima in int8 on the triton backend but not krea2. It segfaults when it hits the apply_rope variation that krea2 calls.

<!-- gh-comment-id:4908154516 --> @jnolck commented on GitHub (Jul 7, 2026): I have the same issue. I can anima in int8 on the triton backend but not krea2. It segfaults when it hits the apply_rope variation that krea2 calls.
Author
Owner

@chejh-amd commented on GitHub (Jul 8, 2026):

Hi @waltercool,
Since jnolck saw the crash on the apply_rope variant Krea2 uses, it looks like the CONVROT rope kernel isn't handling Krea2's INT8 layout quite right, maybe an off index or stride calculation.

Try run with AMD_SERIALIZE_KERNEL=3 AMD_LOG_LEVEL=3. That forces a sync after each kernel launch, so the fault tends to get pinned on the kernel that actually triggered it rather than whatever shows up later.

<!-- gh-comment-id:4912287021 --> @chejh-amd commented on GitHub (Jul 8, 2026): Hi @waltercool, Since jnolck saw the crash on the apply_rope variant Krea2 uses, it looks like the CONVROT rope kernel isn't handling Krea2's INT8 layout quite right, maybe an off index or stride calculation. Try run with `AMD_SERIALIZE_KERNEL=3 AMD_LOG_LEVEL=3`. That forces a sync after each kernel launch, so the fault tends to get pinned on the kernel that actually triggered it rather than whatever shows up later.
Author
Owner

@waltercool commented on GitHub (Jul 8, 2026):

Hi @chejh-amd ,

Thank you very much for your attention at this matter.

This is the whole output:

comfy.log.gz

And here is probably what matters from that log:

:3:hip_device_runtime.cpp   :690 : 1428106277 us:   hipGetDevice ( 0x7f01970ef32c ) 
:3:hip_device_runtime.cpp   :702 : 1428106280 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device.cpp           :659 : 1428106286 us:   hipGetDevicePropertiesR0600 ( 0x7f01970ee990, 0 ) 
:3:hip_device.cpp           :661 : 1428106289 us:  hipGetDevicePropertiesR0600: Returned hipSuccess : 
:3:hip_memory.cpp           :3796: 1428106365 us:   hipPointerGetAttribute ( 0x7f01970eeb70, 3, 0x7efad08ca000 ) 
:3:hip_memory.cpp           :3802: 1428106372 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3796: 1428106374 us:   hipPointerGetAttribute ( 0x7f01970eeb60, 3, 0x7efad9400000 ) 
:3:hip_memory.cpp           :3802: 1428106377 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3796: 1428106379 us:   hipPointerGetAttribute ( 0x7f01970eeb50, 3, 0x7ef5d9d80000 ) 
:3:hip_memory.cpp           :3802: 1428106383 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3796: 1428106385 us:   hipPointerGetAttribute ( 0x7f01970eeb40, 3, 0x7efac6e00000 ) 
:3:hip_memory.cpp           :3802: 1428106387 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3796: 1428106389 us:   hipPointerGetAttribute ( 0x7f01970eeb30, 3, 0x7efadc400000 ) 
:3:hip_memory.cpp           :3802: 1428106392 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_module.cpp           :539 : 1428106403 us:   hipModuleLaunchKernel ( 0x7eff7dc9c640, 13002, 1, 1, 128, 1, 1, 0, char array:<null>, 0x7f01970eeb80, char array:<null> ) 
:3:rocvirtual.cpp           :3596: 1428106420 us:  ShaderName : apply_rope_kernel
:1:rocdevice.cpp            :3327: 1428110468 us:  Memory Fault Error
Memory access fault by GPU node-1 (Agent handle: 0x55d16d1d6c50) on address 0x7efada619000. Reason: Page not present or supervisor privilege.
Fatal Python error: Aborted


Current thread's C stack trace (most recent call first):
  Binary file "/usr/lib64/libpython3.14.so.1.0", at _Py_DumpStack+0x3e [0x7f0b231d69ae]
  Binary file "/usr/lib64/libpython3.14.so.1.0", at +0x3ec50c [0x7f0b231ec50c]
  Binary file "/usr/lib64/libc.so.6", at +0x42860 [0x7f0b22a42860]
  Binary file "/usr/lib64/libc.so.6", at +0x9dc0c [0x7f0b22a9dc0c]
  Binary file "/usr/lib64/libc.so.6", at gsignal+0x16 [0x7f0b22a42736]
  Binary file "/usr/lib64/libc.so.6", at abort+0x28 [0x7f0b22a294a1]
  Binary file "/usr/lib64/libhsa-runtime64.so.1", at +0xde2ab [0x7f0ad78de2ab]
  Binary file "/usr/lib64/libhsa-runtime64.so.1", at +0xdc7fc [0x7f0ad78dc7fc]
  Binary file "/usr/lib64/libhsa-runtime64.so.1", at +0x124e8e [0x7f0ad7924e8e]
  Binary file "/usr/lib64/libc.so.6", at +0x9bbeb [0x7f0b22a9bbeb]
  Binary file "/usr/lib64/libc.so.6", at +0x1228ac [0x7f0b22b228ac]

Kind regards

<!-- gh-comment-id:4916346611 --> @waltercool commented on GitHub (Jul 8, 2026): Hi @chejh-amd , Thank you very much for your attention at this matter. This is the whole output: [comfy.log.gz](https://github.com/user-attachments/files/29807326/comfy.log.gz) And here is probably what matters from that log: ``` :3:hip_device_runtime.cpp :690 : 1428106277 us: hipGetDevice ( 0x7f01970ef32c ) :3:hip_device_runtime.cpp :702 : 1428106280 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device.cpp :659 : 1428106286 us: hipGetDevicePropertiesR0600 ( 0x7f01970ee990, 0 ) :3:hip_device.cpp :661 : 1428106289 us: hipGetDevicePropertiesR0600: Returned hipSuccess : :3:hip_memory.cpp :3796: 1428106365 us: hipPointerGetAttribute ( 0x7f01970eeb70, 3, 0x7efad08ca000 ) :3:hip_memory.cpp :3802: 1428106372 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3796: 1428106374 us: hipPointerGetAttribute ( 0x7f01970eeb60, 3, 0x7efad9400000 ) :3:hip_memory.cpp :3802: 1428106377 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3796: 1428106379 us: hipPointerGetAttribute ( 0x7f01970eeb50, 3, 0x7ef5d9d80000 ) :3:hip_memory.cpp :3802: 1428106383 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3796: 1428106385 us: hipPointerGetAttribute ( 0x7f01970eeb40, 3, 0x7efac6e00000 ) :3:hip_memory.cpp :3802: 1428106387 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3796: 1428106389 us: hipPointerGetAttribute ( 0x7f01970eeb30, 3, 0x7efadc400000 ) :3:hip_memory.cpp :3802: 1428106392 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_module.cpp :539 : 1428106403 us: hipModuleLaunchKernel ( 0x7eff7dc9c640, 13002, 1, 1, 128, 1, 1, 0, char array:<null>, 0x7f01970eeb80, char array:<null> ) :3:rocvirtual.cpp :3596: 1428106420 us: ShaderName : apply_rope_kernel :1:rocdevice.cpp :3327: 1428110468 us: Memory Fault Error Memory access fault by GPU node-1 (Agent handle: 0x55d16d1d6c50) on address 0x7efada619000. Reason: Page not present or supervisor privilege. Fatal Python error: Aborted Current thread's C stack trace (most recent call first): Binary file "/usr/lib64/libpython3.14.so.1.0", at _Py_DumpStack+0x3e [0x7f0b231d69ae] Binary file "/usr/lib64/libpython3.14.so.1.0", at +0x3ec50c [0x7f0b231ec50c] Binary file "/usr/lib64/libc.so.6", at +0x42860 [0x7f0b22a42860] Binary file "/usr/lib64/libc.so.6", at +0x9dc0c [0x7f0b22a9dc0c] Binary file "/usr/lib64/libc.so.6", at gsignal+0x16 [0x7f0b22a42736] Binary file "/usr/lib64/libc.so.6", at abort+0x28 [0x7f0b22a294a1] Binary file "/usr/lib64/libhsa-runtime64.so.1", at +0xde2ab [0x7f0ad78de2ab] Binary file "/usr/lib64/libhsa-runtime64.so.1", at +0xdc7fc [0x7f0ad78dc7fc] Binary file "/usr/lib64/libhsa-runtime64.so.1", at +0x124e8e [0x7f0ad7924e8e] Binary file "/usr/lib64/libc.so.6", at +0x9bbeb [0x7f0b22a9bbeb] Binary file "/usr/lib64/libc.so.6", at +0x1228ac [0x7f0b22b228ac] ``` Kind regards
Author
Owner

@jnolck commented on GitHub (Jul 8, 2026):

Hi @waltercool, Since jnolck saw the crash on the apply_rope variant Krea2 uses, it looks like the CONVROT rope kernel isn't handling Krea2's INT8 layout quite right, maybe an off index or stride calculation.

Try run with AMD_SERIALIZE_KERNEL=3 AMD_LOG_LEVEL=3. That forces a sync after each kernel launch, so the fault tends to get pinned on the kernel that actually triggered it rather than whatever shows up later.

[DEBUG] Backend triton selected for apply_rope
:3:hip_device_runtime.cpp   :687 : 3134546252 us:   hipGetDevice ( 0x7f32526f8c3c ) 
:3:hip_device_runtime.cpp   :699 : 3134546253 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546254 us:   hipGetDevice ( 0x7f32526f8afc ) 
:3:hip_device_runtime.cpp   :699 : 3134546255 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546256 us:   hipGetDevice ( 0x7f32526f8d3c ) 
:3:hip_device_runtime.cpp   :699 : 3134546256 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546258 us:   hipGetDevice ( 0x7f32526f8e50 ) 
:3:hip_device_runtime.cpp   :699 : 3134546259 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546260 us:   hipGetDevice ( 0x7f32526f8f90 ) 
:3:hip_device_runtime.cpp   :699 : 3134546261 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546268 us:   hipGetDevice ( 0x7f32526f8c3c ) 
:3:hip_device_runtime.cpp   :699 : 3134546269 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546271 us:   hipGetDevice ( 0x7f32526f8afc ) 
:3:hip_device_runtime.cpp   :699 : 3134546272 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546274 us:   hipGetDevice ( 0x7f32526f8d3c ) 
:3:hip_device_runtime.cpp   :699 : 3134546275 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546276 us:   hipGetDevice ( 0x7f32526f8e50 ) 
:3:hip_device_runtime.cpp   :699 : 3134546278 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546279 us:   hipGetDevice ( 0x7f32526f8f90 ) 
:3:hip_device_runtime.cpp   :699 : 3134546280 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134546286 us:   hipGetDevice ( 0x7f32526f945c ) 
:3:hip_device_runtime.cpp   :699 : 3134546286 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device_runtime.cpp   :687 : 3134548405 us:   hipGetDevice ( 0x7f32526f918c ) 
:3:hip_device_runtime.cpp   :699 : 3134548410 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device.cpp           :871 : 3134548769 us:   hipGetProcAddress ( hipGetLastError, 0x7f325803f320, 70125424, 0, 0x7f32526f8fbc ) 
:3:hip_device.cpp           :872 : 3134548774 us:  hipGetProcAddress: Returned hipSuccess : 
:3:hip_device.cpp           :871 : 3134548777 us:   hipGetProcAddress ( hipGetErrorString, 0x7f325803f328, 70125424, 0, 0x7f32526f8fbc ) 
:3:hip_device.cpp           :872 : 3134548779 us:  hipGetProcAddress: Returned hipSuccess : 
:3:hip_device.cpp           :871 : 3134548781 us:   hipGetProcAddress ( hipDrvLaunchKernelEx, 0x7f325803f330, 70125424, 0, 0x7f32526f8fbc ) 
:3:hip_device.cpp           :872 : 3134548783 us:  hipGetProcAddress: Returned hipSuccess : 
:3:hip_device.cpp           :871 : 3134548784 us:   hipGetProcAddress ( hipModuleLaunchKernel, 0x7f325803f338, 70125424, 0, 0x7f32526f8fbc ) 
:3:hip_device.cpp           :872 : 3134548786 us:  hipGetProcAddress: Returned hipSuccess : 
:3:hip_device.cpp           :871 : 3134548787 us:   hipGetProcAddress ( hipModuleLaunchCooperativeKernel, 0x7f325803f340, 70125424, 0, 0x7f32526f8fbc ) 
:3:hip_device.cpp           :872 : 3134548789 us:  hipGetProcAddress: Returned hipSuccess : 
:3:hip_device.cpp           :871 : 3134548790 us:   hipGetProcAddress ( hipPointerGetAttribute, 0x7f325803f348, 70125424, 0, 0x7f32526f8fbc ) 
:3:hip_device.cpp           :872 : 3134548793 us:  hipGetProcAddress: Returned hipSuccess : 
:3:hip_module.cpp           :59  : 3134548819 us:   hipModuleLoadDataEx ( 0x7f32526f93a8, 0x7f32411fccb0 ) 
:3:hip_module.cpp           :60  : 3134549755 us:  hipModuleLoadDataEx: Returned hipSuccess : 
:3:hip_module.cpp           :68  : 3134549761 us:   hipModuleGetFunction ( 0x7f32526f93b0, 0x7f3237c919c0, apply_rope_kernel ) 
:3:hip_module.cpp           :82  : 3134549765 us:  hipModuleGetFunction: Returned hipSuccess : 
:3:hip_module.cpp           :115 : 3134549768 us:   hipFuncGetAttribute ( 0x7f32526f8f30, HIP_FUNC_ATTRIBUTE_NUM_REGS, 0x7f3238b65220 ) 
:3:hip_module.cpp           :166 : 3134549770 us:  hipFuncGetAttribute: Returned hipSuccess : 
:3:hip_module.cpp           :115 : 3134549772 us:   hipFuncGetAttribute ( 0x7f32526f93bc, HIP_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES, 0x7f3238b65220 ) 
:3:hip_module.cpp           :166 : 3134549773 us:  hipFuncGetAttribute: Returned hipSuccess : 
:3:hip_module.cpp           :115 : 3134549774 us:   hipFuncGetAttribute ( 0x7f32526f93b8, HIP_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK, 0x7f3238b65220 ) 
:3:hip_module.cpp           :166 : 3134549776 us:  hipFuncGetAttribute: Returned hipSuccess : 
:3:hip_device_runtime.cpp   :687 : 3134549780 us:   hipGetDevice ( 0x7f32526f918c ) 
:3:hip_device_runtime.cpp   :699 : 3134549782 us:  hipGetDevice: Returned hipSuccess : 0
:3:hip_device.cpp           :689 : 3134549784 us:   hipGetDevicePropertiesR0600 ( 0x7f32526f89f0, 0 ) 
:3:hip_device.cpp           :691 : 3134549786 us:  hipGetDevicePropertiesR0600: Returned hipSuccess : 
:3:hip_memory.cpp           :3924: 3134549806 us:   hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c2833d000 ) 
:3:hip_memory.cpp           :3930: 3134549808 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3924: 3134549809 us:   hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f3189000000 ) 
:3:hip_memory.cpp           :3930: 3134549811 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3924: 3134549813 us:   hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c5b780000 ) 
:3:hip_memory.cpp           :3930: 3134549814 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3924: 3134549815 us:   hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c2b87a000 ) 
:3:hip_memory.cpp           :3930: 3134549816 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_memory.cpp           :3924: 3134549817 us:   hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c72a00000 ) 
:3:hip_memory.cpp           :3930: 3134549819 us:  hipPointerGetAttribute: Returned hipSuccess : 
:3:hip_module.cpp           :549 : 3134549823 us:   hipModuleLaunchKernel ( 0x7f3238b65220, 13629, 1, 1, 128, 1, 1, 0, char array:<null>, 0x7f32526f8c30, char array:<null> ) 
:3:rocvirtual.cpp           :3933: 3134549829 us:  ShaderName : apply_rope_kernel
:1:rocdevice.cpp            :3492: 3134553226 us:  Memory Fault Error
Memory access fault by GPU node-1 (Agent handle: 0x29379b90) on address 0x7f318a202000. Reason: Page not present or supervisor privilege.
Fatal Python error: Aborted
<!-- gh-comment-id:4917121080 --> @jnolck commented on GitHub (Jul 8, 2026): > Hi [@waltercool](https://github.com/waltercool), Since jnolck saw the crash on the apply_rope variant Krea2 uses, it looks like the CONVROT rope kernel isn't handling Krea2's INT8 layout quite right, maybe an off index or stride calculation. > > Try run with `AMD_SERIALIZE_KERNEL=3 AMD_LOG_LEVEL=3`. That forces a sync after each kernel launch, so the fault tends to get pinned on the kernel that actually triggered it rather than whatever shows up later. ``` [DEBUG] Backend triton selected for apply_rope :3:hip_device_runtime.cpp :687 : 3134546252 us: hipGetDevice ( 0x7f32526f8c3c ) :3:hip_device_runtime.cpp :699 : 3134546253 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546254 us: hipGetDevice ( 0x7f32526f8afc ) :3:hip_device_runtime.cpp :699 : 3134546255 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546256 us: hipGetDevice ( 0x7f32526f8d3c ) :3:hip_device_runtime.cpp :699 : 3134546256 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546258 us: hipGetDevice ( 0x7f32526f8e50 ) :3:hip_device_runtime.cpp :699 : 3134546259 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546260 us: hipGetDevice ( 0x7f32526f8f90 ) :3:hip_device_runtime.cpp :699 : 3134546261 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546268 us: hipGetDevice ( 0x7f32526f8c3c ) :3:hip_device_runtime.cpp :699 : 3134546269 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546271 us: hipGetDevice ( 0x7f32526f8afc ) :3:hip_device_runtime.cpp :699 : 3134546272 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546274 us: hipGetDevice ( 0x7f32526f8d3c ) :3:hip_device_runtime.cpp :699 : 3134546275 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546276 us: hipGetDevice ( 0x7f32526f8e50 ) :3:hip_device_runtime.cpp :699 : 3134546278 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546279 us: hipGetDevice ( 0x7f32526f8f90 ) :3:hip_device_runtime.cpp :699 : 3134546280 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134546286 us: hipGetDevice ( 0x7f32526f945c ) :3:hip_device_runtime.cpp :699 : 3134546286 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device_runtime.cpp :687 : 3134548405 us: hipGetDevice ( 0x7f32526f918c ) :3:hip_device_runtime.cpp :699 : 3134548410 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device.cpp :871 : 3134548769 us: hipGetProcAddress ( hipGetLastError, 0x7f325803f320, 70125424, 0, 0x7f32526f8fbc ) :3:hip_device.cpp :872 : 3134548774 us: hipGetProcAddress: Returned hipSuccess : :3:hip_device.cpp :871 : 3134548777 us: hipGetProcAddress ( hipGetErrorString, 0x7f325803f328, 70125424, 0, 0x7f32526f8fbc ) :3:hip_device.cpp :872 : 3134548779 us: hipGetProcAddress: Returned hipSuccess : :3:hip_device.cpp :871 : 3134548781 us: hipGetProcAddress ( hipDrvLaunchKernelEx, 0x7f325803f330, 70125424, 0, 0x7f32526f8fbc ) :3:hip_device.cpp :872 : 3134548783 us: hipGetProcAddress: Returned hipSuccess : :3:hip_device.cpp :871 : 3134548784 us: hipGetProcAddress ( hipModuleLaunchKernel, 0x7f325803f338, 70125424, 0, 0x7f32526f8fbc ) :3:hip_device.cpp :872 : 3134548786 us: hipGetProcAddress: Returned hipSuccess : :3:hip_device.cpp :871 : 3134548787 us: hipGetProcAddress ( hipModuleLaunchCooperativeKernel, 0x7f325803f340, 70125424, 0, 0x7f32526f8fbc ) :3:hip_device.cpp :872 : 3134548789 us: hipGetProcAddress: Returned hipSuccess : :3:hip_device.cpp :871 : 3134548790 us: hipGetProcAddress ( hipPointerGetAttribute, 0x7f325803f348, 70125424, 0, 0x7f32526f8fbc ) :3:hip_device.cpp :872 : 3134548793 us: hipGetProcAddress: Returned hipSuccess : :3:hip_module.cpp :59 : 3134548819 us: hipModuleLoadDataEx ( 0x7f32526f93a8, 0x7f32411fccb0 ) :3:hip_module.cpp :60 : 3134549755 us: hipModuleLoadDataEx: Returned hipSuccess : :3:hip_module.cpp :68 : 3134549761 us: hipModuleGetFunction ( 0x7f32526f93b0, 0x7f3237c919c0, apply_rope_kernel ) :3:hip_module.cpp :82 : 3134549765 us: hipModuleGetFunction: Returned hipSuccess : :3:hip_module.cpp :115 : 3134549768 us: hipFuncGetAttribute ( 0x7f32526f8f30, HIP_FUNC_ATTRIBUTE_NUM_REGS, 0x7f3238b65220 ) :3:hip_module.cpp :166 : 3134549770 us: hipFuncGetAttribute: Returned hipSuccess : :3:hip_module.cpp :115 : 3134549772 us: hipFuncGetAttribute ( 0x7f32526f93bc, HIP_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES, 0x7f3238b65220 ) :3:hip_module.cpp :166 : 3134549773 us: hipFuncGetAttribute: Returned hipSuccess : :3:hip_module.cpp :115 : 3134549774 us: hipFuncGetAttribute ( 0x7f32526f93b8, HIP_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK, 0x7f3238b65220 ) :3:hip_module.cpp :166 : 3134549776 us: hipFuncGetAttribute: Returned hipSuccess : :3:hip_device_runtime.cpp :687 : 3134549780 us: hipGetDevice ( 0x7f32526f918c ) :3:hip_device_runtime.cpp :699 : 3134549782 us: hipGetDevice: Returned hipSuccess : 0 :3:hip_device.cpp :689 : 3134549784 us: hipGetDevicePropertiesR0600 ( 0x7f32526f89f0, 0 ) :3:hip_device.cpp :691 : 3134549786 us: hipGetDevicePropertiesR0600: Returned hipSuccess : :3:hip_memory.cpp :3924: 3134549806 us: hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c2833d000 ) :3:hip_memory.cpp :3930: 3134549808 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3924: 3134549809 us: hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f3189000000 ) :3:hip_memory.cpp :3930: 3134549811 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3924: 3134549813 us: hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c5b780000 ) :3:hip_memory.cpp :3930: 3134549814 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3924: 3134549815 us: hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c2b87a000 ) :3:hip_memory.cpp :3930: 3134549816 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_memory.cpp :3924: 3134549817 us: hipPointerGetAttribute ( 0x7f32526f9200, 3, 0x7f2c72a00000 ) :3:hip_memory.cpp :3930: 3134549819 us: hipPointerGetAttribute: Returned hipSuccess : :3:hip_module.cpp :549 : 3134549823 us: hipModuleLaunchKernel ( 0x7f3238b65220, 13629, 1, 1, 128, 1, 1, 0, char array:<null>, 0x7f32526f8c30, char array:<null> ) :3:rocvirtual.cpp :3933: 3134549829 us: ShaderName : apply_rope_kernel :1:rocdevice.cpp :3492: 3134553226 us: Memory Fault Error Memory access fault by GPU node-1 (Agent handle: 0x29379b90) on address 0x7f318a202000. Reason: Page not present or supervisor privilege. Fatal Python error: Aborted ```
Author
Owner

@chejh-amd commented on GitHub (Jul 9, 2026):

Both your logs stop at ShaderName : apply_rope_kernel, so the fault is most likely that RoPE kernel. From what the AMD driver reports, it doesn't look like an out-of-memory issue. It looks more like something about the tensor shapes/layout Krea2 feeds into that kernel than the backend itself.

<!-- gh-comment-id:4921339302 --> @chejh-amd commented on GitHub (Jul 9, 2026): Both your logs stop at `ShaderName : apply_rope_kernel`, so the fault is most likely that RoPE kernel. From what the AMD driver reports, it doesn't look like an out-of-memory issue. It looks more like something about the tensor shapes/layout Krea2 feeds into that kernel than the backend itself.
Author
Owner

@0xDELUXA commented on GitHub (Jul 9, 2026):

@waltercool Can you try this custom node? On our end, it works better than the native implementation, which even comfyanonymous said isn't really ready for AMD yet.

<!-- gh-comment-id:4923445550 --> @0xDELUXA commented on GitHub (Jul 9, 2026): @waltercool Can you try [this](https://github.com/patientx/ComfyUI-INT8-Fast-ROCM) custom node? On our end, it works better than the native implementation, which even comfyanonymous said isn't really ready for AMD yet.
Author
Owner

@0xDELUXA commented on GitHub (Jul 9, 2026):

Disabling the Triton backend aparently works fine, just terribly slow, painfully slower than FP8.

Exactly. That's why I opened this PR. If you want, you can apply its changes locally.

<!-- gh-comment-id:4923466958 --> @0xDELUXA commented on GitHub (Jul 9, 2026): > > Disabling the Triton backend aparently works fine, just terribly slow, painfully slower than FP8. > Exactly. That's why I opened [this](https://github.com/Comfy-Org/comfy-kitchen/pull/56) PR. If you want, you can apply its changes locally.
Author
Owner

@waltercool commented on GitHub (Jul 9, 2026):

Disabling the Triton backend aparently works fine, just terribly slow, painfully slower than FP8.

Exactly. That's why I opened this PR. If you want, you can apply its changes locally.

This definitively fixes the eager INT8, yet still slower than FP8 and probably not related to your PR.

@waltercool Can you try this custom node? On our end, it works better than the native implementation, which even comfyanonymous said isn't really ready for AMD yet.

This works nice to me, considerably faster than Eager! Thank you!

Just a summary for anyone who read this, some quick benchmark generating a 1Mpx image:

Using eager FP8: ~60s
Using eager INT8 without patches: ~210s, probably 10-15 minutes if you have text generation with INT8 CONVROT clip.
Using eager INT8 with patches: ~67s
Using ComfyUI-INT8-Fast-ROCM custom node: ~49s
Using triton: CRASHES
Using triton with fp8 scaled: ALSO CRASHES

Worth to mention: Using eager INT8 without patches, it creates some input lag in the host machine.

<!-- gh-comment-id:4926760795 --> @waltercool commented on GitHub (Jul 9, 2026): > > Disabling the Triton backend aparently works fine, just terribly slow, painfully slower than FP8. > > Exactly. That's why I opened [this](https://github.com/Comfy-Org/comfy-kitchen/pull/56) PR. If you want, you can apply its changes locally. This definitively fixes the eager INT8, yet still slower than FP8 and probably not related to your PR. > [@waltercool](https://github.com/waltercool) Can you try [this](https://github.com/patientx/ComfyUI-INT8-Fast-ROCM) custom node? On our end, it works better than the native implementation, which even comfyanonymous said isn't really ready for AMD yet. This works nice to me, considerably faster than Eager! Thank you! Just a summary for anyone who read this, some quick benchmark generating a 1Mpx image: Using eager FP8: ~60s Using eager INT8 without patches: ~210s, probably 10-15 minutes if you have text generation with INT8 CONVROT clip. Using eager INT8 with patches: ~67s Using ComfyUI-INT8-Fast-ROCM custom node: ~49s Using triton: **CRASHES** Using triton with fp8 scaled: **ALSO CRASHES** Worth to mention: Using eager INT8 without patches, it creates some input lag in the host machine.
Author
Owner

@bitgamma commented on GitHub (Jul 10, 2026):

doesn't seem to depend on INT8, I have the same issue with BF16 version of Krea 2 and Triton backend and nightly ROCm 7.15:

python[6851]: VGPU=0x7f945799ed70 SWq=0x7f98169fe000, HWq=0x7f8fae200000, id=1
python[6851]:         Dispatch Header =0xb02 (type=2, barrier=1, acquire=1, release=1), setup=3
python[6851]:         grid=[1281408, 1, 1], workgroup=[128, 1, 1]
python[6851]:         private_seg_size=0, group_seg_size=0
python[6851]:         kernel_obj=0x7f94b4cf8840, kernarg_address=0x0x7f8fac815900
python[6851]:         completion_signal=0x0
python[6851]:         rptr=2683, wptr=2686
python[6851]: :0:rocdevice.cpp            :3781: 3499983558 us:  Memory Fault Error [GPU index: 0, faulting addr: 0x7f8b2d60c000, kernel: apply_rope_kernel]
python[6851]: Memory access fault by GPU node-1 (Agent handle: 0x39784290) on address 0x7f8b2d60c000. Reason: Page not present or supervisor privilege.
python[6851]: Failed to write segment data to pipe: Bad address
python[6851]: GPU coredump: handler exited with error (status: 1)
python[6851]: GPU core dump failed
<!-- gh-comment-id:4932292224 --> @bitgamma commented on GitHub (Jul 10, 2026): doesn't seem to depend on INT8, I have the same issue with BF16 version of Krea 2 and Triton backend and nightly ROCm 7.15: ``` python[6851]: VGPU=0x7f945799ed70 SWq=0x7f98169fe000, HWq=0x7f8fae200000, id=1 python[6851]: Dispatch Header =0xb02 (type=2, barrier=1, acquire=1, release=1), setup=3 python[6851]: grid=[1281408, 1, 1], workgroup=[128, 1, 1] python[6851]: private_seg_size=0, group_seg_size=0 python[6851]: kernel_obj=0x7f94b4cf8840, kernarg_address=0x0x7f8fac815900 python[6851]: completion_signal=0x0 python[6851]: rptr=2683, wptr=2686 python[6851]: :0:rocdevice.cpp :3781: 3499983558 us: Memory Fault Error [GPU index: 0, faulting addr: 0x7f8b2d60c000, kernel: apply_rope_kernel] python[6851]: Memory access fault by GPU node-1 (Agent handle: 0x39784290) on address 0x7f8b2d60c000. Reason: Page not present or supervisor privilege. python[6851]: Failed to write segment data to pipe: Bad address python[6851]: GPU coredump: handler exited with error (status: 1) python[6851]: GPU core dump failed ```
Author
Owner

@sleppyrobot commented on GitHub (Jul 18, 2026):

Both your logs stop at ShaderName : apply_rope_kernel, so the fault is most likely that RoPE kernel. From what the AMD driver reports, it doesn't look like an out-of-memory issue. It looks more like something about the tensor shapes/layout Krea2 feeds into that kernel than the backend itself.

#77 Fyi

<!-- gh-comment-id:5013031906 --> @sleppyrobot commented on GitHub (Jul 18, 2026): > Both your logs stop at `ShaderName : apply_rope_kernel`, so the fault is most likely that RoPE kernel. From what the AMD driver reports, it doesn't look like an out-of-memory issue. It looks more like something about the tensor shapes/layout Krea2 feeds into that kernel than the backend itself. #77 Fyi
Author
Owner

@waltercool commented on GitHub (Jul 18, 2026):

Both your logs stop at ShaderName : apply_rope_kernel, so the fault is most likely that RoPE kernel. From what the AMD driver reports, it doesn't look like an out-of-memory issue. It looks more like something about the tensor shapes/layout Krea2 feeds into that kernel than the backend itself.

#77 Fyi

Thank you, this apparently works fine on my local using latest ComfyUI. I would need to do few other tests, but no problems detected so far.

<!-- gh-comment-id:5013180312 --> @waltercool commented on GitHub (Jul 18, 2026): > > Both your logs stop at `ShaderName : apply_rope_kernel`, so the fault is most likely that RoPE kernel. From what the AMD driver reports, it doesn't look like an out-of-memory issue. It looks more like something about the tensor shapes/layout Krea2 feeds into that kernel than the backend itself. > > [#77](https://github.com/Comfy-Org/comfy-kitchen/pull/77) Fyi Thank you, this apparently works fine on my local using latest ComfyUI. I would need to do few other tests, but no problems detected so far.
Author
Owner

@0xDELUXA commented on GitHub (Aug 11, 2026):

Triton is only a fallback now, use HIP instead.

<!-- gh-comment-id:5255260803 --> @0xDELUXA commented on GitHub (Aug 11, 2026): Triton is only a fallback now, use HIP instead.
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Comfy-Org/comfy-kitchen#24
No description provided.