Kernels:
Trusted publisher
Uploaded using `kernel-builder`.
Browse files- build/torch211-metal-aarch64-darwin/_ops.py +3 -3
- build/torch211-metal-aarch64-darwin/{_paged_attention_metal_2567cd6.abi3.so → _paged_attention_metal_2e4b976.abi3.so} +1 -1
- build/torch211-metal-aarch64-darwin/metadata.json +3 -3
- build/torch211-metal-aarch64-darwin/metadata.json.sigstore +1 -1
- build/torch212-metal-aarch64-darwin/_ops.py +3 -3
- build/torch212-metal-aarch64-darwin/{_paged_attention_metal_2567cd6.abi3.so → _paged_attention_metal_2e4b976.abi3.so} +2 -2
- build/torch212-metal-aarch64-darwin/metadata.json +3 -3
- build/torch212-metal-aarch64-darwin/metadata.json.sigstore +1 -1
- build/torch213-metal-aarch64-darwin/__init__.py +21 -0
- build/torch213-metal-aarch64-darwin/_custom_ops.py +173 -0
- build/torch213-metal-aarch64-darwin/_ops.py +9 -0
- build/torch213-metal-aarch64-darwin/_paged_attention_metal_2e4b976.abi3.so +3 -0
- build/torch213-metal-aarch64-darwin/metadata.json +21 -0
- build/torch213-metal-aarch64-darwin/metadata.json.sigstore +1 -0
- build/torch213-metal-aarch64-darwin/paged_attention/__init__.py +26 -0
- build/torch213-metal-aarch64-darwin/platforms.py +92 -0
build/torch211-metal-aarch64-darwin/_ops.py
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
import torch
|
| 2 |
-
from . import
|
| 3 |
-
ops = torch.ops.
|
| 4 |
|
| 5 |
def add_op_namespace_prefix(op_name: str):
|
| 6 |
"""
|
| 7 |
Prefix op by namespace.
|
| 8 |
"""
|
| 9 |
-
return f"
|
|
|
|
| 1 |
import torch
|
| 2 |
+
from . import _paged_attention_metal_2e4b976
|
| 3 |
+
ops = torch.ops._paged_attention_metal_2e4b976
|
| 4 |
|
| 5 |
def add_op_namespace_prefix(op_name: str):
|
| 6 |
"""
|
| 7 |
Prefix op by namespace.
|
| 8 |
"""
|
| 9 |
+
return f"_paged_attention_metal_2e4b976::{op_name}"
|
build/torch211-metal-aarch64-darwin/{_paged_attention_metal_2567cd6.abi3.so → _paged_attention_metal_2e4b976.abi3.so}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 14893480
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:33c1079ecb627da3f01e5d21ad674ba696638104b305f574c9354755e5001e9a
|
| 3 |
size 14893480
|
build/torch211-metal-aarch64-darwin/metadata.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
{
|
| 2 |
"name": "paged-attention",
|
| 3 |
-
"id": "
|
| 4 |
"version": 1,
|
| 5 |
"license": "Apache-2.0",
|
| 6 |
"python-depends": [],
|
|
@@ -12,8 +12,8 @@
|
|
| 12 |
"files": {
|
| 13 |
"__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
|
| 14 |
"_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
|
| 15 |
-
"_ops.py": "
|
| 16 |
-
"
|
| 17 |
"paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
|
| 18 |
"platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
|
| 19 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"name": "paged-attention",
|
| 3 |
+
"id": "_paged_attention_metal_2e4b976",
|
| 4 |
"version": 1,
|
| 5 |
"license": "Apache-2.0",
|
| 6 |
"python-depends": [],
|
|
|
|
| 12 |
"files": {
|
| 13 |
"__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
|
| 14 |
"_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
|
| 15 |
+
"_ops.py": "7rjK4fYIChrffZ2ZB0dMDA9vndP9A42QMB50fnzK0IQ=",
|
| 16 |
+
"_paged_attention_metal_2e4b976.abi3.so": "M8EHnstifaPwHl0hrWdLppZjgQSzBfV0yTVHVeUAHpo=",
|
| 17 |
"paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
|
| 18 |
"platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
|
| 19 |
}
|
build/torch211-metal-aarch64-darwin/metadata.json.sigstore
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHdTCCBvqgAwIBAgIUdEZOojVciMkDmxIFCd61HcT+PCkwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNjE4MDcwNDIyWhcNMjYwNjE4MDcxNDIyWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4uo686+X6heXPSzV5dPkxKw53Lcq0IhdOVST5LC8Ftlm2r+VIUr15gDLh2kRZmbZsvvJPjQNgMvJGzsqJT4L/qOCBhkwggYVMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUdptLBQG6n41ubWGzVPerL8RxCqowHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wdQYDVR0RAQH/BGswaYZnaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL3NpZ24tb2xkLWJ1aWxkcy55YW1sQHJlZnMvaGVhZHMvbWFpbjA5BgorBgEEAYO/MAEBBCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMB8GCisGAQQBg78wAQIEEXdvcmtmbG93X2Rpc3BhdGNoMDYGCisGAQQBg78wAQMEKDhhNmJlN2JjNzc1NjVhZDY1YzhhZTJkZWI0NTY0ODJmZjZhYTUwZWQwHQYKKwYBBAGDvzABBAQPU2lnbiBvbGQgYnVpbGRzMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wdwYKKwYBBAGDvzABCQRpDGdodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3Mvc2lnbi1vbGQtYnVpbGRzLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoOGE2YmU3YmM3NzU2NWFkNjVjOGFlMmRlYjQ1NjQ4MmZmNmFhNTBlZDAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoOGE2YmU3YmM3NzU2NWFkNjVjOGFlMmRlYjQ1NjQ4MmZmNmFhNTBlZDAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzB3BgorBgEEAYO/MAESBGkMZ2h0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9zaWduLW9sZC1idWlsZHMueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABEwQqDCg4YTZiZTdiYzc3NTY1YWQ2NWM4YWUyZGViNDU2NDgyZmY2YWE1MGVkMCEGCisGAQQBg78wARQEEwwRd29ya2Zsb3dfZGlzcGF0Y2gwZAYKKwYBBAGDvzABFQRWDFRodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvYWN0aW9ucy9ydW5zLzI3NzQxNDY0ODQyL2F0dGVtcHRzLzEwFgYKKwYBBAGDvzABFgQIDAZwdWJsaWMwRgYKKwYBBAGDvzABGAQ4DDZyZXBvOmh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5OnJlZjpyZWZzL2hlYWRzL21haW4wgYsGCisGAQQB1nkCBAIEfQR7AHkAdwDdPTBqxscRMmMZHhyZZzcCokpeuN48rf+HinKALynujgAAAZ7Zi42XAAAEAwBIMEYCIQC5607lW9IwdOaY0yy3GITE536fzWxGYZ3PGsYh1SrF9QIhAKNCrNW+c++rTA9TLqCLSaI0X+LowAeHNcImx5wfT/nMMAoGCCqGSM49BAMDA2kAMGYCMQDpcF5y+ERYtf7qcXZ9MASMRve8BFflCrJtU6SoVjwEJIgpbyumI1kmcj9LSzaT+FcCMQCFez4jN6w1OT44RQinke9eTzXr2+1l+6FaPUJ++N59jMG2l98Q3JHWzv3KcfYUS70="},"tlogEntries":[{"logIndex":"1857868237","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1781766262","inclusionPromise":{"signedEntryTimestamp":"MEUCIG+RxPQe9Tmj4Me/QZkgDBJgqYJdfadSn4ltKUWVP/f0AiEA7flOpaZZyt8f4u1nf7u+YdxDbZxG1+ss8RJ/EqgTUsI="},"inclusionProof":{"logIndex":"1735963975","rootHash":"4tst8/luxc4u4qcLpTKFRakAD5Qv7c0CzeowKNXX0tk=","treeSize":"1735963979","hashes":["M2PKazK5WkbD3Nh22SohQ2caJN2yZX54DV3S/I67FwE=","6AVOi5j1nJ74sTzVLhoOg383tjbTHq3SWlUBg+wSIZ0=","E5PK3IivqnRI90/Dasvgjd/iDyz+2HHUFrShkLPr1fg=","hyU9TCmCBn38DuJPewINchHC2oPVbK2frSQjLZWRbls=","GG0ScYS6uhF8I3k5Znn2x8IpJqaCYOimqm3k0S2Jl9E=","jVt10X8Zmi5F8zidb0wHwfSRCzVBnHZVxo8UFku7aag=","4Ny7LG2/j0rVg1AGsz2fgrmloV/gYS7SjP34oLW5enk=","IXi+glcGCVBbQnyKXRMBlk3Amu5oEucgBEZBG7p4X2o=","ZfHVieFZMuHiAb5B+XEd/hl6OF+K8Ke7Gj17e/gQNgI=","Uz3W676tGaFDolUTU8KKwxGjR9Jyau7jGEZBmJ3zdM4=","95goX8Iw4H4P6V4eHvRqTdVdViLbhEhsF6i7ICnz/+A=","sWDh7SjDHbJf3HWKGRxiURh6iIYrOzn4Zs37yIij6OA=","x7kXd4VRJvVmTHoSla2KyPQdKvGKDX26/7ST9OONR78=","U8wMiVDzFlmyqT7Nw1RSZYU9+fftsSkRhjpbyXnXUk8=","mqM7J+i75IpuD09QejiUBjeH85AZa+fSm4RXXFmj3lI=","72FC5FYLhxB4a4iiC956o0B/fT54ip4R41vsw2QBKtU=","lYGQ9ibwC8+smMkPQ6TchJm3H9Nc/aTYLfdRacGFChw=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1735963979\n4tst8/luxc4u4qcLpTKFRakAD5Qv7c0CzeowKNXX0tk=\n\n— rekor.sigstore.dev wNI9ajBFAiEA2odb0xB+tGco9e7pm8gP97T+z5N7YG/qJ4FDlMDY9ggCIHNu5sX3RRJjQn6K9s4el/e/9qQOiPLg34Urz4D31bP1\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJjOGQ4YThlOGJjZGM4ZWNkZGUwNjI5ZTlkY2M5NWY3ZTlhMTQ3MDBiOWQzZmEzNTE2ZDkxMzg3YzkwMjA1Zjg1In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUUM2NTRoUUtOWFRSRnlOWFEzc0RTZGNWeVZ3QnBpWUZVTGhSMUNtaWo0ZXlnSWdUTlpvd01OSEdvYS9lcEhIRHVFVjRRZ0s1VzlISmJuVWJvWjBWUGVBMTI4PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaGtWRU5EUW5aeFowRjNTVUpCWjBsVlpFVmFUMjlxVm1OcFRXdEViWGhKUmtOa05qRklZMVFyVUVOcmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDVxUlRSTlJHTjNUa1JKZVZkb1kwNU5hbGwzVG1wRk5FMUVZM2hPUkVsNVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVUwZFc4Mk9EWXJXRFpvWlZoUVUzcFdOV1JRYTNoTGR6VXpUR054TUVsb1pFOVdVMVFLTlV4RE9FWjBiRzB5Y2l0V1NWVnlNVFZuUkV4b01tdFNXbTFpV25OMmRrcFFhbEZPWjAxMlNrZDZjM0ZLVkRSTUwzRlBRMEpvYTNkbloxbFdUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZrY0hSTUNrSlJSelp1TkRGMVlsZEhlbFpRWlhKTU9GSjRRM0Z2ZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJSUldVUldVakJTUVZGSUwwSkhjM2RoV1ZwdVlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU0wNXdXakkwZEdJeWVHdE1WMG94Q21GWGVHdGplVFUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTlVKbmIzSkNaMFZGUVZsUEwwMUJSVUpDUTNSdlpFaFNkMk42YjNZS1RETlNkbUV5Vm5WTWJVWnFaRWRzZG1KdVRYVmFNbXd3WVVoV2FXUllUbXhqYlU1MlltNVNiR0p1VVhWWk1qbDBUVUk0UjBOcGMwZEJVVkZDWnpjNGR3cEJVVWxGUlZoa2RtTnRkRzFpUnpreldESlNjR016UW1oa1IwNXZUVVJaUjBOcGMwZEJVVkZDWnpjNGQwRlJUVVZMUkdob1RtMUtiRTR5U21wT2VtTXhDazVxVm1oYVJGa3hXWHBvYUZwVVNtdGFWMGt3VGxSWk1FOUVTbTFhYWxwb1dWUlZkMXBYVVhkSVVWbExTM2RaUWtKQlIwUjJla0ZDUWtGUlVGVXliRzRLWW1sQ2RtSkhVV2RaYmxad1lrZFNlazFEYzBkRGFYTkhRVkZSUW1jM09IZEJVVlZGU0Zkb01Wb3laSEJpYldSdFdWZE9iRXd5ZEd4amJUVnNZa2hOZEFwWk1qbDBZbGhXZFdGWVVqVk5RakJIUTJselIwRlJVVUpuTnpoM1FWRlpSVVF6U214YWJrMTJZVWRXYUZwSVRYWmlWMFp3WW1wQk4wSm5iM0pDWjBWRkNrRlpUeTlOUVVWSlFrTXdUVXN5YURCa1NFSjZUMms0ZG1SSE9YSmFWelIxV1ZkT01HRlhPWFZqZVRWdVlWaFNiMlJYU2pGak1sWjVXVEk1ZFdSSFZuVUtaRU0xYW1JeU1IZGtkMWxMUzNkWlFrSkJSMFIyZWtGQ1ExRlNjRVJIWkc5a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFpoU0ZadVdqSnNkUXBhTWxwb1dUSlZkbUV5Vm5saWJWWnpZM2t4YW1JeU1YUmtWelZ3WkVocmRreHRaSEJrUjJneFdXazVNMkl6U25KYWJYaDJaRE5OZG1NeWJHNWlhVEYyQ21KSFVYUlpibFp3WWtkU2VreHViR2hpVjNoQlkyMVdiV041T1c5YVYwWnJZM2s1ZEZsWGJIVk5SR2RIUTJselIwRlJVVUpuTnpoM1FWRnZSVXRuZDI4S1QwZEZNbGx0VlROWmJVMHpUbnBWTWs1WFJtdE9hbFpxVDBkR2JFMXRVbXhaYWxFeFRtcFJORTF0V20xT2JVWm9UbFJDYkZwRVFXSkNaMjl5UW1kRlJRcEJXVTh2VFVGRlRFSkJNRTFETTA1c1lrZFpkR0ZIT1hwa1IxWnJUVVZCUjBOcGMwZEJVVkZDWnpjNGQwRlJkMFZOWjNkM1lVaFNNR05JVFRaTWVUbHVDbUZZVW05a1YwbDFXVEk1ZEV3eWFERmFNbVJ3WW0xa2JWbFhUbXhNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk5SR2RIUTJselIwRlJVVUlLWnpjNGQwRlJNRVZMWjNkdlQwZEZNbGx0VlROWmJVMHpUbnBWTWs1WFJtdE9hbFpxVDBkR2JFMXRVbXhaYWxFeFRtcFJORTF0V20xT2JVWm9UbFJDYkFwYVJFRm1RbWR2Y2tKblJVVkJXVTh2VFVGRlQwSkNSVTFFTTBwc1dtNU5kbUZIVm1oYVNFMTJZbGRHY0dKcVFXRkNaMjl5UW1kRlJVRlpUeTlOUVVWUUNrSkJkMDFEYWtWM1RucEZNRTU2VlRGTmFtdDNUR2RaUzB0M1dVSkNRVWRFZG5wQlFrVkJVV2RFUWpWdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5Xb0tZakl3ZG1GSVZtNWFNbXgxV2pKYWFGa3lWWGRIUVZsTFMzZFpRa0pCUjBSMmVrRkNSVkZSUzBSQlozbE9WR041VFVSak1FMTZRak5DWjI5eVFtZEZSUXBCV1U4dlRVRkZVMEpIYTAxYU1tZ3daRWhDZWs5cE9IWmFNbXd3WVVoV2FVeHRUblppVXpsdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2Q2t4WFRuWmlWekV4WW0xc01HVlRPSFZhTW13d1lVaFdhVXd6WkhaamJYUnRZa2M1TTJONU9YcGhWMlIxVEZjNWMxcERNV2xrVjJ4eldraE5kV1ZYUm5RS1lrVkNlVnBYV25wTU1taHNXVmRTZWt3eU1XaGhWelIzVDBGWlMwdDNXVUpDUVVkRWRucEJRa1YzVVhGRVEyYzBXVlJhYVZwVVpHbFplbU16VGxSWk1RcFpWMUV5VGxkTk5GbFhWWGxhUjFacFRrUlZNazVFWjNsYWJWa3lXVmRGTVUxSFZtdE5RMFZIUTJselIwRlJVVUpuTnpoM1FWSlJSVVYzZDFKa01qbDVDbUV5V25OaU0yUm1Xa2RzZW1OSFJqQlpNbWQzV2tGWlMwdDNXVUpDUVVkRWRucEJRa1pSVWxkRVJsSnZaRWhTZDJONmIzWk1NbVJ3WkVkb01WbHBOV29LWWpJd2RtRklWbTVhTW14MVdqSmFhRmt5VlhaaE1sWjVZbTFXYzJONU1XcGlNakYwWkZjMWNHUklhM1paVjA0d1lWYzVkV041T1hsa1Z6VjZUSHBKTXdwT2VsRjRUa1JaTUU5RVVYbE1Na1l3WkVkV2RHTklVbnBNZWtWM1JtZFpTMHQzV1VKQ1FVZEVkbnBCUWtablVVbEVRVnAzWkZkS2MyRlhUWGRTWjFsTENrdDNXVUpDUVVkRWRucEJRa2RCVVRSRVJGcDVXbGhDZGs5dGFERmFNbVJ3WW0xa2JWbFhUbXhNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVUtUMjVLYkZwcWNIbGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMmRaYzBkRGFYTkhRVkZSUWpGdWEwTkNRVWxGWmxGU04wRklhMEZrZDBSa1VGUkNjUXA0YzJOU1RXMU5Xa2hvZVZwYWVtTkRiMnR3WlhWT05EaHlaaXRJYVc1TFFVeDViblZxWjBGQlFWbzNXbWswTWxoQlFVRkZRWGRDU1UxRldVTkpVVU0xQ2pZd04yeFhPVWwzWkU5aFdUQjVlVE5IU1ZSRk5UTTJabnBYZUVkWldqTlFSM05aYURGVGNrWTVVVWxvUVV0T1EzSk9WeXRqS3l0eVZFRTVWRXh4UTB3S1UyRkpNRmdyVEc5M1FXVklUbU5KYlhnMWQyWlVMMjVOVFVGdlIwTkRjVWRUVFRRNVFrRk5SRUV5YTBGTlIxbERUVkZFY0dOR05Ya3JSVkpaZEdZM2NRcGpXRm81VFVGVFRWSjJaVGhDUm1ac1EzSktkRlUyVTI5V2FuZEZTa2xuY0dKNWRXMUpNV3R0WTJvNVRGTjZZVlFyUm1ORFRWRkRSbVY2TkdwT05uY3hDazlVTkRSU1VXbHVhMlU1WlZSNldISXlLekZzS3paR1lWQlZTaXNyVGpVNWFrMUhNbXc1T0ZFelNraFhlbll6UzJObVdWVlROekE5Q2kwdExTMHRSVTVFSUVORlVsUkpSa2xEUVZSRkxTMHRMUzBLIn19fX0="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyDADAgEAMIICvwYJKoZIhvcNAQcCoIICsDCCAqwCAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgf71SuQyYZ7VXkzYDR/uyk4miYN1DumXh9fvlbJSqaLECFEPL8ZfqztjDi8GvqGXf9pRmqjUkGA8yMDI2MDYxODA3MDQyMlowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdowggHWAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYwNjE4MDcwNDIyWjAvBgkqhkiG9w0BCQQxIgQgKS0gIKJzBfiKN/YIxoqqL0hmOBkXMOUhcaYn1GvfzhYwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGYwZAIwElc2BAfmXQffyKkk4lZ8ZzaJff/VS+KWe25NxDCNNA/wfhwrr3J6+H5jpPlKnPG7AjByV1dp59HP/tAdIxbToJqMFU8V8xpDwb/iZj0p09X0StmRgHYJJOHjkM2Y2dbEDVQ="}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"yNio6Lzcjs3eBinp3MlffpoUcAudP6NRbZE4fJAgX4U="},"signature":"MEUCIQC654hQKNXTRFyNXQ3sDSdcVyVwBpiYFULhR1Cmij4eygIgTNZowMNHGoa/epHHDuEV4QgK5W9HJbnUboZ0VPeA128="}}
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHYTCCBuegAwIBAgIUDEcShNwUyxRJrjLFWR/I1zf+/FYwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNzAzMTIxNjE0WhcNMjYwNzAzMTIyNjE0WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEv+x0MHnDBxw8XFb3q6z0kUxmW+pW2VDHlZOHlUKiPopYVcCULlhRCwPKMd3JYS9HI9Ys017BIEtXiDYKEF6AtqOCBgYwggYCMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUNsTBup2je+Y5/a/D/BzD1zc7XzUwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wbwYDVR0RAQH/BGUwY4ZhaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLW1hYy55YW1sQHJlZnMvaGVhZHMvbWFpbjA5BgorBgEEAYO/MAEBBCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMB8GCisGAQQBg78wAQIEEXdvcmtmbG93X2Rpc3BhdGNoMDYGCisGAQQBg78wAQMEKDJlNGI5NzYyMWU5Mzc5NzQxMzJmNTQzZGIyNTExMjY4MDZmOTRiYmUwGwYKKwYBBAGDvzABBAQNQnVpbGQgKG1hY09TKTArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMHEGCisGAQQBg78wAQkEYwxhaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLW1hYy55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAEKBCoMKDJlNGI5NzYyMWU5Mzc5NzQxMzJmNTQzZGIyNTExMjY4MDZmOTRiYmUwHQYKKwYBBAGDvzABCwQPDA1naXRodWItaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoMmU0Yjk3NjIxZTkzNzk3NDEzMmY1NDNkYjI1MTEyNjgwNmY5NGJiZTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBxBgorBgEEAYO/MAESBGMMYWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC1tYWMueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABEwQqDCgyZTRiOTc2MjFlOTM3OTc0MTMyZjU0M2RiMjUxMTI2ODA2Zjk0YmJlMCEGCisGAQQBg78wARQEEwwRd29ya2Zsb3dfZGlzcGF0Y2gwZAYKKwYBBAGDvzABFQRWDFRodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvYWN0aW9ucy9ydW5zLzI4NjU4NzY0OTgzL2F0dGVtcHRzLzEwFgYKKwYBBAGDvzABFgQIDAZwdWJsaWMwRgYKKwYBBAGDvzABGAQ4DDZyZXBvOmh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5OnJlZjpyZWZzL2hlYWRzL21haW4wgYoGCisGAQQB1nkCBAIEfAR6AHgAdgDdPTBqxscRMmMZHhyZZzcCokpeuN48rf+HinKALynujgAAAZ8n6HcaAAAEAwBHMEUCIQCghshAaN2y0TieVZTkHMkw45wupl3JiD9whPDrerh9TAIgBWnFRCy9WHn0NNGhUAan9L9jmx/JGRw/iVcZuusoJykwCgYIKoZIzj0EAwMDaAAwZQIwEsXYxbPSM7wGEJBNOAgy4YgdAmxs3484r8vGr5fO0F/bnb6RaKb7lgaMVTR7MWqLAjEAjGSPDO0pwXSLorVcTzyqXOepY3/BPM8uT+yvqChHb88Y1YdvRhTyaIO0q0JKr8LS"},"tlogEntries":[{"logIndex":"2060267494","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1783080974","inclusionPromise":{"signedEntryTimestamp":"MEUCIQDA5haIvk4LbcD028QIDCEGOnzrZ+7NLT8gYXoGFkM1HAIgKHaGqsmQKhvqCLS/E+xlc1MlldcwUQXI9NirgLiKPYg="},"inclusionProof":{"logIndex":"1938363232","rootHash":"W6MopXxSMoFkDS3XZsU4BJCktwhJUpzTinRYbABD8Zw=","treeSize":"1938363254","hashes":["PfiZ/gmH6xoQn8N8nRmlYjWcqN5tOtgI9f2HIa/inyU=","xRDNVoJWYRIPG57hfX5BTXSoFpCu3S+bkpBg38OB8fQ=","8mj4dKvkG2/4M2H0kJSDxAx6eSB+XIlEAcPnimqvBBk=","m+kBVQMYjwPDPpvOmIiaU805bH8OmIqKJA0+FHtvqu8=","GIIAT0+Br8auvotSXbUq0wZ48oavHbguYtirgWK3IGQ=","7WjsCCOh6gXdyqo0vuX+xxfWh3FHh4piiadf8aZx6JQ=","N1lPwbUMKK33b60NvroRrOLB2nfUAja2soCPi1EJmO4=","mJ0tN0+IfLY6kjJHq1bMLLFpHSVxmdNLWv9udn/K1PE=","KJhFQ5TiCDWKCD4GwxydFLs+9UHubMObTae64//CgYo=","Ls8uNdg/NbE4Cx0zOr5LKZynGmCJWdW7DLxN/yUCrZY=","6W1F1Pk0RaFwik1RwBLV0cTboqGj2pwEQDxPXzlBg64=","7t7nfpRXFFwOWiZ7hqJrJVEhGZwD31UptO0/dy5iWfI=","RIZjwQJv61lwM5JOP8iNT/RxKPr522/etVqxVBWn7KA=","b69YlhA5qlDwN70us4bq9ysnikE1ulA7EwKBTb+atY0=","LM7F5iwbk8jG29X4FwpkCN6BqDCfuNQTlz5CyQWt87s=","+/VZ56MsIPxMiyLAodzKXo5TEWdQp36z89qLhpzloAo=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1938363254\nW6MopXxSMoFkDS3XZsU4BJCktwhJUpzTinRYbABD8Zw=\n\n— rekor.sigstore.dev wNI9ajBGAiEA7xKr5JmlVjxONoK2jpthYy8UYx7fEtC8dQS58S47ru8CIQCNu46qVV0zKPQITQoJ5KzrruQ8TzKYQDE56F+AmIEuCg==\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJmODAwNmNhMGNlY2Y2NzJiODA2NWE4NmUwNWM4MWYwYjFkMjczZmI1ODE3ZTU0ZTA4MmI2YWI1MzZiNmIwY2EyIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUUNrdzQ4MmdCZjR4Zkw5bjJibk5sMlBSTGhrTWtnREZxN2taK2hkRmtIM3hnSWdTbTlzdUF2c1JGYk1FWE9GQTlaL3M0bHRSRU1PSlkrN0F5SXdpODhCTVFNPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFpWRU5EUW5WbFowRjNTVUpCWjBsVlJFVmpVMmhPZDFWNWVGSktjbXBNUmxkU0wwa3hlbVlyTDBaWmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDU2UVhwTlZFbDRUbXBGTUZkb1kwNU5hbGwzVG5wQmVrMVVTWGxPYWtVd1YycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVYySzNnd1RVaHVSRUo0ZHpoWVJtSXpjVFo2TUd0VmVHMVhLM0JYTWxaRVNHeGFUMGdLYkZWTGFWQnZjRmxXWTBOVlRHeG9Va04zVUV0TlpETktXVk01U0VrNVdYTXdNVGRDU1VWMFdHbEVXVXRGUmpaQmRIRlBRMEpuV1hkbloxbERUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZPYzFSQ0NuVndNbXBsSzFrMUwyRXZSQzlDZWtReGVtTTNXSHBWZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJKM1dVUldVakJTUVZGSUwwSkhWWGRaTkZwb1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4WE1XaFplVFUxQ2xsWE1YTlJTRXBzV201TmRtRkhWbWhhU0UxMllsZEdjR0pxUVRWQ1oyOXlRbWRGUlVGWlR5OU5RVVZDUWtOMGIyUklVbmRqZW05MlRETlNkbUV5Vm5VS1RHMUdhbVJIYkhaaWJrMTFXakpzTUdGSVZtbGtXRTVzWTIxT2RtSnVVbXhpYmxGMVdUSTVkRTFDT0VkRGFYTkhRVkZSUW1jM09IZEJVVWxGUlZoa2RncGpiWFJ0WWtjNU0xZ3lVbkJqTTBKb1pFZE9iMDFFV1VkRGFYTkhRVkZSUW1jM09IZEJVVTFGUzBSS2JFNUhTVFZPZWxsNVRWZFZOVTE2WXpWT2VsRjRDazE2U20xT1ZGRjZXa2RKZVU1VVJYaE5hbGswVFVSYWJVOVVVbWxaYlZWM1IzZFpTMHQzV1VKQ1FVZEVkbnBCUWtKQlVVNVJibFp3WWtkUlowdEhNV2dLV1RBNVZFdFVRWEpDWjI5eVFtZEZSVUZaVHk5TlFVVkdRa0l4YjJSWFpHNWhWelZ1V20xR2FscFRPWEphV0VwMVdsZDRla3hYVG5aaVZ6RXhZbTFzTUFwbFZFRmtRbWR2Y2tKblJVVkJXVTh2VFVGRlIwSkJPWGxhVjFwNlRESm9iRmxYVW5wTU1qRm9ZVmMwZDA5M1dVdExkMWxDUWtGSFJIWjZRVUpEUVZGMENrUkRkRzlrU0ZKM1kzcHZka3d6VW5aaE1sWjFURzFHYW1SSGJIWmliazExV2pKc01HRklWbWxrV0U1c1kyMU9kbUp1VW14aWJsRjFXVEk1ZEUxSVJVY0tRMmx6UjBGUlVVSm5OemgzUVZGclJWbDNlR2hoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiQXBqYlRWc1lraE5kRmt5T1hSaVdGWjFZVmhTTlV4NU5XNWhXRkp2WkZkSmRtUXlPWGxoTWxwellqTmtla3d5U2pGaFYzaHJURmN4YUZsNU5UVlpWekZ6Q2xGSVNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJORUpuYjNKQ1owVkZRVmxQTDAxQlJVdENRMjlOUzBSS2JFNUhTVFZPZWxsNVRWZFZOVTE2WXpVS1RucFJlRTE2U20xT1ZGRjZXa2RKZVU1VVJYaE5hbGswVFVSYWJVOVVVbWxaYlZWM1NGRlpTMHQzV1VKQ1FVZEVkbnBCUWtOM1VWQkVRVEZ1WVZoU2J3cGtWMGwwWVVjNWVtUkhWbXROUlVGSFEybHpSMEZSVVVKbk56aDNRVkYzUlUxbmQzZGhTRkl3WTBoTk5reDVPVzVoV0ZKdlpGZEpkVmt5T1hSTU1tZ3hDbG95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFJpV0ZaMVlWaFNOVTFFWjBkRGFYTkhRVkZSUW1jM09IZEJVVEJGUzJkM2IwMXRWVEFLV1dwck0wNXFTWGhhVkd0NlRucHJNMDVFUlhwTmJWa3hUa1JPYTFscVNURk5WRVY1VG1wbmQwNXRXVFZPUjBwcFdsUkJaa0puYjNKQ1owVkZRVmxQTHdwTlFVVlBRa0pGVFVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJZVUpuYjNKQ1owVkZRVmxQTDAxQlJWQkNRWGROUTJwRmQwNTZSVEJPZWxVeENrMXFhM2RNWjFsTFMzZFpRa0pCUjBSMmVrRkNSVUZSWjBSQ05XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZDBkQldVdExkMWxDUWtGSFJIWjZRVUpGVVZGTFJFRm5lVTVVWTNsTlJHTXdUWHBDZUVKbmIzSkNaMFZGUVZsUEwwMUJSVk5DUjAxTldWZG9NQXBrU0VKNlQyazRkbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemgxQ2xveWJEQmhTRlpwVEROa2RtTnRkRzFpUnprelkzazVhV1JYYkhOYVF6RjBXVmROZFdWWFJuUmlSVUo1V2xkYWVrd3lhR3haVjFKNlRESXhhR0ZYTkhjS1QwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWM1VYRkVRMmQ1V2xSU2FVOVVZekpOYWtac1QxUk5NMDlVWXpCTlZFMTVXbXBWTUUweVVtbE5hbFY0VFZSSk1ncFBSRUV5V21wck1GbHRTbXhOUTBWSFEybHpSMEZSVVVKbk56aDNRVkpSUlVWM2QxSmtNamw1WVRKYWMySXpaR1phUjJ4NlkwZEdNRmt5WjNkYVFWbExDa3QzV1VKQ1FVZEVkbnBCUWtaUlVsZEVSbEp2WkVoU2QyTjZiM1pNTW1Sd1pFZG9NVmxwTldwaU1qQjJZVWhXYmxveWJIVmFNbHBvV1RKVmRtRXlWbmtLWW0xV2MyTjVNV3BpTWpGMFpGYzFjR1JJYTNaWlYwNHdZVmM1ZFdONU9YbGtWelY2VEhwSk5FNXFWVFJPZWxrd1QxUm5la3d5UmpCa1IxWjBZMGhTZWdwTWVrVjNSbWRaUzB0M1dVSkNRVWRFZG5wQlFrWm5VVWxFUVZwM1pGZEtjMkZYVFhkU1oxbExTM2RaUWtKQlIwUjJla0ZDUjBGUk5FUkVXbmxhV0VKMkNrOXRhREZhTW1Sd1ltMWtiVmxYVG14TU1uUnNZMjAxYkdKSVRYUlpNamwwWWxoV2RXRllValZQYmtwc1dtcHdlVnBYV25wTU1taHNXVmRTZWt3eU1XZ0tZVmMwZDJkWmIwZERhWE5IUVZGUlFqRnVhME5DUVVsRlprRlNOa0ZJWjBGa1owUmtVRlJDY1hoelkxSk5iVTFhU0doNVdscDZZME52YTNCbGRVNDBPQXB5Wml0SWFXNUxRVXg1Ym5WcVowRkJRVm80YmpaSVkyRkJRVUZGUVhkQ1NFMUZWVU5KVVVObmFITm9RV0ZPTW5rd1ZHbGxWbHBVYTBoTmEzYzBOWGQxQ25Cc00wcHBSRGwzYUZCRWNtVnlhRGxVUVVsblFsZHVSbEpEZVRsWFNHNHdUazVIYUZWQllXNDVURGxxYlhndlNrZFNkeTlwVm1OYWRYVnpiMHA1YTNjS1EyZFpTVXR2V2tsNmFqQkZRWGROUkdGQlFYZGFVVWwzUlhOWVdYaGlVRk5OTjNkSFJVcENUazlCWjNrMFdXZGtRVzE0Y3pNME9EUnlPSFpIY2pWbVR3b3dSaTlpYm1JMlVtRkxZamRzWjJGTlZsUlNOMDFYY1V4QmFrVkJha2RUVUVSUE1IQjNXRk5NYjNKV1kxUjZlWEZZVDJWd1dUTXZRbEJOT0hWVUszbDJDbkZEYUVoaU9EaFpNVmxrZGxKb1ZIbGhTVTh3Y1RCS1MzSTRURk1LTFMwdExTMUZUa1FnUTBWU1ZFbEdTVU5CVkVVdExTMHRMUW89In19fX0="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyDADAgEAMIICvwYJKoZIhvcNAQcCoIICsDCCAqwCAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgPdsg06NKz4s9iDp1Jvn1am49OT0IQ38K6osXyXaffPECFAld+WfN1cIn0mDrNMEXmzKOpFIJGA8yMDI2MDcwMzEyMTYxNFowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdowggHWAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYwNzAzMTIxNjE0WjAvBgkqhkiG9w0BCQQxIgQgSMl8Opf/VLrnAgEPlKX9u6+9FG8//O+J4tP5sIBysQEwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGYwZAIwKwiTib5ttwHPI4saaqYZnkOU7KKkJbTj3VZQrcEYhso0f9BlodkYUGIq6Osex7QiAjBK93Yi+f8PNwlY60eGi8KrBcTknO64L0idEtTvVkA5QnmwgSbOIj/lP2A61dF5rss="}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"+ABsoM7PZyuAZahuBcgfCx0nP7WBflTggrarU2trDKI="},"signature":"MEUCIQCkw482gBf4xfL9n2bnNl2PRLhkMkgDFq7kZ+hdFkH3xgIgSm9suAvsRFbMEXOFA9Z/s4ltREMOJY+7AyIwi88BMQM="}}
|
build/torch212-metal-aarch64-darwin/_ops.py
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
import torch
|
| 2 |
-
from . import
|
| 3 |
-
ops = torch.ops.
|
| 4 |
|
| 5 |
def add_op_namespace_prefix(op_name: str):
|
| 6 |
"""
|
| 7 |
Prefix op by namespace.
|
| 8 |
"""
|
| 9 |
-
return f"
|
|
|
|
| 1 |
import torch
|
| 2 |
+
from . import _paged_attention_metal_2e4b976
|
| 3 |
+
ops = torch.ops._paged_attention_metal_2e4b976
|
| 4 |
|
| 5 |
def add_op_namespace_prefix(op_name: str):
|
| 6 |
"""
|
| 7 |
Prefix op by namespace.
|
| 8 |
"""
|
| 9 |
+
return f"_paged_attention_metal_2e4b976::{op_name}"
|
build/torch212-metal-aarch64-darwin/{_paged_attention_metal_2567cd6.abi3.so → _paged_attention_metal_2e4b976.abi3.so}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
-
size
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:f59de93410a386a8e0adfc7ac3764d6da74e2de5ffbe700e91416613e466c7ba
|
| 3 |
+
size 14892968
|
build/torch212-metal-aarch64-darwin/metadata.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
{
|
| 2 |
"name": "paged-attention",
|
| 3 |
-
"id": "
|
| 4 |
"version": 1,
|
| 5 |
"license": "Apache-2.0",
|
| 6 |
"python-depends": [],
|
|
@@ -12,8 +12,8 @@
|
|
| 12 |
"files": {
|
| 13 |
"__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
|
| 14 |
"_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
|
| 15 |
-
"_ops.py": "
|
| 16 |
-
"
|
| 17 |
"paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
|
| 18 |
"platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
|
| 19 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"name": "paged-attention",
|
| 3 |
+
"id": "_paged_attention_metal_2e4b976",
|
| 4 |
"version": 1,
|
| 5 |
"license": "Apache-2.0",
|
| 6 |
"python-depends": [],
|
|
|
|
| 12 |
"files": {
|
| 13 |
"__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
|
| 14 |
"_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
|
| 15 |
+
"_ops.py": "7rjK4fYIChrffZ2ZB0dMDA9vndP9A42QMB50fnzK0IQ=",
|
| 16 |
+
"_paged_attention_metal_2e4b976.abi3.so": "9Z3pNBCjhqjgrfx6w3ZNbadOLeX/vnAOkUFmE+Rmx7o=",
|
| 17 |
"paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
|
| 18 |
"platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
|
| 19 |
}
|
build/torch212-metal-aarch64-darwin/metadata.json.sigstore
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHczCCBvmgAwIBAgIUSYLL8uWH9+0FatA+pRPR4aIGTyYwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNjE4MDcwNDI5WhcNMjYwNjE4MDcxNDI5WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnf3SYJu2rDsMvTVE9oRoQi15beptBWKjYhIyA5n+yu/68jKLaiGSUHAHowLruIQelihU5MGIVCb4gOc02h1ynKOCBhgwggYUMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUT28JVscFVGa4V2nW2SZCPCb8fcEwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wdQYDVR0RAQH/BGswaYZnaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL3NpZ24tb2xkLWJ1aWxkcy55YW1sQHJlZnMvaGVhZHMvbWFpbjA5BgorBgEEAYO/MAEBBCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMB8GCisGAQQBg78wAQIEEXdvcmtmbG93X2Rpc3BhdGNoMDYGCisGAQQBg78wAQMEKDhhNmJlN2JjNzc1NjVhZDY1YzhhZTJkZWI0NTY0ODJmZjZhYTUwZWQwHQYKKwYBBAGDvzABBAQPU2lnbiBvbGQgYnVpbGRzMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wdwYKKwYBBAGDvzABCQRpDGdodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3Mvc2lnbi1vbGQtYnVpbGRzLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoOGE2YmU3YmM3NzU2NWFkNjVjOGFlMmRlYjQ1NjQ4MmZmNmFhNTBlZDAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoOGE2YmU3YmM3NzU2NWFkNjVjOGFlMmRlYjQ1NjQ4MmZmNmFhNTBlZDAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzB3BgorBgEEAYO/MAESBGkMZ2h0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9zaWduLW9sZC1idWlsZHMueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABEwQqDCg4YTZiZTdiYzc3NTY1YWQ2NWM4YWUyZGViNDU2NDgyZmY2YWE1MGVkMCEGCisGAQQBg78wARQEEwwRd29ya2Zsb3dfZGlzcGF0Y2gwZAYKKwYBBAGDvzABFQRWDFRodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvYWN0aW9ucy9ydW5zLzI3NzQxNDY0ODQyL2F0dGVtcHRzLzEwFgYKKwYBBAGDvzABFgQIDAZwdWJsaWMwRgYKKwYBBAGDvzABGAQ4DDZyZXBvOmh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5OnJlZjpyZWZzL2hlYWRzL21haW4wgYoGCisGAQQB1nkCBAIEfAR6AHgAdgDdPTBqxscRMmMZHhyZZzcCokpeuN48rf+HinKALynujgAAAZ7Zi6hxAAAEAwBHMEUCIGOd9+65sIBWKdGkWoXIYbFNF0Pw61PLs6AfdKb6x9KWAiEAlbXR4IUiifdEtkwPofKR40WbaE6J1+QTsVESlNy2z4cwCgYIKoZIzj0EAwMDaAAwZQIxAJrhY2pYYS8q0LBEHOpcPzTZvvdTnBJQuUhsr2yzA4QIPle7llru0FXsGLTmYrCj/QIwC7oDCtt7tI2fEuMNoaSZdvT/FB9/gNfJ8gQOTn4mFnmOOAqhliUYZTrsNWb6XRYV"},"tlogEntries":[{"logIndex":"1857868655","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1781766269","inclusionPromise":{"signedEntryTimestamp":"MEMCH0NpOjWqdQHoJISqBLBn7gkIUkV26lnChwW6Q0XCoRMCIHjR0zhGIBlyNOSxxwuH4KZ2Eq3hQiVKg9CWAmdhEFmk"},"inclusionProof":{"logIndex":"1735964393","rootHash":"O40Ohtn2HbWVfr4EVP2Gpye5RlJrNEO+BN3poCJuu3g=","treeSize":"1735964415","hashes":["hTl+rEZUZZsT0eqk0J8AulMiAdD8c/pEVe/ndzubcx0=","YWZGumaDWxsRhLmhvpCgmwbx/kR48W/epaCfo8AMKO4=","ILaxyKPIdhd4cvQPik72vAkezFztegqTzD2bvpABAzk=","cR0heEUnAcrBw6pfMQBiUQN4TqM0UVppScCx6IO35ok=","Az61KpB5IzhL3d5v9qVcLcNVHJrAmioTjXeW0ohFwQ8=","kvOqIuosprNoWXqYtU9E4UMsyTCNnv9o3CsmMa6yMgo=","vAOZ/f9QfDoAlCUTMsubgB15egyjnYpVUQwEdsfDwrs=","wNAyrRrkn6xZMUv3azrGZOY7Ee+uDANXXBh7cHnqxdI=","JaITmQnq7R3bB5vb1XMKLzpJeOflMTzw1JYKhDuZpuI=","4Ny7LG2/j0rVg1AGsz2fgrmloV/gYS7SjP34oLW5enk=","IXi+glcGCVBbQnyKXRMBlk3Amu5oEucgBEZBG7p4X2o=","ZfHVieFZMuHiAb5B+XEd/hl6OF+K8Ke7Gj17e/gQNgI=","Uz3W676tGaFDolUTU8KKwxGjR9Jyau7jGEZBmJ3zdM4=","95goX8Iw4H4P6V4eHvRqTdVdViLbhEhsF6i7ICnz/+A=","sWDh7SjDHbJf3HWKGRxiURh6iIYrOzn4Zs37yIij6OA=","x7kXd4VRJvVmTHoSla2KyPQdKvGKDX26/7ST9OONR78=","U8wMiVDzFlmyqT7Nw1RSZYU9+fftsSkRhjpbyXnXUk8=","mqM7J+i75IpuD09QejiUBjeH85AZa+fSm4RXXFmj3lI=","72FC5FYLhxB4a4iiC956o0B/fT54ip4R41vsw2QBKtU=","lYGQ9ibwC8+smMkPQ6TchJm3H9Nc/aTYLfdRacGFChw=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1735964415\nO40Ohtn2HbWVfr4EVP2Gpye5RlJrNEO+BN3poCJuu3g=\n\n— rekor.sigstore.dev wNI9ajBFAiBJ6AOGAUISSHmZxYoZfH6tjeGPLZJ+BPXpq+o+IQKOPgIhAPZ9QPBz39nSLzkyNUhKUIf+In4+JlAzMyh/LokYPtSo\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI1NmU2OGY2NDQxMGM4YzZiMTg5YjFkOTYzZGQzZDMxMzhiNjg1YTFkYmQ4MWY5ZTM2YjhjOGU2NzhhOWNlOGVkIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJRytpU3dOc3lEOVlCZUEzeW9yM28xYklleStaM1RmWTVzbER4M09JaUk4ekFpQjZaWWFaVkRrWFVoNzBTUGNjVW1icnN0UXZ4elptTVE5OUFhSUVUdUVyeEE9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaGpla05EUW5adFowRjNTVUpCWjBsVlUxbE1URGgxVjBnNUt6QkdZWFJCSzNCU1VGSTBZVWxIVkhsWmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDVxUlRSTlJHTjNUa1JKTlZkb1kwNU5hbGwzVG1wRk5FMUVZM2hPUkVrMVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZ1WmpOVFdVcDFNbkpFYzAxMlZGWkZPVzlTYjFGcE1UVmlaWEIwUWxkTGFsbG9TWGtLUVRWdUszbDFMelk0YWt0TVlXbEhVMVZJUVVodmQweHlkVWxSWld4cGFGVTFUVWRKVmtOaU5HZFBZekF5YURGNWJrdFBRMEpvWjNkbloxbFZUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZVTWpoS0NsWnpZMFpXUjJFMFZqSnVWekpUV2tOUVEySTRabU5GZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJSUldVUldVakJTUVZGSUwwSkhjM2RoV1ZwdVlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU0wNXdXakkwZEdJeWVHdE1WMG94Q21GWGVHdGplVFUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTlVKbmIzSkNaMFZGUVZsUEwwMUJSVUpDUTNSdlpFaFNkMk42YjNZS1RETlNkbUV5Vm5WTWJVWnFaRWRzZG1KdVRYVmFNbXd3WVVoV2FXUllUbXhqYlU1MlltNVNiR0p1VVhWWk1qbDBUVUk0UjBOcGMwZEJVVkZDWnpjNGR3cEJVVWxGUlZoa2RtTnRkRzFpUnpreldESlNjR016UW1oa1IwNXZUVVJaUjBOcGMwZEJVVkZDWnpjNGQwRlJUVVZMUkdob1RtMUtiRTR5U21wT2VtTXhDazVxVm1oYVJGa3hXWHBvYUZwVVNtdGFWMGt3VGxSWk1FOUVTbTFhYWxwb1dWUlZkMXBYVVhkSVVWbExTM2RaUWtKQlIwUjJla0ZDUWtGUlVGVXliRzRLWW1sQ2RtSkhVV2RaYmxad1lrZFNlazFEYzBkRGFYTkhRVkZSUW1jM09IZEJVVlZGU0Zkb01Wb3laSEJpYldSdFdWZE9iRXd5ZEd4amJUVnNZa2hOZEFwWk1qbDBZbGhXZFdGWVVqVk5RakJIUTJselIwRlJVVUpuTnpoM1FWRlpSVVF6U214YWJrMTJZVWRXYUZwSVRYWmlWMFp3WW1wQk4wSm5iM0pDWjBWRkNrRlpUeTlOUVVWSlFrTXdUVXN5YURCa1NFSjZUMms0ZG1SSE9YSmFWelIxV1ZkT01HRlhPWFZqZVRWdVlWaFNiMlJYU2pGak1sWjVXVEk1ZFdSSFZuVUtaRU0xYW1JeU1IZGtkMWxMUzNkWlFrSkJSMFIyZWtGQ1ExRlNjRVJIWkc5a1NGSjNZM3B2ZGt3eVpIQmtSMmd4V1drMWFtSXlNSFpoU0ZadVdqSnNkUXBhTWxwb1dUSlZkbUV5Vm5saWJWWnpZM2t4YW1JeU1YUmtWelZ3WkVocmRreHRaSEJrUjJneFdXazVNMkl6U25KYWJYaDJaRE5OZG1NeWJHNWlhVEYyQ21KSFVYUlpibFp3WWtkU2VreHViR2hpVjNoQlkyMVdiV041T1c5YVYwWnJZM2s1ZEZsWGJIVk5SR2RIUTJselIwRlJVVUpuTnpoM1FWRnZSVXRuZDI4S1QwZEZNbGx0VlROWmJVMHpUbnBWTWs1WFJtdE9hbFpxVDBkR2JFMXRVbXhaYWxFeFRtcFJORTF0V20xT2JVWm9UbFJDYkZwRVFXSkNaMjl5UW1kRlJRcEJXVTh2VFVGRlRFSkJNRTFETTA1c1lrZFpkR0ZIT1hwa1IxWnJUVVZCUjBOcGMwZEJVVkZDWnpjNGQwRlJkMFZOWjNkM1lVaFNNR05JVFRaTWVUbHVDbUZZVW05a1YwbDFXVEk1ZEV3eWFERmFNbVJ3WW0xa2JWbFhUbXhNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk5SR2RIUTJselIwRlJVVUlLWnpjNGQwRlJNRVZMWjNkdlQwZEZNbGx0VlROWmJVMHpUbnBWTWs1WFJtdE9hbFpxVDBkR2JFMXRVbXhaYWxFeFRtcFJORTF0V20xT2JVWm9UbFJDYkFwYVJFRm1RbWR2Y2tKblJVVkJXVTh2VFVGRlQwSkNSVTFFTTBwc1dtNU5kbUZIVm1oYVNFMTJZbGRHY0dKcVFXRkNaMjl5UW1kRlJVRlpUeTlOUVVWUUNrSkJkMDFEYWtWM1RucEZNRTU2VlRGTmFtdDNUR2RaUzB0M1dVSkNRVWRFZG5wQlFrVkJVV2RFUWpWdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5Xb0tZakl3ZG1GSVZtNWFNbXgxV2pKYWFGa3lWWGRIUVZsTFMzZFpRa0pCUjBSMmVrRkNSVkZSUzBSQlozbE9WR041VFVSak1FMTZRak5DWjI5eVFtZEZSUXBCV1U4dlRVRkZVMEpIYTAxYU1tZ3daRWhDZWs5cE9IWmFNbXd3WVVoV2FVeHRUblppVXpsdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2Q2t4WFRuWmlWekV4WW0xc01HVlRPSFZhTW13d1lVaFdhVXd6WkhaamJYUnRZa2M1TTJONU9YcGhWMlIxVEZjNWMxcERNV2xrVjJ4eldraE5kV1ZYUm5RS1lrVkNlVnBYV25wTU1taHNXVmRTZWt3eU1XaGhWelIzVDBGWlMwdDNXVUpDUVVkRWRucEJRa1YzVVhGRVEyYzBXVlJhYVZwVVpHbFplbU16VGxSWk1RcFpWMUV5VGxkTk5GbFhWWGxhUjFacFRrUlZNazVFWjNsYWJWa3lXVmRGTVUxSFZtdE5RMFZIUTJselIwRlJVVUpuTnpoM1FWSlJSVVYzZDFKa01qbDVDbUV5V25OaU0yUm1Xa2RzZW1OSFJqQlpNbWQzV2tGWlMwdDNXVUpDUVVkRWRucEJRa1pSVWxkRVJsSnZaRWhTZDJONmIzWk1NbVJ3WkVkb01WbHBOV29LWWpJd2RtRklWbTVhTW14MVdqSmFhRmt5VlhaaE1sWjVZbTFXYzJONU1XcGlNakYwWkZjMWNHUklhM1paVjA0d1lWYzVkV041T1hsa1Z6VjZUSHBKTXdwT2VsRjRUa1JaTUU5RVVYbE1Na1l3WkVkV2RHTklVbnBNZWtWM1JtZFpTMHQzV1VKQ1FVZEVkbnBCUWtablVVbEVRVnAzWkZkS2MyRlhUWGRTWjFsTENrdDNXVUpDUVVkRWRucEJRa2RCVVRSRVJGcDVXbGhDZGs5dGFERmFNbVJ3WW0xa2JWbFhUbXhNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVUtUMjVLYkZwcWNIbGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMmRaYjBkRGFYTkhRVkZSUWpGdWEwTkNRVWxGWmtGU05rRklaMEZrWjBSa1VGUkNjUXA0YzJOU1RXMU5Xa2hvZVZwYWVtTkRiMnR3WlhWT05EaHlaaXRJYVc1TFFVeDViblZxWjBGQlFWbzNXbWsyYUhoQlFVRkZRWGRDU0UxRlZVTkpSMDlrQ2prck5qVnpTVUpYUzJSSGExZHZXRWxaWWtaT1JqQlFkell4VUV4ek5rRm1aRXRpTm5nNVMxZEJhVVZCYkdKWVVqUkpWV2xwWm1SRmRHdDNVRzltUzFJS05EQlhZbUZGTmtveEsxRlVjMVpGVTJ4T2VUSjZOR04zUTJkWlNVdHZXa2w2YWpCRlFYZE5SR0ZCUVhkYVVVbDRRVXB5YUZreWNGbFpVemh4TUV4Q1JRcElUM0JqVUhwVVduWjJaRlJ1UWtwUmRWVm9jM0l5ZVhwQk5GRkpVR3hsTjJ4c2NuVXdSbGh6UjB4VWJWbHlRMm92VVVsM1F6ZHZSRU4wZERkMFNUSm1Da1YxVFU1dllWTmFaSFpVTDBaQ09TOW5UbVpLT0dkUlQxUnVORzFHYm0xUFQwRnhhR3hwVlZsYVZISnpUbGRpTmxoU1dWWUtMUzB0TFMxRlRrUWdRMFZTVkVsR1NVTkJWRVV0TFMwdExRbz0ifX19fQ=="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyTADAgEAMIICwAYJKoZIhvcNAQcCoIICsTCCAq0CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQglBhtDt3ahyeICRKjP1voOUeYhWtV4cGTUIkBBXX21DsCFQDgnJP2abYuKy1DnnmqGR7wJC6sqhgPMjAyNjA2MTgwNzA0MjlaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHaMIIB1gIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDYxODA3MDQyOVowLwYJKoZIhvcNAQkEMSIEIHNsdso582ULCJqDyuTlqRX5aDEsxkl7hHGglFrfFGsxMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRmMGQCMGgdPix2BGZYKVBxb9KP+3v+2GAqfTVoPiDIpxnTv5fSyO0MG0nGkhZC/Q6fGbL8qgIwRlzWQCujP5Q9BJb4u1IzNvO8k3JhR551Dfl2cWh3+fPc2ieZ/X7k408uW0FgZb87"}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"VuaPZEEMjGsYmx2WPdPTE4toWh29gfnja4yOZ4qc6O0="},"signature":"MEQCIG+iSwNsyD9YBeA3yor3o1bIey+Z3TfY5slDx3OIiI8zAiB6ZYaZVDkXUh70SPccUmbrstQvxzZmMQ99AaIETuErxA=="}}
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHYDCCBuagAwIBAgIUCmVJUBR0FKVqJIqFOwxM+wUhUiEwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNzAzMTIxNjE1WhcNMjYwNzAzMTIyNjE1WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhdaQMs62lX3OCep1bIglXBI1TN6t/4F2CqGGB1GYQkJUyHi5OHvji3LOJeemm3EaqJeWXzARvguxk9Vrp2m8i6OCBgUwggYBMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUkWMKcNh/yWAJlJMsOvu0xSttwLcwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wbwYDVR0RAQH/BGUwY4ZhaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLW1hYy55YW1sQHJlZnMvaGVhZHMvbWFpbjA5BgorBgEEAYO/MAEBBCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMB8GCisGAQQBg78wAQIEEXdvcmtmbG93X2Rpc3BhdGNoMDYGCisGAQQBg78wAQMEKDJlNGI5NzYyMWU5Mzc5NzQxMzJmNTQzZGIyNTExMjY4MDZmOTRiYmUwGwYKKwYBBAGDvzABBAQNQnVpbGQgKG1hY09TKTArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMHEGCisGAQQBg78wAQkEYwxhaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLW1hYy55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAEKBCoMKDJlNGI5NzYyMWU5Mzc5NzQxMzJmNTQzZGIyNTExMjY4MDZmOTRiYmUwHQYKKwYBBAGDvzABCwQPDA1naXRodWItaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoMmU0Yjk3NjIxZTkzNzk3NDEzMmY1NDNkYjI1MTEyNjgwNmY5NGJiZTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBxBgorBgEEAYO/MAESBGMMYWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC1tYWMueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABEwQqDCgyZTRiOTc2MjFlOTM3OTc0MTMyZjU0M2RiMjUxMTI2ODA2Zjk0YmJlMCEGCisGAQQBg78wARQEEwwRd29ya2Zsb3dfZGlzcGF0Y2gwZAYKKwYBBAGDvzABFQRWDFRodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvYWN0aW9ucy9ydW5zLzI4NjU4NzY0OTgzL2F0dGVtcHRzLzEwFgYKKwYBBAGDvzABFgQIDAZwdWJsaWMwRgYKKwYBBAGDvzABGAQ4DDZyZXBvOmh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5OnJlZjpyZWZzL2hlYWRzL21haW4wgYkGCisGAQQB1nkCBAIEewR5AHcAdQDdPTBqxscRMmMZHhyZZzcCokpeuN48rf+HinKALynujgAAAZ8n6Hz6AAAEAwBGMEQCIH9fylaCVIfT7ztzokWEsLPv8XoDSOiIFup0IbJdqy15AiARIKIoujSn9mz+EWmRvWpuIHXx5UcRNdo/Zgbf3tI0QTAKBggqhkjOPQQDAwNoADBlAjEAtM4V3W/kF27KeFN9X+zSiYk6N4BkGN+4XPwYyed3rRVTYUBkxLuB0ecF0WgjWrRnAjB9l54j2dPOxcR7yl4sik/W2RKRQh5vaoDv5ymjKB/rcBKmzbz94w+8cn5Zm1F9wMs="},"tlogEntries":[{"logIndex":"2060267763","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1783080975","inclusionPromise":{"signedEntryTimestamp":"MEUCIQCrsxt+jDqclFyRLc9GURKpiP5KFSLh8c1mKcIoJ5RZcAIgIGOtSvEmr5LuptUGSa8eCBv7g51tChZx6rrlXujggHg="},"inclusionProof":{"logIndex":"1938363501","rootHash":"OADtyhtky7L83sBKSTKOfmy5b5rXMbfELvyJ8Q5BXac=","treeSize":"1938363531","hashes":["6xOpv3RVO5gRz3+3i1Tg/ggcMBMHF7Xo0yBnv7SBxPI=","duD7R1wxT2Fvu0TPKXd1uQyNHIT2qUO3AoV2tk8pyGg=","IpWEoDukv62JL5wDVXtYSncgvhBT31d1d+JvT94Dqq8=","X5mFqWp8yDpUx0ZGaSXI6frwOuWnLvol1hT8pmwtTDc=","KNeOZXbZBPEBVVllSeE21YlidC4ocnenAgUp01VvFsQ=","Fcy9kekFEmb7VmNYrij2YlW98XZZ6nI6YSXbipKl52k=","ghP5hiLOILCSDKEFBzmlHYng7pI9OPh5gdc6MO195Cw=","hvnJcEVY6Mft1gP+QGACm6/TEPwE6bv1CeLz8eRnhOg=","WxhZJZROR2SFjAHIBlLDQrg4nV5XovUGe1/LYYR7dao=","Ls8uNdg/NbE4Cx0zOr5LKZynGmCJWdW7DLxN/yUCrZY=","6W1F1Pk0RaFwik1RwBLV0cTboqGj2pwEQDxPXzlBg64=","7t7nfpRXFFwOWiZ7hqJrJVEhGZwD31UptO0/dy5iWfI=","RIZjwQJv61lwM5JOP8iNT/RxKPr522/etVqxVBWn7KA=","b69YlhA5qlDwN70us4bq9ysnikE1ulA7EwKBTb+atY0=","LM7F5iwbk8jG29X4FwpkCN6BqDCfuNQTlz5CyQWt87s=","+/VZ56MsIPxMiyLAodzKXo5TEWdQp36z89qLhpzloAo=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1938363531\nOADtyhtky7L83sBKSTKOfmy5b5rXMbfELvyJ8Q5BXac=\n\n— rekor.sigstore.dev wNI9ajBEAiB6fOnL9g/30mp18icknCExPdRRHEmaLRIqjj8kJMXUTQIgb6/uMEMK2Aum38vKFt4luA4Df69cQx5vgzMJ5feaL6g=\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJhZWE3MGM1NGIwOWQwODljZTY5OTE5YmE2MGQ1YjAxNDM0Nzk3ZmU2YjU1MGMxZWQ4YTFhMGVhMDU4OTcxYjA3In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJRTZlc2hCLy9IelhEK0h6M250RlRCdXpYRHVnaUowZEVGVFBKZzJRaGJKaUFpQkU2Tkp5RE9TMm05Lzl3Y0xsa2k1alVUQjVYZERJQmxJeVdObzU4WTJEaXc9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFpSRU5EUW5WaFowRjNTVUpCWjBsVlEyMVdTbFZDVWpCR1MxWnhTa2x4Ums5M2VFMHJkMVZvVldsRmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDU2UVhwTlZFbDRUbXBGTVZkb1kwNU5hbGwzVG5wQmVrMVVTWGxPYWtVeFYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZvWkdGUlRYTTJNbXhZTTA5RFpYQXhZa2xuYkZoQ1NURlVUalowTHpSR01rTnhSMGNLUWpGSFdWRnJTbFY1U0drMVQwaDJhbWt6VEU5S1pXVnRiVE5GWVhGS1pWZFlla0ZTZG1kMWVHczVWbkp3TW0wNGFUWlBRMEpuVlhkbloxbENUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZyVjAxTENtTk9hQzk1VjBGS2JFcE5jMDkyZFRCNFUzUjBkMHhqZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJKM1dVUldVakJTUVZGSUwwSkhWWGRaTkZwb1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4WE1XaFplVFUxQ2xsWE1YTlJTRXBzV201TmRtRkhWbWhhU0UxMllsZEdjR0pxUVRWQ1oyOXlRbWRGUlVGWlR5OU5RVVZDUWtOMGIyUklVbmRqZW05MlRETlNkbUV5Vm5VS1RHMUdhbVJIYkhaaWJrMTFXakpzTUdGSVZtbGtXRTVzWTIxT2RtSnVVbXhpYmxGMVdUSTVkRTFDT0VkRGFYTkhRVkZSUW1jM09IZEJVVWxGUlZoa2RncGpiWFJ0WWtjNU0xZ3lVbkJqTTBKb1pFZE9iMDFFV1VkRGFYTkhRVkZSUW1jM09IZEJVVTFGUzBSS2JFNUhTVFZPZWxsNVRWZFZOVTE2WXpWT2VsRjRDazE2U20xT1ZGRjZXa2RKZVU1VVJYaE5hbGswVFVSYWJVOVVVbWxaYlZWM1IzZFpTMHQzV1VKQ1FVZEVkbnBCUWtKQlVVNVJibFp3WWtkUlowdEhNV2dLV1RBNVZFdFVRWEpDWjI5eVFtZEZSVUZaVHk5TlFVVkdRa0l4YjJSWFpHNWhWelZ1V20xR2FscFRPWEphV0VwMVdsZDRla3hYVG5aaVZ6RXhZbTFzTUFwbFZFRmtRbWR2Y2tKblJVVkJXVTh2VFVGRlIwSkJPWGxhVjFwNlRESm9iRmxYVW5wTU1qRm9ZVmMwZDA5M1dVdExkMWxDUWtGSFJIWjZRVUpEUVZGMENrUkRkRzlrU0ZKM1kzcHZka3d6VW5aaE1sWjFURzFHYW1SSGJIWmliazExV2pKc01HRklWbWxrV0U1c1kyMU9kbUp1VW14aWJsRjFXVEk1ZEUxSVJVY0tRMmx6UjBGUlVVSm5OemgzUVZGclJWbDNlR2hoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiQXBqYlRWc1lraE5kRmt5T1hSaVdGWjFZVmhTTlV4NU5XNWhXRkp2WkZkSmRtUXlPWGxoTWxwellqTmtla3d5U2pGaFYzaHJURmN4YUZsNU5UVlpWekZ6Q2xGSVNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJORUpuYjNKQ1owVkZRVmxQTDAxQlJVdENRMjlOUzBSS2JFNUhTVFZPZWxsNVRWZFZOVTE2WXpVS1RucFJlRTE2U20xT1ZGRjZXa2RKZVU1VVJYaE5hbGswVFVSYWJVOVVVbWxaYlZWM1NGRlpTMHQzV1VKQ1FVZEVkbnBCUWtOM1VWQkVRVEZ1WVZoU2J3cGtWMGwwWVVjNWVtUkhWbXROUlVGSFEybHpSMEZSVVVKbk56aDNRVkYzUlUxbmQzZGhTRkl3WTBoTk5reDVPVzVoV0ZKdlpGZEpkVmt5T1hSTU1tZ3hDbG95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFJpV0ZaMVlWaFNOVTFFWjBkRGFYTkhRVkZSUW1jM09IZEJVVEJGUzJkM2IwMXRWVEFLV1dwck0wNXFTWGhhVkd0NlRucHJNMDVFUlhwTmJWa3hUa1JPYTFscVNURk5WRVY1VG1wbmQwNXRXVFZPUjBwcFdsUkJaa0puYjNKQ1owVkZRVmxQTHdwTlFVVlBRa0pGVFVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJZVUpuYjNKQ1owVkZRVmxQTDAxQlJWQkNRWGROUTJwRmQwNTZSVEJPZWxVeENrMXFhM2RNWjFsTFMzZFpRa0pCUjBSMmVrRkNSVUZSWjBSQ05XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZDBkQldVdExkMWxDUWtGSFJIWjZRVUpGVVZGTFJFRm5lVTVVWTNsTlJHTXdUWHBDZUVKbmIzSkNaMFZGUVZsUEwwMUJSVk5DUjAxTldWZG9NQXBrU0VKNlQyazRkbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemgxQ2xveWJEQmhTRlpwVEROa2RtTnRkRzFpUnprelkzazVhV1JYYkhOYVF6RjBXVmROZFdWWFJuUmlSVUo1V2xkYWVrd3lhR3haVjFKNlRESXhhR0ZYTkhjS1QwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWM1VYRkVRMmQ1V2xSU2FVOVVZekpOYWtac1QxUk5NMDlVWXpCTlZFMTVXbXBWTUUweVVtbE5hbFY0VFZSSk1ncFBSRUV5V21wck1GbHRTbXhOUTBWSFEybHpSMEZSVVVKbk56aDNRVkpSUlVWM2QxSmtNamw1WVRKYWMySXpaR1phUjJ4NlkwZEdNRmt5WjNkYVFWbExDa3QzV1VKQ1FVZEVkbnBCUWtaUlVsZEVSbEp2WkVoU2QyTjZiM1pNTW1Sd1pFZG9NVmxwTldwaU1qQjJZVWhXYmxveWJIVmFNbHBvV1RKVmRtRXlWbmtLWW0xV2MyTjVNV3BpTWpGMFpGYzFjR1JJYTNaWlYwNHdZVmM1ZFdONU9YbGtWelY2VEhwSk5FNXFWVFJPZWxrd1QxUm5la3d5UmpCa1IxWjBZMGhTZWdwTWVrVjNSbWRaUzB0M1dVSkNRVWRFZG5wQlFrWm5VVWxFUVZwM1pGZEtjMkZYVFhkU1oxbExTM2RaUWtKQlIwUjJla0ZDUjBGUk5FUkVXbmxhV0VKMkNrOXRhREZhTW1Sd1ltMWtiVmxYVG14TU1uUnNZMjAxYkdKSVRYUlpNamwwWWxoV2RXRllValZQYmtwc1dtcHdlVnBYV25wTU1taHNXVmRTZWt3eU1XZ0tZVmMwZDJkWmEwZERhWE5IUVZGUlFqRnVhME5DUVVsRlpYZFNOVUZJWTBGa1VVUmtVRlJDY1hoelkxSk5iVTFhU0doNVdscDZZME52YTNCbGRVNDBPQXB5Wml0SWFXNUxRVXg1Ym5WcVowRkJRVm80YmpaSWVqWkJRVUZGUVhkQ1IwMUZVVU5KU0RsbWVXeGhRMVpKWmxRM2VuUjZiMnRYUlhOTVVIWTRXRzlFQ2xOUGFVbEdkWEF3U1dKS1pIRjVNVFZCYVVGU1NVdEpiM1ZxVTI0NWJYb3JSVmR0VW5aWGNIVkpTRmg0TlZWalVrNWtieTlhWjJKbU0zUkpNRkZVUVVzS1FtZG5jV2hyYWs5UVVWRkVRWGRPYjBGRVFteEJha1ZCZEUwMFZqTlhMMnRHTWpkTFpVWk9PVmdyZWxOcFdXczJUalJDYTBkT0t6UllVSGRaZVdWa013cHlVbFpVV1ZWQ2EzaE1kVUl3WldOR01GZG5hbGR5VW01QmFrSTViRFUwYWpKa1VFOTRZMUkzZVd3MGMybHJMMWN5VWt0U1VXZzFkbUZ2UkhZMWVXMXFDa3RDTDNKalFrdHRlbUo2T1RSM0t6aGpialZhYlRGR09YZE5jejBLTFMwdExTMUZUa1FnUTBWU1ZFbEdTVU5CVkVVdExTMHRMUW89In19fX0="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyzADAgEAMIICwgYJKoZIhvcNAQcCoIICszCCAq8CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQg/X8BxWx0vz60TRFg/21aNghYh07YZlhga9GBLiniblkCFQD09WWxHsxj12YNp2RCJcKfQDWFZBgPMjAyNjA3MDMxMjE2MTVaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHcMIIB2AIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDcwMzEyMTYxNVowLwYJKoZIhvcNAQkEMSIEIM/1m3xaA7B3MbzkUDc36cm6sM2oIt60+BhdHt7uVM5qMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRoMGYCMQDy2dEkKf22bk/RB4PKjjhgt6R0FSgZ79mDQJl4nvxO1JGezsOt2b3eQnhuk4MhYqUCMQDIHht0CcyaK9D3hB2c0Aawl0GVLpuThhvyfrTaPro+KHQOZhPwqKjSmrSw0M+Dn/c="}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"rqcMVLCdCJzmmRm6YNWwFDR5f+a1UMHtihoOoFiXGwc="},"signature":"MEQCIE6eshB//HzXD+Hz3ntFTBuzXDugiJ0dEFTPJg2QhbJiAiBE6NJyDOS2m9/9wcLlki5jUTB5XdDIBlIyWNo58Y2Diw=="}}
|
build/torch213-metal-aarch64-darwin/__init__.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from ._custom_ops import (
|
| 2 |
+
convert_fp8,
|
| 3 |
+
copy_blocks,
|
| 4 |
+
paged_attention_v1,
|
| 5 |
+
paged_attention_v2,
|
| 6 |
+
reshape_and_cache,
|
| 7 |
+
reshape_and_cache_flash,
|
| 8 |
+
swap_blocks,
|
| 9 |
+
)
|
| 10 |
+
from ._ops import ops
|
| 11 |
+
|
| 12 |
+
__all__ = [
|
| 13 |
+
"convert_fp8",
|
| 14 |
+
"copy_blocks",
|
| 15 |
+
"ops",
|
| 16 |
+
"paged_attention_v1",
|
| 17 |
+
"paged_attention_v2",
|
| 18 |
+
"reshape_and_cache",
|
| 19 |
+
"reshape_and_cache_flash",
|
| 20 |
+
"swap_blocks",
|
| 21 |
+
]
|
build/torch213-metal-aarch64-darwin/_custom_ops.py
ADDED
|
@@ -0,0 +1,173 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from typing import List, Optional
|
| 2 |
+
|
| 3 |
+
import torch
|
| 4 |
+
|
| 5 |
+
from ._ops import ops
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
# page attention ops
|
| 9 |
+
def paged_attention_v1(
|
| 10 |
+
out: torch.Tensor,
|
| 11 |
+
query: torch.Tensor,
|
| 12 |
+
key_cache: torch.Tensor,
|
| 13 |
+
value_cache: torch.Tensor,
|
| 14 |
+
num_kv_heads: int,
|
| 15 |
+
scale: float,
|
| 16 |
+
block_tables: torch.Tensor,
|
| 17 |
+
seq_lens: torch.Tensor,
|
| 18 |
+
block_size: int,
|
| 19 |
+
max_seq_len: int,
|
| 20 |
+
alibi_slopes: Optional[torch.Tensor],
|
| 21 |
+
kv_cache_dtype: str,
|
| 22 |
+
k_scale: float,
|
| 23 |
+
v_scale: float,
|
| 24 |
+
tp_rank: int = 0,
|
| 25 |
+
blocksparse_local_blocks: int = 0,
|
| 26 |
+
blocksparse_vert_stride: int = 0,
|
| 27 |
+
blocksparse_block_size: int = 64,
|
| 28 |
+
blocksparse_head_sliding_step: int = 0,
|
| 29 |
+
) -> None:
|
| 30 |
+
ops.paged_attention_v1(
|
| 31 |
+
out,
|
| 32 |
+
query,
|
| 33 |
+
key_cache,
|
| 34 |
+
value_cache,
|
| 35 |
+
num_kv_heads,
|
| 36 |
+
scale,
|
| 37 |
+
block_tables,
|
| 38 |
+
seq_lens,
|
| 39 |
+
block_size,
|
| 40 |
+
max_seq_len,
|
| 41 |
+
alibi_slopes,
|
| 42 |
+
kv_cache_dtype,
|
| 43 |
+
k_scale,
|
| 44 |
+
v_scale,
|
| 45 |
+
tp_rank,
|
| 46 |
+
blocksparse_local_blocks,
|
| 47 |
+
blocksparse_vert_stride,
|
| 48 |
+
blocksparse_block_size,
|
| 49 |
+
blocksparse_head_sliding_step,
|
| 50 |
+
)
|
| 51 |
+
|
| 52 |
+
|
| 53 |
+
def paged_attention_v2(
|
| 54 |
+
out: torch.Tensor,
|
| 55 |
+
exp_sum: torch.Tensor,
|
| 56 |
+
max_logits: torch.Tensor,
|
| 57 |
+
tmp_out: torch.Tensor,
|
| 58 |
+
query: torch.Tensor,
|
| 59 |
+
key_cache: torch.Tensor,
|
| 60 |
+
value_cache: torch.Tensor,
|
| 61 |
+
num_kv_heads: int,
|
| 62 |
+
scale: float,
|
| 63 |
+
block_tables: torch.Tensor,
|
| 64 |
+
seq_lens: torch.Tensor,
|
| 65 |
+
block_size: int,
|
| 66 |
+
max_seq_len: int,
|
| 67 |
+
alibi_slopes: Optional[torch.Tensor],
|
| 68 |
+
kv_cache_dtype: str,
|
| 69 |
+
k_scale: float,
|
| 70 |
+
v_scale: float,
|
| 71 |
+
tp_rank: int = 0,
|
| 72 |
+
blocksparse_local_blocks: int = 0,
|
| 73 |
+
blocksparse_vert_stride: int = 0,
|
| 74 |
+
blocksparse_block_size: int = 64,
|
| 75 |
+
blocksparse_head_sliding_step: int = 0,
|
| 76 |
+
) -> None:
|
| 77 |
+
ops.paged_attention_v2(
|
| 78 |
+
out,
|
| 79 |
+
exp_sum,
|
| 80 |
+
max_logits,
|
| 81 |
+
tmp_out,
|
| 82 |
+
query,
|
| 83 |
+
key_cache,
|
| 84 |
+
value_cache,
|
| 85 |
+
num_kv_heads,
|
| 86 |
+
scale,
|
| 87 |
+
block_tables,
|
| 88 |
+
seq_lens,
|
| 89 |
+
block_size,
|
| 90 |
+
max_seq_len,
|
| 91 |
+
alibi_slopes,
|
| 92 |
+
kv_cache_dtype,
|
| 93 |
+
k_scale,
|
| 94 |
+
v_scale,
|
| 95 |
+
tp_rank,
|
| 96 |
+
blocksparse_local_blocks,
|
| 97 |
+
blocksparse_vert_stride,
|
| 98 |
+
blocksparse_block_size,
|
| 99 |
+
blocksparse_head_sliding_step,
|
| 100 |
+
)
|
| 101 |
+
|
| 102 |
+
|
| 103 |
+
def reshape_and_cache(
|
| 104 |
+
key: torch.Tensor,
|
| 105 |
+
value: torch.Tensor,
|
| 106 |
+
key_cache: torch.Tensor,
|
| 107 |
+
value_cache: torch.Tensor,
|
| 108 |
+
slot_mapping: torch.Tensor,
|
| 109 |
+
kv_cache_dtype: str,
|
| 110 |
+
k_scale: float,
|
| 111 |
+
v_scale: float,
|
| 112 |
+
) -> None:
|
| 113 |
+
ops.reshape_and_cache(
|
| 114 |
+
key,
|
| 115 |
+
value,
|
| 116 |
+
key_cache,
|
| 117 |
+
value_cache,
|
| 118 |
+
slot_mapping,
|
| 119 |
+
kv_cache_dtype,
|
| 120 |
+
k_scale,
|
| 121 |
+
v_scale,
|
| 122 |
+
)
|
| 123 |
+
|
| 124 |
+
|
| 125 |
+
def reshape_and_cache_flash(
|
| 126 |
+
key: torch.Tensor,
|
| 127 |
+
value: torch.Tensor,
|
| 128 |
+
key_cache: torch.Tensor,
|
| 129 |
+
value_cache: torch.Tensor,
|
| 130 |
+
slot_mapping: torch.Tensor,
|
| 131 |
+
kv_cache_dtype: str,
|
| 132 |
+
k_scale: torch.Tensor,
|
| 133 |
+
v_scale: torch.Tensor,
|
| 134 |
+
) -> None:
|
| 135 |
+
ops.reshape_and_cache_flash(
|
| 136 |
+
key,
|
| 137 |
+
value,
|
| 138 |
+
key_cache,
|
| 139 |
+
value_cache,
|
| 140 |
+
slot_mapping,
|
| 141 |
+
kv_cache_dtype,
|
| 142 |
+
k_scale,
|
| 143 |
+
v_scale,
|
| 144 |
+
)
|
| 145 |
+
|
| 146 |
+
|
| 147 |
+
def copy_blocks(
|
| 148 |
+
key_caches: List[torch.Tensor],
|
| 149 |
+
value_caches: List[torch.Tensor],
|
| 150 |
+
block_mapping: torch.Tensor,
|
| 151 |
+
) -> None:
|
| 152 |
+
ops.copy_blocks(key_caches, value_caches, block_mapping)
|
| 153 |
+
|
| 154 |
+
|
| 155 |
+
def swap_blocks(
|
| 156 |
+
src: torch.Tensor, dst: torch.Tensor, block_mapping: torch.Tensor
|
| 157 |
+
) -> None:
|
| 158 |
+
ops.swap_blocks(src, dst, block_mapping)
|
| 159 |
+
|
| 160 |
+
|
| 161 |
+
def convert_fp8(
|
| 162 |
+
output: torch.Tensor, input: torch.Tensor, scale: float = 1.0, kv_dtype: str = "fp8"
|
| 163 |
+
) -> None:
|
| 164 |
+
ops.convert_fp8(output, input, scale, kv_dtype)
|
| 165 |
+
|
| 166 |
+
|
| 167 |
+
__all__ = [
|
| 168 |
+
"convert_fp8",
|
| 169 |
+
"paged_attention_v1",
|
| 170 |
+
"paged_attention_v2",
|
| 171 |
+
"reshape_and_cache",
|
| 172 |
+
"copy_blocks",
|
| 173 |
+
]
|
build/torch213-metal-aarch64-darwin/_ops.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
from . import _paged_attention_metal_2e4b976
|
| 3 |
+
ops = torch.ops._paged_attention_metal_2e4b976
|
| 4 |
+
|
| 5 |
+
def add_op_namespace_prefix(op_name: str):
|
| 6 |
+
"""
|
| 7 |
+
Prefix op by namespace.
|
| 8 |
+
"""
|
| 9 |
+
return f"_paged_attention_metal_2e4b976::{op_name}"
|
build/torch213-metal-aarch64-darwin/_paged_attention_metal_2e4b976.abi3.so
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0ba2a37c22ca26a5de807a32aba0149b6ef5050002c59d85371a80979015b099
|
| 3 |
+
size 14892968
|
build/torch213-metal-aarch64-darwin/metadata.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "paged-attention",
|
| 3 |
+
"id": "_paged_attention_metal_2e4b976",
|
| 4 |
+
"version": 1,
|
| 5 |
+
"license": "Apache-2.0",
|
| 6 |
+
"python-depends": [],
|
| 7 |
+
"backend": {
|
| 8 |
+
"type": "metal"
|
| 9 |
+
},
|
| 10 |
+
"digest": {
|
| 11 |
+
"algorithm": "sha256",
|
| 12 |
+
"files": {
|
| 13 |
+
"__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
|
| 14 |
+
"_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
|
| 15 |
+
"_ops.py": "7rjK4fYIChrffZ2ZB0dMDA9vndP9A42QMB50fnzK0IQ=",
|
| 16 |
+
"_paged_attention_metal_2e4b976.abi3.so": "C6KjfCLKJqXegHoyq6AUm271BQACxZ2FNxqAl5AVsJk=",
|
| 17 |
+
"paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
|
| 18 |
+
"platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
|
| 19 |
+
}
|
| 20 |
+
}
|
| 21 |
+
}
|
build/torch213-metal-aarch64-darwin/metadata.json.sigstore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHYjCCBuegAwIBAgIUXoFXfO/+ZgyTduiW6HitNoGsfQcwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNzAzMTIxNjE3WhcNMjYwNzAzMTIyNjE3WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtv/a68UULg/rDoMqgvp4CuovA8usBasAwspimODEV3G5Tm0jVCO/44UInpyj93GdJt3EUj/kYW2M25qth/QRXaOCBgYwggYCMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUygftjAKYjK+DtQcXvKsPF3cLcUgwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wbwYDVR0RAQH/BGUwY4ZhaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLW1hYy55YW1sQHJlZnMvaGVhZHMvbWFpbjA5BgorBgEEAYO/MAEBBCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMB8GCisGAQQBg78wAQIEEXdvcmtmbG93X2Rpc3BhdGNoMDYGCisGAQQBg78wAQMEKDJlNGI5NzYyMWU5Mzc5NzQxMzJmNTQzZGIyNTExMjY4MDZmOTRiYmUwGwYKKwYBBAGDvzABBAQNQnVpbGQgKG1hY09TKTArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMHEGCisGAQQBg78wAQkEYwxhaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLW1hYy55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAEKBCoMKDJlNGI5NzYyMWU5Mzc5NzQxMzJmNTQzZGIyNTExMjY4MDZmOTRiYmUwHQYKKwYBBAGDvzABCwQPDA1naXRodWItaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoMmU0Yjk3NjIxZTkzNzk3NDEzMmY1NDNkYjI1MTEyNjgwNmY5NGJiZTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBxBgorBgEEAYO/MAESBGMMYWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC1tYWMueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABEwQqDCgyZTRiOTc2MjFlOTM3OTc0MTMyZjU0M2RiMjUxMTI2ODA2Zjk0YmJlMCEGCisGAQQBg78wARQEEwwRd29ya2Zsb3dfZGlzcGF0Y2gwZAYKKwYBBAGDvzABFQRWDFRodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvYWN0aW9ucy9ydW5zLzI4NjU4NzY0OTgzL2F0dGVtcHRzLzEwFgYKKwYBBAGDvzABFgQIDAZwdWJsaWMwRgYKKwYBBAGDvzABGAQ4DDZyZXBvOmh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5OnJlZjpyZWZzL2hlYWRzL21haW4wgYoGCisGAQQB1nkCBAIEfAR6AHgAdgDdPTBqxscRMmMZHhyZZzcCokpeuN48rf+HinKALynujgAAAZ8n6IKRAAAEAwBHMEUCIGHFVI/spcodLOK1IN7BGN/3kTPa62Raq4Pxf8PAyRNNAiEAz6pXk79Qaibtv8K5JWLKVPC9IErPDDREjPcoVa4cMSQwCgYIKoZIzj0EAwMDaQAwZgIxAO9oMwwwzRgXO/8kOIiNOcHKKu7Jch5ArWTd5SELGBPsiP3lAObxu5wVuZGvu/qcNwIxAIEyzkHfLDgrZFkIjhwjmxPbUULrM4U/Q7NMJYPDtvL1fqIwhvqI6FbxP0MDG7t+pw=="},"tlogEntries":[{"logIndex":"2060268011","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1783080977","inclusionPromise":{"signedEntryTimestamp":"MEQCICkHqO/guZMrRordZ4aJhyOm/HPln9PZ2jhsyA4caDfUAiBIG6MkyYfEv+vImbpshGDrh6RTHpPheUV1e6YzeYNdhA=="},"inclusionProof":{"logIndex":"1938363749","rootHash":"3U1BZvYSBI1mX70e302Q3me0o8CWR7BDlkq5Zl4gmYk=","treeSize":"1938363771","hashes":["/sMlt2d4ZwoQKUGtk+r7/xIyiTdU7PWlx6c1kZZsC4A=","JziK/mn+uP9GrDBrwDf2G9uZMNWO+eR9r94eiV7hnVw=","pUIRQ0xgYrkvm2YNOo2+s/VfjqMpwFHFsiv/7FU303M=","goSuHlFzIPkA2zxbmb318IIMKPFtK6jve1zzKu7WJVo=","i6+rSiRTl6hLpcMIfXxYQgDY6J5ZaBX+HAClQyDvajU=","jeo6NMNrfYf4B1xT1HKja730ipZib5XJDUN8W3wOvS4=","jMoEY2a5H8M0bWcHLoEoBiv78shC2yedQM0mBysNkoQ=","dbpJbojn9xsOVs9hr53xcNenq1/32rFjtTOBm1J/EzM=","WxhZJZROR2SFjAHIBlLDQrg4nV5XovUGe1/LYYR7dao=","Ls8uNdg/NbE4Cx0zOr5LKZynGmCJWdW7DLxN/yUCrZY=","6W1F1Pk0RaFwik1RwBLV0cTboqGj2pwEQDxPXzlBg64=","7t7nfpRXFFwOWiZ7hqJrJVEhGZwD31UptO0/dy5iWfI=","RIZjwQJv61lwM5JOP8iNT/RxKPr522/etVqxVBWn7KA=","b69YlhA5qlDwN70us4bq9ysnikE1ulA7EwKBTb+atY0=","LM7F5iwbk8jG29X4FwpkCN6BqDCfuNQTlz5CyQWt87s=","+/VZ56MsIPxMiyLAodzKXo5TEWdQp36z89qLhpzloAo=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1938363771\n3U1BZvYSBI1mX70e302Q3me0o8CWR7BDlkq5Zl4gmYk=\n\n— rekor.sigstore.dev wNI9ajBFAiEAkEMTReoNTtJz2PPiP838dULWkyT9litTAjjl8RByGPsCIH0fdZUcb3MxdD4NT+GCEI+5rehnfluKcJL74259ekP7\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiIyODYzYjhjOTVkZWU2MTIxYTE5NWUyZGQzNmRkODk2NDQxYmE3MDExODgxMjA0MDUxNDIyZGFhZjlkNzBlZGQyIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJRDN1blBsbFhnL2xmS2JFK2JBSXVSZUxSdWdablBJS3Zwc3BDTHNIVHJFK0FpRUEwVnc1MTZlNWkvbkwvTmVGSnd0WWFIZjQrQUc2YWtOeER2djQ3M3l0aTNvPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFpha05EUW5WbFowRjNTVUpCWjBsVldHOUdXR1pQTHl0YVozbFVaSFZwVnpaSWFYUk9iMGR6WmxGamQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDU2UVhwTlZFbDRUbXBGTTFkb1kwNU5hbGwzVG5wQmVrMVVTWGxPYWtVelYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVYwZGk5aE5qaFZWVXhuTDNKRWIwMXhaM1p3TkVOMWIzWkJPSFZ6UW1GelFYZHpjR2tLYlU5RVJWWXpSelZVYlRCcVZrTlBMelEwVlVsdWNIbHFPVE5IWkVwME0wVlZhaTlyV1ZjeVRUSTFjWFJvTDFGU1dHRlBRMEpuV1hkbloxbERUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlY1WjJaMENtcEJTMWxxU3l0RWRGRmpXSFpMYzFCR00yTk1ZMVZuZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJKM1dVUldVakJTUVZGSUwwSkhWWGRaTkZwb1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4WE1XaFplVFUxQ2xsWE1YTlJTRXBzV201TmRtRkhWbWhhU0UxMllsZEdjR0pxUVRWQ1oyOXlRbWRGUlVGWlR5OU5RVVZDUWtOMGIyUklVbmRqZW05MlRETlNkbUV5Vm5VS1RHMUdhbVJIYkhaaWJrMTFXakpzTUdGSVZtbGtXRTVzWTIxT2RtSnVVbXhpYmxGMVdUSTVkRTFDT0VkRGFYTkhRVkZSUW1jM09IZEJVVWxGUlZoa2RncGpiWFJ0WWtjNU0xZ3lVbkJqTTBKb1pFZE9iMDFFV1VkRGFYTkhRVkZSUW1jM09IZEJVVTFGUzBSS2JFNUhTVFZPZWxsNVRWZFZOVTE2WXpWT2VsRjRDazE2U20xT1ZGRjZXa2RKZVU1VVJYaE5hbGswVFVSYWJVOVVVbWxaYlZWM1IzZFpTMHQzV1VKQ1FVZEVkbnBCUWtKQlVVNVJibFp3WWtkUlowdEhNV2dLV1RBNVZFdFVRWEpDWjI5eVFtZEZSVUZaVHk5TlFVVkdRa0l4YjJSWFpHNWhWelZ1V20xR2FscFRPWEphV0VwMVdsZDRla3hYVG5aaVZ6RXhZbTFzTUFwbFZFRmtRbWR2Y2tKblJVVkJXVTh2VFVGRlIwSkJPWGxhVjFwNlRESm9iRmxYVW5wTU1qRm9ZVmMwZDA5M1dVdExkMWxDUWtGSFJIWjZRVUpEUVZGMENrUkRkRzlrU0ZKM1kzcHZka3d6VW5aaE1sWjFURzFHYW1SSGJIWmliazExV2pKc01HRklWbWxrV0U1c1kyMU9kbUp1VW14aWJsRjFXVEk1ZEUxSVJVY0tRMmx6UjBGUlVVSm5OemgzUVZGclJWbDNlR2hoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiQXBqYlRWc1lraE5kRmt5T1hSaVdGWjFZVmhTTlV4NU5XNWhXRkp2WkZkSmRtUXlPWGxoTWxwellqTmtla3d5U2pGaFYzaHJURmN4YUZsNU5UVlpWekZ6Q2xGSVNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJORUpuYjNKQ1owVkZRVmxQTDAxQlJVdENRMjlOUzBSS2JFNUhTVFZPZWxsNVRWZFZOVTE2WXpVS1RucFJlRTE2U20xT1ZGRjZXa2RKZVU1VVJYaE5hbGswVFVSYWJVOVVVbWxaYlZWM1NGRlpTMHQzV1VKQ1FVZEVkbnBCUWtOM1VWQkVRVEZ1WVZoU2J3cGtWMGwwWVVjNWVtUkhWbXROUlVGSFEybHpSMEZSVVVKbk56aDNRVkYzUlUxbmQzZGhTRkl3WTBoTk5reDVPVzVoV0ZKdlpGZEpkVmt5T1hSTU1tZ3hDbG95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFJpV0ZaMVlWaFNOVTFFWjBkRGFYTkhRVkZSUW1jM09IZEJVVEJGUzJkM2IwMXRWVEFLV1dwck0wNXFTWGhhVkd0NlRucHJNMDVFUlhwTmJWa3hUa1JPYTFscVNURk5WRVY1VG1wbmQwNXRXVFZPUjBwcFdsUkJaa0puYjNKQ1owVkZRVmxQTHdwTlFVVlBRa0pGVFVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJZVUpuYjNKQ1owVkZRVmxQTDAxQlJWQkNRWGROUTJwRmQwNTZSVEJPZWxVeENrMXFhM2RNWjFsTFMzZFpRa0pCUjBSMmVrRkNSVUZSWjBSQ05XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZDBkQldVdExkMWxDUWtGSFJIWjZRVUpGVVZGTFJFRm5lVTVVWTNsTlJHTXdUWHBDZUVKbmIzSkNaMFZGUVZsUEwwMUJSVk5DUjAxTldWZG9NQXBrU0VKNlQyazRkbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemgxQ2xveWJEQmhTRlpwVEROa2RtTnRkRzFpUnprelkzazVhV1JYYkhOYVF6RjBXVmROZFdWWFJuUmlSVUo1V2xkYWVrd3lhR3haVjFKNlRESXhhR0ZYTkhjS1QwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWM1VYRkVRMmQ1V2xSU2FVOVVZekpOYWtac1QxUk5NMDlVWXpCTlZFMTVXbXBWTUUweVVtbE5hbFY0VFZSSk1ncFBSRUV5V21wck1GbHRTbXhOUTBWSFEybHpSMEZSVVVKbk56aDNRVkpSUlVWM2QxSmtNamw1WVRKYWMySXpaR1phUjJ4NlkwZEdNRmt5WjNkYVFWbExDa3QzV1VKQ1FVZEVkbnBCUWtaUlVsZEVSbEp2WkVoU2QyTjZiM1pNTW1Sd1pFZG9NVmxwTldwaU1qQjJZVWhXYmxveWJIVmFNbHBvV1RKVmRtRXlWbmtLWW0xV2MyTjVNV3BpTWpGMFpGYzFjR1JJYTNaWlYwNHdZVmM1ZFdONU9YbGtWelY2VEhwSk5FNXFWVFJPZWxrd1QxUm5la3d5UmpCa1IxWjBZMGhTZWdwTWVrVjNSbWRaUzB0M1dVSkNRVWRFZG5wQlFrWm5VVWxFUVZwM1pGZEtjMkZYVFhkU1oxbExTM2RaUWtKQlIwUjJla0ZDUjBGUk5FUkVXbmxhV0VKMkNrOXRhREZhTW1Sd1ltMWtiVmxYVG14TU1uUnNZMjAxYkdKSVRYUlpNamwwWWxoV2RXRllValZQYmtwc1dtcHdlVnBYV25wTU1taHNXVmRTZWt3eU1XZ0tZVmMwZDJkWmIwZERhWE5IUVZGUlFqRnVhME5DUVVsRlprRlNOa0ZJWjBGa1owUmtVRlJDY1hoelkxSk5iVTFhU0doNVdscDZZME52YTNCbGRVNDBPQXB5Wml0SWFXNUxRVXg1Ym5WcVowRkJRVm80YmpaSlMxSkJRVUZGUVhkQ1NFMUZWVU5KUjBoR1Zra3ZjM0JqYjJSTVQwc3hTVTQzUWtkT0x6TnJWRkJoQ2pZeVVtRnhORkI0WmpoUVFYbFNUazVCYVVWQmVqWndXR3MzT1ZGaGFXSjBkamhMTlVwWFRFdFdVRU01U1VWeVVFUkVVa1ZxVUdOdlZtRTBZMDFUVVhjS1EyZFpTVXR2V2tsNmFqQkZRWGROUkdGUlFYZGFaMGw0UVU4NWIwMTNkM2Q2VW1kWVR5ODRhMDlKYVU1UFkwaExTM1UzU21Ob05VRnlWMVJrTlZORlRBcEhRbEJ6YVZBemJFRlBZbmgxTlhkV2RWcEhkblV2Y1dOT2QwbDRRVWxGZVhwclNHWk1SR2R5V2taclNXcG9kMnB0ZUZCaVZWVk1jazAwVlM5Uk4wNU5Da3BaVUVSMGRrd3habkZKZDJoMmNVazJSbUo0VURCTlJFYzNkQ3R3ZHowOUNpMHRMUzB0UlU1RUlFTkZVbFJKUmtsRFFWUkZMUzB0TFMwSyJ9fX19"}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgXaNU5y2kEEBVsvAnVldyhVXdgN5YZdyzXsQ2WwVdKPQCFQDhVQRA1XI2h8D0+IGTARm8AqJKARgPMjAyNjA3MDMxMjE2MTdaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHbMIIB1wIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDcwMzEyMTYxN1owLwYJKoZIhvcNAQkEMSIEIO4gX55OoQU/5NPchTjTa05GAM4wG7Bb5YmvWH6Y3NUeMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRnMGUCMBXXrhkqa8r2ZY5ncJyEqM4iZJSyGh/gW9kPvfrPhmjkSMfxzfcwzm5u1HT709cdtwIxAJBwkrnY6f5Jukv4bN4mzTjYVu05mh/t3efK+vxJ1jOttvhuLvS/m/NwBelMcf2cbQ=="}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"KGO4yV3uYSGhleLdNt2JZEG6cBGIEgQFFCLar51w7dI="},"signature":"MEUCID3unPllXg/lfKbE+bAIuReLRugZnPIKvpspCLsHTrE+AiEA0Vw516e5i/nL/NeFJwtYaHf4+AG6akNxDvv473yti3o="}}
|
build/torch213-metal-aarch64-darwin/paged_attention/__init__.py
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import ctypes
|
| 2 |
+
import importlib.util
|
| 3 |
+
import sys
|
| 4 |
+
from pathlib import Path
|
| 5 |
+
from types import ModuleType
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def _import_from_path(file_path: Path) -> ModuleType:
|
| 9 |
+
# We cannot use the module name as-is, after adding it to `sys.modules`,
|
| 10 |
+
# it would also be used for other imports. So, we make a module name that
|
| 11 |
+
# depends on the path for it to be unique using the hex-encoded hash of
|
| 12 |
+
# the path.
|
| 13 |
+
path_hash = "{:x}".format(ctypes.c_size_t(hash(file_path.absolute())).value)
|
| 14 |
+
module_name = path_hash
|
| 15 |
+
spec = importlib.util.spec_from_file_location(module_name, file_path)
|
| 16 |
+
if spec is None:
|
| 17 |
+
raise ImportError(f"Cannot load spec for {module_name} from {file_path}")
|
| 18 |
+
module = importlib.util.module_from_spec(spec)
|
| 19 |
+
if module is None:
|
| 20 |
+
raise ImportError(f"Cannot load module {module_name} from spec")
|
| 21 |
+
sys.modules[module_name] = module
|
| 22 |
+
spec.loader.exec_module(module) # type: ignore
|
| 23 |
+
return module
|
| 24 |
+
|
| 25 |
+
|
| 26 |
+
globals().update(vars(_import_from_path(Path(__file__).parent.parent / "__init__.py")))
|
build/torch213-metal-aarch64-darwin/platforms.py
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import random
|
| 3 |
+
from abc import ABC, abstractmethod
|
| 4 |
+
from functools import lru_cache, wraps
|
| 5 |
+
from typing import Callable, ParamSpec, TypeVar
|
| 6 |
+
|
| 7 |
+
import numpy as np
|
| 8 |
+
import torch
|
| 9 |
+
|
| 10 |
+
IS_ROCM = torch.version.hip is not None
|
| 11 |
+
IS_MPS = torch.backends.mps.is_available()
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
class Platform(ABC):
|
| 15 |
+
@classmethod
|
| 16 |
+
def seed_everything(cls, seed: int) -> None:
|
| 17 |
+
"""
|
| 18 |
+
Set the seed of each random module.
|
| 19 |
+
`torch.manual_seed` will set seed on all devices.
|
| 20 |
+
|
| 21 |
+
Loosely based on: https://github.com/Lightning-AI/pytorch-lightning/blob/2.4.0/src/lightning/fabric/utilities/seed.py#L20
|
| 22 |
+
"""
|
| 23 |
+
random.seed(seed)
|
| 24 |
+
np.random.seed(seed)
|
| 25 |
+
torch.manual_seed(seed)
|
| 26 |
+
|
| 27 |
+
@abstractmethod
|
| 28 |
+
def get_device_name(self, device_id: int = 0) -> str: ...
|
| 29 |
+
|
| 30 |
+
@abstractmethod
|
| 31 |
+
def is_cuda(self) -> bool: ...
|
| 32 |
+
|
| 33 |
+
@abstractmethod
|
| 34 |
+
def is_rocm(self) -> bool: ...
|
| 35 |
+
|
| 36 |
+
@abstractmethod
|
| 37 |
+
def is_mps(self) -> bool: ...
|
| 38 |
+
|
| 39 |
+
|
| 40 |
+
class CudaPlatform(Platform):
|
| 41 |
+
@classmethod
|
| 42 |
+
@lru_cache(maxsize=8)
|
| 43 |
+
def get_device_name(cls, device_id: int = 0) -> str:
|
| 44 |
+
return torch.cuda.get_device_name(0)
|
| 45 |
+
|
| 46 |
+
def is_cuda(self) -> bool:
|
| 47 |
+
return True
|
| 48 |
+
|
| 49 |
+
def is_rocm(self) -> bool:
|
| 50 |
+
return False
|
| 51 |
+
|
| 52 |
+
def is_mps(self) -> bool:
|
| 53 |
+
return False
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
class RocmPlatform(Platform):
|
| 57 |
+
@classmethod
|
| 58 |
+
@lru_cache(maxsize=8)
|
| 59 |
+
def get_device_name(cls, device_id: int = 0) -> str:
|
| 60 |
+
return torch.cuda.get_device_name(device_id)
|
| 61 |
+
|
| 62 |
+
def is_cuda(self) -> bool:
|
| 63 |
+
return False
|
| 64 |
+
|
| 65 |
+
def is_rocm(self) -> bool:
|
| 66 |
+
return True
|
| 67 |
+
|
| 68 |
+
def is_mps(self) -> bool:
|
| 69 |
+
return False
|
| 70 |
+
|
| 71 |
+
|
| 72 |
+
class MpsPlatform(Platform):
|
| 73 |
+
@classmethod
|
| 74 |
+
@lru_cache(maxsize=8)
|
| 75 |
+
def get_device_name(cls, device_id: int = 0) -> str:
|
| 76 |
+
return torch.cuda.get_device_name(device_id)
|
| 77 |
+
|
| 78 |
+
def is_cuda(self) -> bool:
|
| 79 |
+
return False
|
| 80 |
+
|
| 81 |
+
def is_rocm(self) -> bool:
|
| 82 |
+
return False
|
| 83 |
+
|
| 84 |
+
def is_mps(self) -> bool:
|
| 85 |
+
return True
|
| 86 |
+
|
| 87 |
+
current_platform = (
|
| 88 |
+
RocmPlatform() if IS_ROCM else
|
| 89 |
+
MpsPlatform() if IS_MPS else
|
| 90 |
+
CudaPlatform() if torch.cuda.is_available() else
|
| 91 |
+
None
|
| 92 |
+
)
|