Kernels:
Trusted publisher
Commit ·
8a198c5
1
Parent(s): b81254e
Uploaded using `kernel-builder`. (#4)
Browse files- Uploaded using `kernel-builder`. (9d05c96f80541b3320b2c8462fe4ff5cd8561dd3)
Co-authored-by: Kernels Bot <kernels-bot@users.noreply.huggingface.co>
README.md
CHANGED
|
@@ -3,7 +3,7 @@ library_name: kernels
|
|
| 3 |
license: mit
|
| 4 |
---
|
| 5 |
|
| 6 |
-
This is the repository card of
|
| 7 |
|
| 8 |
## How to use
|
| 9 |
|
|
@@ -11,7 +11,7 @@ This is the repository card of kernels-community/aiter-flash-attn that has been
|
|
| 11 |
# make sure `kernels` is installed: `pip install -U kernels`
|
| 12 |
from kernels import get_kernel
|
| 13 |
|
| 14 |
-
kernel_module = get_kernel("
|
| 15 |
flash_attn_func = kernel_module.flash_attn_func
|
| 16 |
|
| 17 |
flash_attn_func(...)
|
|
|
|
| 3 |
license: mit
|
| 4 |
---
|
| 5 |
|
| 6 |
+
This is the repository card of amd/aiter-flash-attn that has been pushed on the Hub. It was built to be used with the [`kernels` library](https://github.com/huggingface/kernels). This card was automatically generated.
|
| 7 |
|
| 8 |
## How to use
|
| 9 |
|
|
|
|
| 11 |
# make sure `kernels` is installed: `pip install -U kernels`
|
| 12 |
from kernels import get_kernel
|
| 13 |
|
| 14 |
+
kernel_module = get_kernel("amd/aiter-flash-attn", version=2)
|
| 15 |
flash_attn_func = kernel_module.flash_attn_func
|
| 16 |
|
| 17 |
flash_attn_func(...)
|
build/torch-rocm/_kernels/flash_attn_triton_amd/bwd.py
CHANGED
|
@@ -16,7 +16,7 @@ from .utils import (
|
|
| 16 |
|
| 17 |
PREPROCESS_AUTOTUNE_KEYS = [
|
| 18 |
"max_seqlen_q",
|
| 19 |
-
"
|
| 20 |
"IS_VARLEN",
|
| 21 |
]
|
| 22 |
|
|
@@ -24,7 +24,8 @@ CAUSAL_AUTOTUNE_KEYS = [
|
|
| 24 |
"dropout_p",
|
| 25 |
"max_seqlen_q",
|
| 26 |
"max_seqlen_k",
|
| 27 |
-
"
|
|
|
|
| 28 |
"IS_VARLEN",
|
| 29 |
"HQ",
|
| 30 |
"HK",
|
|
@@ -34,7 +35,8 @@ NONCAUSAL_AUTOTUNE_KEYS = [
|
|
| 34 |
"dropout_p",
|
| 35 |
"max_seqlen_q",
|
| 36 |
"max_seqlen_k",
|
| 37 |
-
"
|
|
|
|
| 38 |
"IS_VARLEN",
|
| 39 |
"HQ",
|
| 40 |
"HK",
|
|
|
|
| 16 |
|
| 17 |
PREPROCESS_AUTOTUNE_KEYS = [
|
| 18 |
"max_seqlen_q",
|
| 19 |
+
"ACTUAL_HEAD_DIM_V",
|
| 20 |
"IS_VARLEN",
|
| 21 |
]
|
| 22 |
|
|
|
|
| 24 |
"dropout_p",
|
| 25 |
"max_seqlen_q",
|
| 26 |
"max_seqlen_k",
|
| 27 |
+
"ACTUAL_HEAD_DIM_QK",
|
| 28 |
+
"ACTUAL_HEAD_DIM_V",
|
| 29 |
"IS_VARLEN",
|
| 30 |
"HQ",
|
| 31 |
"HK",
|
|
|
|
| 35 |
"dropout_p",
|
| 36 |
"max_seqlen_q",
|
| 37 |
"max_seqlen_k",
|
| 38 |
+
"ACTUAL_HEAD_DIM_QK",
|
| 39 |
+
"ACTUAL_HEAD_DIM_V",
|
| 40 |
"IS_VARLEN",
|
| 41 |
"HQ",
|
| 42 |
"HK",
|
build/torch-rocm/_ops.py
CHANGED
|
@@ -25,7 +25,7 @@ def get_backend() -> str:
|
|
| 25 |
|
| 26 |
def _find_ops_name() -> str:
|
| 27 |
kernel_name = "aiter_flash_attn"
|
| 28 |
-
unique_id = "
|
| 29 |
backend = get_backend()
|
| 30 |
return f"_{kernel_name}_{backend}_{unique_id}"
|
| 31 |
|
|
|
|
| 25 |
|
| 26 |
def _find_ops_name() -> str:
|
| 27 |
kernel_name = "aiter_flash_attn"
|
| 28 |
+
unique_id = "28ece72"
|
| 29 |
backend = get_backend()
|
| 30 |
return f"_{kernel_name}_{backend}_{unique_id}"
|
| 31 |
|
build/torch-rocm/configs/gfx1201-MHA-DEFAULT.json
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"fwd": {
|
| 3 |
+
"dropout_or_fp32": {
|
| 4 |
+
"BLOCK_M": 32,
|
| 5 |
+
"BLOCK_N": 32,
|
| 6 |
+
"PRELOAD_V": false,
|
| 7 |
+
"waves_per_eu": 1,
|
| 8 |
+
"num_warps": 2,
|
| 9 |
+
"num_ctas": 1,
|
| 10 |
+
"num_stages": 1
|
| 11 |
+
},
|
| 12 |
+
"default": {
|
| 13 |
+
"BLOCK_M": 64,
|
| 14 |
+
"BLOCK_N": 32,
|
| 15 |
+
"PRELOAD_V": false,
|
| 16 |
+
"waves_per_eu": 1,
|
| 17 |
+
"num_warps": 4,
|
| 18 |
+
"num_ctas": 1,
|
| 19 |
+
"num_stages": 2
|
| 20 |
+
},
|
| 21 |
+
"pe": {
|
| 22 |
+
"BLOCK_M": 256,
|
| 23 |
+
"BLOCK_N": 64,
|
| 24 |
+
"PRELOAD_V": true,
|
| 25 |
+
"waves_per_eu": 1,
|
| 26 |
+
"num_warps": 8,
|
| 27 |
+
"num_ctas": 1,
|
| 28 |
+
"num_stages": 1
|
| 29 |
+
},
|
| 30 |
+
"pe_dropout_or_fp32": {
|
| 31 |
+
"BLOCK_M": 256,
|
| 32 |
+
"BLOCK_N": 64,
|
| 33 |
+
"PRELOAD_V": true,
|
| 34 |
+
"waves_per_eu": 1,
|
| 35 |
+
"num_warps": 8,
|
| 36 |
+
"num_ctas": 1,
|
| 37 |
+
"num_stages": 1
|
| 38 |
+
}
|
| 39 |
+
},
|
| 40 |
+
"bkwd_fused" : {
|
| 41 |
+
"preprocess_kernel": {
|
| 42 |
+
"PRE_BLOCK": 128
|
| 43 |
+
},
|
| 44 |
+
"dkdvdq_kernel_N64" : {
|
| 45 |
+
"BLOCK_M": 16,
|
| 46 |
+
"BLOCK_N": 64,
|
| 47 |
+
"num_warps": 8,
|
| 48 |
+
"num_stages": 1,
|
| 49 |
+
"waves_per_eu": 2,
|
| 50 |
+
"BLK_SLICE_FACTOR": 1,
|
| 51 |
+
"matrix_instr_nonkdim": 16
|
| 52 |
+
},
|
| 53 |
+
"dkdvdq_kernel_N128" : {
|
| 54 |
+
"BLOCK_M": 16,
|
| 55 |
+
"BLOCK_N": 128,
|
| 56 |
+
"num_warps": 8,
|
| 57 |
+
"num_stages": 1,
|
| 58 |
+
"waves_per_eu": 2,
|
| 59 |
+
"BLK_SLICE_FACTOR": 1,
|
| 60 |
+
"matrix_instr_nonkdim": 16
|
| 61 |
+
}
|
| 62 |
+
},
|
| 63 |
+
"bkwd_onekernel" : {
|
| 64 |
+
"preprocess_kernel": {
|
| 65 |
+
"PRE_BLOCK": 128
|
| 66 |
+
},
|
| 67 |
+
"onekernel" : {
|
| 68 |
+
"BLOCK_M1": 32,
|
| 69 |
+
"BLOCK_N1": 128,
|
| 70 |
+
"BLOCK_M2": 128,
|
| 71 |
+
"BLOCK_N2": 32,
|
| 72 |
+
"BLK_SLICE_FACTOR": 2,
|
| 73 |
+
"waves_per_eu": 1,
|
| 74 |
+
"matrix_instr_nonkdim": 16,
|
| 75 |
+
"num_warps": 4,
|
| 76 |
+
"num_ctas": 1,
|
| 77 |
+
"num_stages": 1
|
| 78 |
+
},
|
| 79 |
+
"onekernel_pe" : {
|
| 80 |
+
"BLOCK_M1": 32,
|
| 81 |
+
"BLOCK_N1": 64,
|
| 82 |
+
"BLOCK_M2": 128,
|
| 83 |
+
"BLOCK_N2": 32,
|
| 84 |
+
"BLK_SLICE_FACTOR": 2,
|
| 85 |
+
"waves_per_eu": 0,
|
| 86 |
+
"matrix_instr_nonkdim": 16,
|
| 87 |
+
"num_warps": 4,
|
| 88 |
+
"num_ctas": 1,
|
| 89 |
+
"num_stages": 2
|
| 90 |
+
}
|
| 91 |
+
}
|
| 92 |
+
}
|
build/torch-rocm/metadata.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
{
|
| 2 |
"name": "aiter-flash-attn",
|
| 3 |
-
"id": "
|
| 4 |
"version": 2,
|
| 5 |
"kernels-minver": "0.14.0",
|
| 6 |
"license": "MIT",
|
|
@@ -15,7 +15,7 @@
|
|
| 15 |
"__init__.py": "V8KdHVvK1+C2G2Ji5P8jHcFXRJcFb6I+OvrP0qHheD4=",
|
| 16 |
"_kernels/__init__.py": "47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=",
|
| 17 |
"_kernels/flash_attn_triton_amd/__init__.py": "j/n4XyqMKr0Xcl2QVHY+/ZRLW9CT46EsHblfZfZRW8E=",
|
| 18 |
-
"_kernels/flash_attn_triton_amd/bwd.py": "
|
| 19 |
"_kernels/flash_attn_triton_amd/common.py": "Za22tFtoBkGxRqpEBvIexRBlNsVdPxMeL8WnRD3ZRXw=",
|
| 20 |
"_kernels/flash_attn_triton_amd/fwd_decode.py": "8F/WwZpTCyFdy6ITf0Pe+HzUxnI4UmXt3c53RT5p34w=",
|
| 21 |
"_kernels/flash_attn_triton_amd/fwd_prefill.py": "G1InUnNUtHevT2YInshAlAiEEyloDTJQqqsWxsLMkX0=",
|
|
@@ -25,16 +25,17 @@
|
|
| 25 |
"_kernels/mha.py": "aXpxPRtrBPAPc9MXFPIMhZnGYddcd1+MlfrtrOBaKWQ=",
|
| 26 |
"_kernels/mha_fused_bwd.py": "eXvVWoS0ysazZttrPfoDA14hDcL9zcjlpwyLVbeVxeU=",
|
| 27 |
"_kernels/mha_onekernel_bwd.py": "DOWu0L/MqMNwGpHoBlObMtcnx+txk7juFlPF3FZ8U4I=",
|
| 28 |
-
"_ops.py": "
|
| 29 |
"configs/gfx1150-MHA-DEFAULT.json": "fY8XJia4+bo/qBUZhODLcWdN8ic+0n0ZUWmxAbcdxjk=",
|
| 30 |
"configs/gfx1151-MHA-DEFAULT.json": "fY8XJia4+bo/qBUZhODLcWdN8ic+0n0ZUWmxAbcdxjk=",
|
|
|
|
| 31 |
"configs/gfx1250-MHA-DEFAULT.json": "MC9NGs+jRZ0ppvwjszTaoc6YYMsaHKdXiP1K/cUZTSg=",
|
| 32 |
"configs/gfx942-MHA-DEFAULT.json": "ERnzTFpq0PeXcT4/5sONe3/mSxWPvN+946vhnlMs6Wo=",
|
| 33 |
"configs/gfx950-MHA-DEFAULT.json": "MC9NGs+jRZ0ppvwjszTaoc6YYMsaHKdXiP1K/cUZTSg=",
|
| 34 |
"mha.py": "tdH71c+PZ0vWTC6N5C79i0BzcmdUz3s6f2JuRhrrDSM=",
|
| 35 |
"mha_fused_bwd.py": "80rk+DlUC52j/c1hHym8xryXll/xGUtaYxn29YgCSRs=",
|
| 36 |
"mha_onekernel_bwd.py": "OsmmrfXuYtr/dwyZkC0beRZ+UM59lOoDQBQH4knQrGg=",
|
| 37 |
-
"symbols.json": "
|
| 38 |
"utils/__init__.py": "47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=",
|
| 39 |
"utils/_triton/__init__.py": "47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=",
|
| 40 |
"utils/_triton/arch_info.py": "D6l6BbeGTMMp48tMcti9Q2mLFsXBnbwoYeoMVyGyy6w=",
|
|
@@ -50,11 +51,11 @@
|
|
| 50 |
"provenance": {
|
| 51 |
"kernel-builder": {
|
| 52 |
"version": "0.18.0-dev0",
|
| 53 |
-
"commit": "
|
| 54 |
"dirty": false
|
| 55 |
},
|
| 56 |
"kernel": {
|
| 57 |
-
"commit": "
|
| 58 |
"dirty": false
|
| 59 |
}
|
| 60 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"name": "aiter-flash-attn",
|
| 3 |
+
"id": "_aiter_flash_attn_rocm_28ece72",
|
| 4 |
"version": 2,
|
| 5 |
"kernels-minver": "0.14.0",
|
| 6 |
"license": "MIT",
|
|
|
|
| 15 |
"__init__.py": "V8KdHVvK1+C2G2Ji5P8jHcFXRJcFb6I+OvrP0qHheD4=",
|
| 16 |
"_kernels/__init__.py": "47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=",
|
| 17 |
"_kernels/flash_attn_triton_amd/__init__.py": "j/n4XyqMKr0Xcl2QVHY+/ZRLW9CT46EsHblfZfZRW8E=",
|
| 18 |
+
"_kernels/flash_attn_triton_amd/bwd.py": "lGsltjiLtKO4vRMUmv5IzUWw2CPi+uG7AfTKVuGqI3w=",
|
| 19 |
"_kernels/flash_attn_triton_amd/common.py": "Za22tFtoBkGxRqpEBvIexRBlNsVdPxMeL8WnRD3ZRXw=",
|
| 20 |
"_kernels/flash_attn_triton_amd/fwd_decode.py": "8F/WwZpTCyFdy6ITf0Pe+HzUxnI4UmXt3c53RT5p34w=",
|
| 21 |
"_kernels/flash_attn_triton_amd/fwd_prefill.py": "G1InUnNUtHevT2YInshAlAiEEyloDTJQqqsWxsLMkX0=",
|
|
|
|
| 25 |
"_kernels/mha.py": "aXpxPRtrBPAPc9MXFPIMhZnGYddcd1+MlfrtrOBaKWQ=",
|
| 26 |
"_kernels/mha_fused_bwd.py": "eXvVWoS0ysazZttrPfoDA14hDcL9zcjlpwyLVbeVxeU=",
|
| 27 |
"_kernels/mha_onekernel_bwd.py": "DOWu0L/MqMNwGpHoBlObMtcnx+txk7juFlPF3FZ8U4I=",
|
| 28 |
+
"_ops.py": "87pQRA8Sjp0kwF9VUEzPFO5I3OYcXObxLgmMMal0uxs=",
|
| 29 |
"configs/gfx1150-MHA-DEFAULT.json": "fY8XJia4+bo/qBUZhODLcWdN8ic+0n0ZUWmxAbcdxjk=",
|
| 30 |
"configs/gfx1151-MHA-DEFAULT.json": "fY8XJia4+bo/qBUZhODLcWdN8ic+0n0ZUWmxAbcdxjk=",
|
| 31 |
+
"configs/gfx1201-MHA-DEFAULT.json": "fY8XJia4+bo/qBUZhODLcWdN8ic+0n0ZUWmxAbcdxjk=",
|
| 32 |
"configs/gfx1250-MHA-DEFAULT.json": "MC9NGs+jRZ0ppvwjszTaoc6YYMsaHKdXiP1K/cUZTSg=",
|
| 33 |
"configs/gfx942-MHA-DEFAULT.json": "ERnzTFpq0PeXcT4/5sONe3/mSxWPvN+946vhnlMs6Wo=",
|
| 34 |
"configs/gfx950-MHA-DEFAULT.json": "MC9NGs+jRZ0ppvwjszTaoc6YYMsaHKdXiP1K/cUZTSg=",
|
| 35 |
"mha.py": "tdH71c+PZ0vWTC6N5C79i0BzcmdUz3s6f2JuRhrrDSM=",
|
| 36 |
"mha_fused_bwd.py": "80rk+DlUC52j/c1hHym8xryXll/xGUtaYxn29YgCSRs=",
|
| 37 |
"mha_onekernel_bwd.py": "OsmmrfXuYtr/dwyZkC0beRZ+UM59lOoDQBQH4knQrGg=",
|
| 38 |
+
"symbols.json": "+7FpkGvOQDqKASMvzUr/3A5E2RDkYtO4PYR7jHuAnZ4=",
|
| 39 |
"utils/__init__.py": "47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=",
|
| 40 |
"utils/_triton/__init__.py": "47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=",
|
| 41 |
"utils/_triton/arch_info.py": "D6l6BbeGTMMp48tMcti9Q2mLFsXBnbwoYeoMVyGyy6w=",
|
|
|
|
| 51 |
"provenance": {
|
| 52 |
"kernel-builder": {
|
| 53 |
"version": "0.18.0-dev0",
|
| 54 |
+
"commit": "21bdf69d97a289b9c581a0c60f63deed131647d5",
|
| 55 |
"dirty": false
|
| 56 |
},
|
| 57 |
"kernel": {
|
| 58 |
+
"commit": "28ece728d3e7d8487ffa2fd6e3858acf4eea738a",
|
| 59 |
"dirty": false
|
| 60 |
}
|
| 61 |
}
|
build/torch-rocm/metadata.json.sigstore
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHLjCCBrOgAwIBAgIUJWsyFXgtGTum1jCoM+qwyeLFZfowCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDE5MTA0ODM3WhcNMjYxMDE5MTA1ODM3WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiF/IG2aUt17JyYcVltdxxj2/MKFOUqp/4VPhae+URdfx0jbACaiPr5y51PNJbXr3KJzu8cdECO/eGLRkbXgFQqOCBdIwggXOMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzBrBgNVHREBAf8EYTBfhl1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOQYKKwYBBAGDvzABAQQraHR0cHM6Ly90b2tlbi5hY3Rpb25zLmdpdGh1YnVzZXJjb250ZW50LmNvbTAfBgorBgEEAYO/MAECBBF3b3JrZmxvd19kaXNwYXRjaDA2BgorBgEEAYO/MAEDBChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBMGCisGAQQBg78wAQQEBUJ1aWxkMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wbQYKKwYBBAGDvzABCQRfDF1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABCgQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBsGCisGAQQBg78wAQsEDQwLc2VsZi1ob3N0ZWQwQAYKKwYBBAGDvzABDAQyDDBodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkwOAYKKwYBBAGDvzABDQQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTA3MTQ3NTUyOTAuBgorBgEEAYO/MAEQBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZTAYBgorBgEEAYO/MAERBAoMCDI1NzIwNzQzMG0GCisGAQQBg78wARIEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wARMEKgwoZmUyYmI2NmZlZTZjMmE3N2VjY2YwOGEwNTA4ZGM1NzQyOGQ0ODhlZDAhBgorBgEEAYO/MAEUBBMMEXdvcmtmbG93X2Rpc3BhdGNoMGQGCisGAQQBg78wARUEVgxUaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5L2FjdGlvbnMvcnVucy8zOTIzOTUxNTg0Ni9hdHRlbXB0cy8xMBYGCisGAQQBg78wARYECAwGcHVibGljMEYGCisGAQQBg78wARgEOAw2cmVwbzpodWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTpyZWY6cmVmcy9oZWFkcy9tYWluMIGLBgorBgEEAdZ5AgQCBH0EewB5AHcA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhU8cRkwAABAMASDBGAiEAhPiJtXTbgwZ3kTPB2XYt/4GObIBvmpfa/DoepXzTMv8CIQCCy+kUKXY7nj73wwZCV/Hcu8pxw4cy+Nbuno3H6Wha3zAKBggqhkjOPQQDAwNpADBmAjEAjqse6SOc76I43umXU189z4/baQrArLtgHO4AvEKBDis85c/28ILrcjtY0mO1f5ryAjEA00Lm/xEIIzm062ov2uftDANARz0lfxUD7oLzBdu2i3fqRFDjcrduz7X496upjPjk"}, "tlogEntries":[{"logIndex":"3320074406", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1792406917", "inclusionPromise":{"signedEntryTimestamp":"MEUCIDfSrH0FRCsIC+joyQutYYyw9s4lUlv58BgbC/29c86PAiEAssx8dbswJJogyvdVslajKx6nqSbRS3wqs6kEkzejde0="}, "inclusionProof":{"logIndex":"3198170144", "rootHash":"Vha5rq1D9Jz6Xv8FOOFyhNT3vcCh/AqExWrCe4FBieQ=", "treeSize":"3198170146", "hashes":["Matvyag7DH2WGQ6WFMMlv/9vuXy4hobd/skKibGSOb0=", "0di0ysUN2b+Bzh4Y77CvYDauBByrlZY8Vw+YYPgTCDw=", "t+bF13oghnNWhvEPGWuJ3GSrAemcb6NyXdUgMQmd0nw=", "mYRxiYQkcP1L/Cwy4/s9+bVzbz3agcsV0/KsBJ6KeSc=", "XlZq0Tam0QY4z03gfNKdAZXwc+5eKuOO3j+1aAzrwW8=", "uCZQe757l2sS1c05Y7TzOwEm+X8MeGLIUCkEOmFVOz4=", "nyQV/+cWQUG5Hb2PKjQQNkQIJmz2qzAZKBQlkHGIknM=", "G+nk7mgE5h6dUmv2UY7NDJrY3WvrZY31raaO1AETt+o=", "qlTWNDzERnTBQVcHHXXVPjiUP0SsikGxfcxVlgqVFDo=", "gg9GNApNke3+zNhl4tsWtmIycCFrOMCB3lys6XuSQNQ=", "NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=", "qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3198170146\nVha5rq1D9Jz6Xv8FOOFyhNT3vcCh/AqExWrCe4FBieQ=\n\n— rekor.sigstore.dev wNI9ajBFAiEAoJot0hekMaCkao8YZTH/fGZ9z4RpLSCu4iFhzCXfmjYCIFrSY1zqqw39mhAHU7350rQkeBnDXG3dBXX9QtFZ23gw\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJiMjc4MzQxZDAzMmU0MmFiZTBkNmJhNWM2MjdlYzY3OWZhYTgxZDNjMGFhMzEwN2VhNTliYmU0MjE4MzAxZDk0In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJR3cxOGxaTmc2VzhadStDeCtiakpsWE5wbW0reTk4NXRlazhZL21nY3VqS0FpQnRWa0hvUExFRllFb1YwdVVNV0liT3RCYzg4bU5aSnp6UlBuWkhoMGxrY1E9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaE1ha05EUW5KUFowRjNTVUpCWjBsVlNsZHplVVpZWjNSSFZIVnRNV3BEYjAwcmNYZDVaVXhHV21admQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRWTlZFRXdUMFJOTTFkb1kwNU5hbGw0VFVSRk5VMVVRVEZQUkUwelYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZwUmk5SlJ6SmhWWFF4TjBwNVdXTldiSFJrZUhocU1pOU5TMFpQVlhGd0x6UldVR2dLWVdVclZWSmtabmd3YW1KQlEyRnBVSEkxZVRVeFVFNUtZbGh5TTB0S2VuVTRZMlJGUTA4dlpVZE1VbXRpV0dkR1VYRlBRMEprU1hkbloxaFBUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmh0V2xSS2FRcFphbGt5V20xV2JFNXRUWGxaVkdNeldsZE9hbHBxUVRSWlZFRXhUVVJvYTFsNlZUTk9SRWswV2tSUk5FOUhWbXROUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEYUcxYVZFcHBXV3BaTWxwdFZteE9iVTE1Q2xsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEYUcxYVZFcHBDbGxxV1RKYWJWWnNUbTFOZVZsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlhYlZWNVdXMUpNazV0V214YVZGcHFUVzFGTTA0eVZtcFpNbGwzVDBkRmQwNVVRVFJhUjAweFRucFJlVTlIVVRBS1QwUm9iRnBFUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRoNlQxUkplazlVVlhoT1ZHY3dUbWs1YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkTUNrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NEQkZaWGRDTlVGSVkwRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvVlRoalVtdDNRVUZDUVUxQlUwUkNSMEZwUlVGb1VHbEtkRmhVWW1kM1dqTnJWRkJDTWxoWmRDODBSMDlpU1VKMmJYQm1ZUW92Ukc5bGNGaDZWRTEyT0VOSlVVTkRlU3RyVlV0WVdUZHVhamN6ZDNkYVExWXZTR04xT0hCNGR6UmplU3RPWW5WdWJ6TklObGRvWVRONlFVdENaMmR4Q21ocmFrOVFVVkZFUVhkT2NFRkVRbTFCYWtWQmFuRnpaVFpUVDJNM05razBNM1Z0V0ZVeE9EbDZOQzlpWVZGeVFYSk1kR2RJVHpSQmRrVkxRa1JwY3pnS05XTXZNamhKVEhKamFuUlpNRzFQTVdZMWNubEJha1ZCTURCTWJTOTRSVWxKZW0wd05qSnZkakoxWm5SRVFVNUJVbm93YkdaNFZVUTNiMHg2UW1SMU1ncHBNMlp4VWtaRWFtTnlaSFY2TjFnME9UWjFjR3BRYW1zS0xTMHRMUzFGVGtRZ1EwVlNWRWxHU1VOQlZFVXRMUzB0TFFvPSJ9fX19"}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyTADAgEAMIICwAYJKoZIhvcNAQcCoIICsTCCAq0CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgKtKAo/mMLupVMIYsI96/u7Lz+3xTEuLJa6p6OqQ+vxsCFQDHTmw6DC3/Xua1KtiUttY21Wc1exgPMjAyNjEwMTkxMDQ4MzdaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHaMIIB1gIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MTAxOTEwNDgzN1owLwYJKoZIhvcNAQkEMSIEIFDWIZN/RpbymUHmwzM1GKiQmOuihYAPeMR404MNuVmsMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRmMGQCMA2sgm9HGEHaYW3uNdV4ix9n3Yc9t0lVd/wml/ucfkvgXI+9Lc0W6Q/eQR6TKhvrmAIwOaRvYsGfyNZn79DsGX+lVvJd4MrFAxasncGhXer6cM1nL+XkE8LRECiGkc4f+W/9"}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"sng0HQMuQqvg1rpcYn7GefqoHTwKoxB+pZu+QhgwHZQ="}, "signature":"MEQCIGw18lZNg6W8Zu+Cx+bjJlXNpmm+y985tek8Y/mgcujKAiBtVkHoPLEFYEoV0uUMWIbOtBc88mNZJzzRPnZHh0lkcQ=="}}
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"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"}, "tlogEntries":[{"logIndex":"3638581432", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1793619156", "inclusionPromise":{"signedEntryTimestamp":"MEYCIQDIK0KbAmOlqZQrGt6r5zM25G0shGNFnLE1n9ksYKdNqAIhAPLQ92sBlIPR7X7oJA6RI2i5PMmg/4Da8HSo6GbuSW7T"}, "inclusionProof":{"logIndex":"3516677170", "rootHash":"JtGruGaJvwlxy0lB0synSgJb7LQ7BRNHTq4uijKJFVQ=", "treeSize":"3516677174", "hashes":["WAWuR/+yi3BJlSrpfygwAml7MqCV0oaqOWHXcdMJYxk=", "V6DOTfXbofel3y5m/HNqk1KNa0fsyvT18Z1Sci8dM54=", "bElvhMtgMtwJChE29kyN+yXwycCzcogcl7Tt4111dRI=", "glSIVzOyY8aMeNQMCOE4g9HDoHpv3TpIqfBZFhtKMsk=", "qfUDFEgyzLwzMlaYEzRO8YdDhXZPsJC153k5l8JZF+s=", "KHwJ1ch9atqbrDxGHAObiistbrt4VCvORNAYMNJ09C0=", "BFb7pNRFfhI8YmKAPxws+1yytMtobnE5A8q+qDUt6Y4=", "gRSBsVU0qluQ+oII/dFJwtjvv1oikpH7QmW0XnKGDpc=", "BoylumL0+mc1UAwcEPwrkTDVmK2cReUm+0yyRVhvohY=", "5fomOCw8ZOzVAOeT4Pt/XRoo4ESkxgvnEolWxtHfuzc=", "V7ifadlaqnTlbL36KI5czSPIBpu5VMtH9MyHxr8m8+w=", "cxOigdDyuoqMFc3dViAq5CqqxOls/WYXDKjkWAIf9Oo=", "kHcUORrepRYa69fXW0ah2TY6yxBlBHQa6jPoxpZbXoI=", "qixS5QEJ+sBY3AUsB2OWXXTOKVDsuCOaBzoGk4J7R3A=", "SlixnS34BhAO+yRI2FaGPSOh9V6JSVNPfLl1bHxrcQY=", "1DaDKzrCNNBhmSdY5vFjz+NpAmxmYfYEgBCdPLrMP1A=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3516677174\nJtGruGaJvwlxy0lB0synSgJb7LQ7BRNHTq4uijKJFVQ=\n\n— rekor.sigstore.dev wNI9ajBEAiB9AoqiyyXtN96p3S1duc4ANj/de0ypL1Pi4gae0rIDpgIgBsycRvzz6CnRs/lYfzNUQH+gLpxlkYT5TYk7WoeLMeM=\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI2N2JkZWUxZjFjZjc0MjUyOTI1MjgzMTBiZDMzMzFlMTM0YmVhOWVhZmRmOGFhMTY5MjNmNTg0Y2YzNTYwNWU3In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUNxNDAwdm9KVHNSZXBwaTdXcGpZQjlmdE9EZWhOcHBPbTRzay9PYlQzbFZRSWhBTDhOQlJEM1p0MDRocUN3UjVGdGF4bXMwSVVnNkZGVGhhc3VaaFExVndYViIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaExla05EUW5KTFowRjNTVUpCWjBsVlRXeDNha1JRWVUxU2NFOXNNM1ZXWkZOb0x6WmFZek0zVFZJNGQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFVUVhsTlZFVjZUV3BOTVZkb1kwNU5hbGw0VFZSQmVVMVVSVEJOYWsweFYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZWTVZkNVJVUmtUelJwU0dsQ2QxSlNRV1ZFTkM5clRXZ3dWemRZVlZkSGIxSTVOMllLUzBzelZFeFBZbE5TYUVsaGMyNVVaRzFhVm0weFJYZ3JaRzFNVWxWeWIwWm9UR2xtU0ZKSmRGZHJRVkZWYVhaVFdFdFBRMEprUlhkbloxaE9UVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmQ1VDBkV2FncGFWR041VDBkUmVscFVaR3RQUkZFMFRqSmFiVmxVU20xYVJGcHNUWHBuTVU5SFJtcGFhbEpzV2xkRk0wMTZhR2hOUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEWjNsUFIxWnFXbFJqZVU5SFVYcGFWR1JyQ2s5RVVUUk9NbHB0V1ZSS2JWcEVXbXhOZW1jeFQwZEdhbHBxVW14YVYwVXpUWHBvYUUxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEWjNsUFIxWnFDbHBVWTNsUFIxRjZXbFJrYTA5RVVUUk9NbHB0V1ZSS2JWcEVXbXhOZW1jeFQwZEdhbHBxVW14YVYwVXpUWHBvYUUxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlOYW1oc1dUSlZNMDFxYUd0Tk1sVXpXa1JuTUU5RVpHMWFiVVY1V20xUk1scFVUVFJPVkdob1dUSlpNRnBYVm1nS1RucE5ORmxVUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRnd1RWUlJlazU2UVhwT1ZGRjZUWGs1YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkTENrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NIZEZaV2RDTkVGSVdVRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvYmtGb1lqRlJRVUZDUVUxQlVucENSa0ZwUVhWV2JYVnFSbkpNTW5kVVdrWk1UVEpCUkc1UVRsbFlaa1JZZFdweWFXTkJUd295V2tOMEwydFpTVWQzU1doQlNYVnBhMVF5VUZsek1ucFhObFYxZURKMFNETjJhR1pJTjB4ME9XRnpkbk5WV2tWWlFXOHZUMFJ2UjAxQmIwZERRM0ZIQ2xOTk5EbENRVTFFUVRKalFVMUhVVU5OUVdoNmVHWlJSWFp5VGpKTmFtSmpTRWh2Y1c5Q1kwdHpVVzAxT0dsdmIyNXZNM3BLUml0TlZYcHJXVXR4V0hjS1pqaEtaUzk1YmtoUlpHNDRhRkJsV1hOQlNYZEJXVzl0VVRCdmVFcEtXR1pHTkUxblMwOUxLMGs0S3pSVFVWa3plR2R3YTJOcE56Rm9hRGd3TTBwRlJBcE5iMEpqTURONFpqQlJiMDVtWW04MFdWSm9jZ290TFMwdExVVk9SQ0JEUlZKVVNVWkpRMEZVUlMwdExTMHRDZz09In19fX0="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyTADAgEAMIICwAYJKoZIhvcNAQcCoIICsTCCAq0CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgqd2MUPI8xnlORm/aRe/WDbcUfsuGFroPTeWc6Bs1a8ECFQC1ZPlmljkQCg4CSOG+v0odzSgdbxgPMjAyNjExMDIxMTMyMzZaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHaMIIB1gIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MTEwMjExMzIzNlowLwYJKoZIhvcNAQkEMSIEIH9mUjAfd5zEW6D8MB+sCL3UJb4kznvcUzg+KQ23dZ/rMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRmMGQCMEI8ZxfS+zJdXSEoQR9LRAyrR9y6JsQwj6izMewOAGPPTKuishqxDNuJC+NfSrvKbgIwIhngq2u5nJRYvQkLXaIs1ZgQvhWvka9QshKKY2MNzoGFzuHmFYzoY1VE2bauc+Es"}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"Z73uHxz3QlKSUoMQvTMx4TS+qer9+KoWkj9YTPNWBec="}, "signature":"MEYCIQCq400voJTsReppi7WpjYB9ftODehNppOm4sk/ObT3lVQIhAL8NBRD3Zt04hqCwR5Ftaxms0IUg6FFThasuZhQ1VwXV"}}
|
build/torch-rocm/symbols.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
| 1 |
{
|
| 2 |
"schema_version": 1,
|
| 3 |
-
"module": "
|
| 4 |
"functions": [
|
| 5 |
{
|
| 6 |
"name": "flash_attn_func",
|
| 7 |
"qualname": "flash_attn_func",
|
| 8 |
-
"module": "
|
| 9 |
"kind": "function",
|
| 10 |
"doc": "dropout_p should be set to 0.0 during evaluation\nSupports multi-query and grouped-query attention (MQA/GQA) by passing in KV with fewer heads\nthan Q. Note that the number of heads in Q must be divisible by the number of heads in KV.\nFor example, if Q has 6 heads and K, V have 2 heads, head 0, 1, 2 of Q will attention to head\n0 of K, V, and head 3, 4, 5 of Q will attention to head 1 of K, V.\n\nIf causal=True, the causal mask is aligned to the bottom right corner of the attention matrix.\nFor example, if seqlen_q = 2 and seqlen_k = 5, the causal mask (1 = keep, 0 = masked out) is:\n 1 1 1 1 0\n 1 1 1 1 1\nIf seqlen_q = 5 and seqlen_k = 2, the causal mask is:\n 0 0\n 0 0\n 0 0\n 1 0\n 1 1\nIf the row of the mask is all zero, the output will be zero.\n\nIf window_size != (-1, -1), implements sliding window local attention. Query at position i\nwill only attend to keys between\n[i + seqlen_k - seqlen_q - window_size[0], i + seqlen_k - seqlen_q + window_size[1]] inclusive.\n\nArguments:\n q: (batch_size, seqlen, nheads, headdim)\n k: (batch_size, seqlen, nheads_k, headdim)\n v: (batch_size, seqlen, nheads_k, headdim)\n dropout_p: float. Dropout probability.\n softmax_scale: float. The scaling of QK^T before applying softmax.\n Default to 1 / sqrt(headdim_q).\n causal: bool. Whether to apply causal attention mask (e.g., for auto-regressive modeling).\n window_size: (left, right). If not (-1, -1), implements sliding window local attention.\n bias: (seqlen_q, seqlen_k)\n alibi_slopes: (nheads,) or (batch_size, nheads), fp32. A bias of\n (-alibi_slope * |i + seqlen_k - seqlen_q - j|)\n is added to the attention score of query i and key j.\n deterministic: bool. Whether to use the deterministic implementation of the backward pass,\n which is slightly slower and uses more memory. The forward pass is always deterministic.\n return_attn_probs: bool. Whether to return the attention probabilities. This option is for\n testing only. The returned probabilities are not guaranteed to be correct\n (they might not have the right scaling).\n s_aux: (nheads,), attention sink scores (one per Q head), or None\nReturn:\n out: (batch_size, seqlen, nheads, headdim).\n softmax_lse [optional, if return_attn_probs=True]: (batch_size, nheads, seqlen). The\n logsumexp of each row of the matrix QK^T * scaling (e.g., log of the softmax\n normalization factor).\n S_dmask [optional, if return_attn_probs=True]: (batch_size, nheads, seqlen, seqlen).\n The output of softmax (possibly with different scaling). It also encodes the dropout\n pattern (negative means that location was dropped, nonnegative means it was kept).",
|
| 11 |
"signature": {
|
|
@@ -101,7 +101,7 @@
|
|
| 101 |
{
|
| 102 |
"name": "flash_attn_varlen_func",
|
| 103 |
"qualname": "flash_attn_varlen_func",
|
| 104 |
-
"module": "
|
| 105 |
"kind": "function",
|
| 106 |
"doc": "dropout_p should be set to 0.0 during evaluation\nSupports multi-query and grouped-query attention (MQA/GQA) by passing in K, V with fewer heads\nthan Q. Note that the number of heads in Q must be divisible by the number of heads in KV.\nFor example, if Q has 6 heads and K, V have 2 heads, head 0, 1, 2 of Q will attention to head\n0 of K, V, and head 3, 4, 5 of Q will attention to head 1 of K, V.\n\nIf causal=True, the causal mask is aligned to the bottom right corner of the attention matrix.\nFor example, if seqlen_q = 2 and seqlen_k = 5, the causal mask (1 = keep, 0 = masked out) is:\n 1 1 1 1 0\n 1 1 1 1 1\nIf seqlen_q = 5 and seqlen_k = 2, the causal mask is:\n 0 0\n 0 0\n 0 0\n 1 0\n 1 1\nIf the row of the mask is all zero, the output will be zero.\n\nIf window_size != (-1, -1), implements sliding window local attention. Query at position i\nwill only attend to keys between\n[i + seqlen_k - seqlen_q - window_size[0], i + seqlen_k - seqlen_q + window_size[1]] inclusive.\n\nArguments:\n q: (total_q, nheads, headdim), where total_q = total number of query tokens in the batch.\n k: (total_k, nheads_k, headdim), where total_k = total number of key tokens in the batch.\n v: (total_k, nheads_k, headdim), where total_k = total number of key tokens in the batch.\n cu_seqlens_q: (batch_size + 1,), dtype torch.int32. The cumulative sequence lengths\n of the sequences in the batch, used to index into q.\n cu_seqlens_k: (batch_size + 1,), dtype torch.int32. The cumulative sequence lengths\n of the sequences in the batch, used to index into kv.\n max_seqlen_q: int. Maximum query sequence length in the batch.\n max_seqlen_k: int. Maximum key sequence length in the batch.\n dropout_p: float. Dropout probability.\n softmax_scale: float. The scaling of QK^T before applying softmax.\n Default to 1 / sqrt(headdim).\n causal: bool. Whether to apply causal attention mask (e.g., for auto-regressive modeling).\n window_size: (left, right). If not (-1, -1), implements sliding window local attention.\n bias: (seqlen_q, seqlen_k)\n alibi_slopes: (nheads,) or (batch_size, nheads), fp32. A bias of\n (-alibi_slope * |i + seqlen_k - seqlen_q - j|)\n is added to the attention score of query i and key j.\n deterministic: bool. Whether to use the deterministic implementation of the backward pass,\n which is slightly slower and uses more memory. The forward pass is always deterministic.\n return_attn_probs: bool. Whether to return the attention probabilities. This option is for\n testing only. The returned probabilities are not guaranteed to be correct\n (they might not have the right scaling).\n s_aux: (nheads,), attention sink scores (one per Q head), or None\nReturn:\n out: (total, nheads, headdim).\n softmax_lse [optional, if return_attn_probs=True]: (nheads, total_q_seqlen). The\n logsumexp of each row of the matrix QK^T * scaling (e.g., log of the softmax\n normalization factor).\n S_dmask [optional, if return_attn_probs=True]: (batch_size, nheads, seqlen, seqlen).\n The output of softmax (possibly with different scaling). It also encodes the dropout\n pattern (negative means that location was dropped, nonnegative means it was kept).",
|
| 107 |
"signature": {
|
|
@@ -233,7 +233,7 @@
|
|
| 233 |
{
|
| 234 |
"name": "flash_attn_with_kvcache",
|
| 235 |
"qualname": "flash_attn_with_kvcache",
|
| 236 |
-
"module": "
|
| 237 |
"kind": "function",
|
| 238 |
"doc": "This mirrors the public flash_attn v2 interface for KV cache using the AMD Triton backend.\n\nArgs:\n q: (batch, seqlen_q, nheads_q, headdim)\n k_cache / v_cache: Either contiguous (batch, seqlen_cache, nheads_k, headdim) or paged\n (num_blocks, page_block_size, nheads_k, headdim) when block_table provided.\n k, v: Optional incremental tokens to append in-place (appended logically after existing cache).\n cache_seqlens: int or (batch,) current valid lengths per batch entry.\n softmax_scale: Optional override; defaults to 1/sqrt(headdim).\n causal: Apply causal masking.\n window_size: (left, right) local attention window; (-1,-1) = full.\n softcap: (float) currently must be 0.0 (backend limitation).\n num_splits: 0 or 1 only (backend limitation >1).\n rotary_cos/rotary_sin: Optional rotary embeddings (applied if provided) - interleaving flag unused here.\n cache_batch_idx/cache_leftpad: Optional indexing / left padding metadata.\n block_table: Optional paging table mapping logical blocks for paged KV cache.\n alibi_slopes: (nheads,) or (batch,nheads) bias slopes (currently ignored if provided - placeholder).\n rotary_interleaved: Flag kept for parity (currently forwarded as True constant to backend which ignores it).\n return_softmax_lse: If True returns (out, lse) else out.\n\nReturns:\n out (and optionally softmax_lse): (batch, seqlen_q, nheads_q, headdim)",
|
| 239 |
"signature": {
|
|
@@ -359,7 +359,7 @@
|
|
| 359 |
{
|
| 360 |
"name": "mha_set_impl",
|
| 361 |
"qualname": "mha_set_impl",
|
| 362 |
-
"module": "
|
| 363 |
"kind": "function",
|
| 364 |
"doc": "Set MHA forward implementation: 'default' (_attn_fwd) or 'dao_ai' (flash_attn_triton_amd).",
|
| 365 |
"signature": {
|
|
@@ -377,7 +377,7 @@
|
|
| 377 |
{
|
| 378 |
"name": "mha_set_use_fused_bwd_kernel",
|
| 379 |
"qualname": "mha_set_use_fused_bwd_kernel",
|
| 380 |
-
"module": "
|
| 381 |
"kind": "function",
|
| 382 |
"doc": "Set whether to use fused backward kernel (with atomics) or one-kernel backward (without atomics).\nFused backward is faster but doesn't support positional encoding.",
|
| 383 |
"signature": {
|
|
@@ -395,7 +395,7 @@
|
|
| 395 |
{
|
| 396 |
"name": "mha_set_use_int64_strides",
|
| 397 |
"qualname": "mha_set_use_int64_strides",
|
| 398 |
-
"module": "
|
| 399 |
"kind": "function",
|
| 400 |
"doc": "Use 64-bit integer strides to prevent integer overflows with very large tensors.",
|
| 401 |
"signature": {
|
|
|
|
| 1 |
{
|
| 2 |
"schema_version": 1,
|
| 3 |
+
"module": "_aiter_flash_attn_rocm_28ece72",
|
| 4 |
"functions": [
|
| 5 |
{
|
| 6 |
"name": "flash_attn_func",
|
| 7 |
"qualname": "flash_attn_func",
|
| 8 |
+
"module": "_aiter_flash_attn_rocm_28ece72.mha",
|
| 9 |
"kind": "function",
|
| 10 |
"doc": "dropout_p should be set to 0.0 during evaluation\nSupports multi-query and grouped-query attention (MQA/GQA) by passing in KV with fewer heads\nthan Q. Note that the number of heads in Q must be divisible by the number of heads in KV.\nFor example, if Q has 6 heads and K, V have 2 heads, head 0, 1, 2 of Q will attention to head\n0 of K, V, and head 3, 4, 5 of Q will attention to head 1 of K, V.\n\nIf causal=True, the causal mask is aligned to the bottom right corner of the attention matrix.\nFor example, if seqlen_q = 2 and seqlen_k = 5, the causal mask (1 = keep, 0 = masked out) is:\n 1 1 1 1 0\n 1 1 1 1 1\nIf seqlen_q = 5 and seqlen_k = 2, the causal mask is:\n 0 0\n 0 0\n 0 0\n 1 0\n 1 1\nIf the row of the mask is all zero, the output will be zero.\n\nIf window_size != (-1, -1), implements sliding window local attention. Query at position i\nwill only attend to keys between\n[i + seqlen_k - seqlen_q - window_size[0], i + seqlen_k - seqlen_q + window_size[1]] inclusive.\n\nArguments:\n q: (batch_size, seqlen, nheads, headdim)\n k: (batch_size, seqlen, nheads_k, headdim)\n v: (batch_size, seqlen, nheads_k, headdim)\n dropout_p: float. Dropout probability.\n softmax_scale: float. The scaling of QK^T before applying softmax.\n Default to 1 / sqrt(headdim_q).\n causal: bool. Whether to apply causal attention mask (e.g., for auto-regressive modeling).\n window_size: (left, right). If not (-1, -1), implements sliding window local attention.\n bias: (seqlen_q, seqlen_k)\n alibi_slopes: (nheads,) or (batch_size, nheads), fp32. A bias of\n (-alibi_slope * |i + seqlen_k - seqlen_q - j|)\n is added to the attention score of query i and key j.\n deterministic: bool. Whether to use the deterministic implementation of the backward pass,\n which is slightly slower and uses more memory. The forward pass is always deterministic.\n return_attn_probs: bool. Whether to return the attention probabilities. This option is for\n testing only. The returned probabilities are not guaranteed to be correct\n (they might not have the right scaling).\n s_aux: (nheads,), attention sink scores (one per Q head), or None\nReturn:\n out: (batch_size, seqlen, nheads, headdim).\n softmax_lse [optional, if return_attn_probs=True]: (batch_size, nheads, seqlen). The\n logsumexp of each row of the matrix QK^T * scaling (e.g., log of the softmax\n normalization factor).\n S_dmask [optional, if return_attn_probs=True]: (batch_size, nheads, seqlen, seqlen).\n The output of softmax (possibly with different scaling). It also encodes the dropout\n pattern (negative means that location was dropped, nonnegative means it was kept).",
|
| 11 |
"signature": {
|
|
|
|
| 101 |
{
|
| 102 |
"name": "flash_attn_varlen_func",
|
| 103 |
"qualname": "flash_attn_varlen_func",
|
| 104 |
+
"module": "_aiter_flash_attn_rocm_28ece72.mha",
|
| 105 |
"kind": "function",
|
| 106 |
"doc": "dropout_p should be set to 0.0 during evaluation\nSupports multi-query and grouped-query attention (MQA/GQA) by passing in K, V with fewer heads\nthan Q. Note that the number of heads in Q must be divisible by the number of heads in KV.\nFor example, if Q has 6 heads and K, V have 2 heads, head 0, 1, 2 of Q will attention to head\n0 of K, V, and head 3, 4, 5 of Q will attention to head 1 of K, V.\n\nIf causal=True, the causal mask is aligned to the bottom right corner of the attention matrix.\nFor example, if seqlen_q = 2 and seqlen_k = 5, the causal mask (1 = keep, 0 = masked out) is:\n 1 1 1 1 0\n 1 1 1 1 1\nIf seqlen_q = 5 and seqlen_k = 2, the causal mask is:\n 0 0\n 0 0\n 0 0\n 1 0\n 1 1\nIf the row of the mask is all zero, the output will be zero.\n\nIf window_size != (-1, -1), implements sliding window local attention. Query at position i\nwill only attend to keys between\n[i + seqlen_k - seqlen_q - window_size[0], i + seqlen_k - seqlen_q + window_size[1]] inclusive.\n\nArguments:\n q: (total_q, nheads, headdim), where total_q = total number of query tokens in the batch.\n k: (total_k, nheads_k, headdim), where total_k = total number of key tokens in the batch.\n v: (total_k, nheads_k, headdim), where total_k = total number of key tokens in the batch.\n cu_seqlens_q: (batch_size + 1,), dtype torch.int32. The cumulative sequence lengths\n of the sequences in the batch, used to index into q.\n cu_seqlens_k: (batch_size + 1,), dtype torch.int32. The cumulative sequence lengths\n of the sequences in the batch, used to index into kv.\n max_seqlen_q: int. Maximum query sequence length in the batch.\n max_seqlen_k: int. Maximum key sequence length in the batch.\n dropout_p: float. Dropout probability.\n softmax_scale: float. The scaling of QK^T before applying softmax.\n Default to 1 / sqrt(headdim).\n causal: bool. Whether to apply causal attention mask (e.g., for auto-regressive modeling).\n window_size: (left, right). If not (-1, -1), implements sliding window local attention.\n bias: (seqlen_q, seqlen_k)\n alibi_slopes: (nheads,) or (batch_size, nheads), fp32. A bias of\n (-alibi_slope * |i + seqlen_k - seqlen_q - j|)\n is added to the attention score of query i and key j.\n deterministic: bool. Whether to use the deterministic implementation of the backward pass,\n which is slightly slower and uses more memory. The forward pass is always deterministic.\n return_attn_probs: bool. Whether to return the attention probabilities. This option is for\n testing only. The returned probabilities are not guaranteed to be correct\n (they might not have the right scaling).\n s_aux: (nheads,), attention sink scores (one per Q head), or None\nReturn:\n out: (total, nheads, headdim).\n softmax_lse [optional, if return_attn_probs=True]: (nheads, total_q_seqlen). The\n logsumexp of each row of the matrix QK^T * scaling (e.g., log of the softmax\n normalization factor).\n S_dmask [optional, if return_attn_probs=True]: (batch_size, nheads, seqlen, seqlen).\n The output of softmax (possibly with different scaling). It also encodes the dropout\n pattern (negative means that location was dropped, nonnegative means it was kept).",
|
| 107 |
"signature": {
|
|
|
|
| 233 |
{
|
| 234 |
"name": "flash_attn_with_kvcache",
|
| 235 |
"qualname": "flash_attn_with_kvcache",
|
| 236 |
+
"module": "_aiter_flash_attn_rocm_28ece72.mha",
|
| 237 |
"kind": "function",
|
| 238 |
"doc": "This mirrors the public flash_attn v2 interface for KV cache using the AMD Triton backend.\n\nArgs:\n q: (batch, seqlen_q, nheads_q, headdim)\n k_cache / v_cache: Either contiguous (batch, seqlen_cache, nheads_k, headdim) or paged\n (num_blocks, page_block_size, nheads_k, headdim) when block_table provided.\n k, v: Optional incremental tokens to append in-place (appended logically after existing cache).\n cache_seqlens: int or (batch,) current valid lengths per batch entry.\n softmax_scale: Optional override; defaults to 1/sqrt(headdim).\n causal: Apply causal masking.\n window_size: (left, right) local attention window; (-1,-1) = full.\n softcap: (float) currently must be 0.0 (backend limitation).\n num_splits: 0 or 1 only (backend limitation >1).\n rotary_cos/rotary_sin: Optional rotary embeddings (applied if provided) - interleaving flag unused here.\n cache_batch_idx/cache_leftpad: Optional indexing / left padding metadata.\n block_table: Optional paging table mapping logical blocks for paged KV cache.\n alibi_slopes: (nheads,) or (batch,nheads) bias slopes (currently ignored if provided - placeholder).\n rotary_interleaved: Flag kept for parity (currently forwarded as True constant to backend which ignores it).\n return_softmax_lse: If True returns (out, lse) else out.\n\nReturns:\n out (and optionally softmax_lse): (batch, seqlen_q, nheads_q, headdim)",
|
| 239 |
"signature": {
|
|
|
|
| 359 |
{
|
| 360 |
"name": "mha_set_impl",
|
| 361 |
"qualname": "mha_set_impl",
|
| 362 |
+
"module": "_aiter_flash_attn_rocm_28ece72.mha",
|
| 363 |
"kind": "function",
|
| 364 |
"doc": "Set MHA forward implementation: 'default' (_attn_fwd) or 'dao_ai' (flash_attn_triton_amd).",
|
| 365 |
"signature": {
|
|
|
|
| 377 |
{
|
| 378 |
"name": "mha_set_use_fused_bwd_kernel",
|
| 379 |
"qualname": "mha_set_use_fused_bwd_kernel",
|
| 380 |
+
"module": "_aiter_flash_attn_rocm_28ece72.mha",
|
| 381 |
"kind": "function",
|
| 382 |
"doc": "Set whether to use fused backward kernel (with atomics) or one-kernel backward (without atomics).\nFused backward is faster but doesn't support positional encoding.",
|
| 383 |
"signature": {
|
|
|
|
| 395 |
{
|
| 396 |
"name": "mha_set_use_int64_strides",
|
| 397 |
"qualname": "mha_set_use_int64_strides",
|
| 398 |
+
"module": "_aiter_flash_attn_rocm_28ece72.mha",
|
| 399 |
"kind": "function",
|
| 400 |
"doc": "Use 64-bit integer strides to prevent integer overflows with very large tensors.",
|
| 401 |
"signature": {
|