tinygrad 0.9.1__py3-none-any.whl → 0.10.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. tinygrad/__init__.py +11 -6
  2. tinygrad/codegen/kernel.py +308 -175
  3. tinygrad/codegen/linearize.py +95 -0
  4. tinygrad/codegen/lowerer.py +143 -0
  5. tinygrad/codegen/transcendental.py +257 -0
  6. tinygrad/codegen/uopgraph.py +506 -0
  7. tinygrad/device.py +72 -171
  8. tinygrad/dtype.py +122 -47
  9. tinygrad/engine/jit.py +184 -87
  10. tinygrad/{lazy.py → engine/lazy.py} +74 -66
  11. tinygrad/engine/memory.py +51 -0
  12. tinygrad/engine/realize.py +86 -61
  13. tinygrad/engine/schedule.py +366 -317
  14. tinygrad/engine/search.py +58 -47
  15. tinygrad/function.py +59 -58
  16. tinygrad/helpers.py +120 -102
  17. tinygrad/multi.py +82 -78
  18. tinygrad/nn/__init__.py +116 -67
  19. tinygrad/nn/datasets.py +12 -5
  20. tinygrad/nn/optim.py +1 -1
  21. tinygrad/nn/state.py +91 -6
  22. tinygrad/ops.py +1126 -143
  23. tinygrad/renderer/__init__.py +47 -23
  24. tinygrad/renderer/cstyle.py +338 -265
  25. tinygrad/renderer/llvmir.py +125 -143
  26. tinygrad/renderer/ptx.py +225 -0
  27. tinygrad/runtime/autogen/adreno.py +17904 -0
  28. tinygrad/runtime/autogen/amd_gpu.py +46974 -11993
  29. tinygrad/runtime/autogen/cuda.py +6 -162
  30. tinygrad/runtime/autogen/io_uring.py +97 -63
  31. tinygrad/runtime/autogen/kfd.py +60 -47
  32. tinygrad/runtime/autogen/kgsl.py +1386 -0
  33. tinygrad/runtime/autogen/libc.py +5462 -0
  34. tinygrad/runtime/autogen/nv_gpu.py +1976 -1957
  35. tinygrad/runtime/autogen/nvrtc.py +579 -0
  36. tinygrad/runtime/autogen/opencl.py +11 -11
  37. tinygrad/runtime/autogen/qcom_dsp.py +1739 -0
  38. tinygrad/runtime/graph/clang.py +3 -3
  39. tinygrad/runtime/graph/cuda.py +11 -15
  40. tinygrad/runtime/graph/hcq.py +120 -107
  41. tinygrad/runtime/graph/metal.py +71 -43
  42. tinygrad/runtime/ops_amd.py +244 -323
  43. tinygrad/runtime/ops_clang.py +12 -5
  44. tinygrad/runtime/ops_cloud.py +220 -0
  45. tinygrad/runtime/ops_cuda.py +42 -99
  46. tinygrad/runtime/ops_disk.py +25 -26
  47. tinygrad/runtime/ops_dsp.py +181 -0
  48. tinygrad/runtime/ops_gpu.py +29 -16
  49. tinygrad/runtime/ops_hip.py +68 -0
  50. tinygrad/runtime/ops_llvm.py +15 -10
  51. tinygrad/runtime/ops_metal.py +147 -64
  52. tinygrad/runtime/ops_nv.py +356 -397
  53. tinygrad/runtime/ops_python.py +78 -79
  54. tinygrad/runtime/ops_qcom.py +405 -0
  55. tinygrad/runtime/support/__init__.py +0 -0
  56. tinygrad/runtime/support/compiler_cuda.py +77 -0
  57. tinygrad/runtime/{driver/hip_comgr.py → support/compiler_hip.py} +13 -1
  58. tinygrad/runtime/support/elf.py +38 -0
  59. tinygrad/runtime/support/hcq.py +539 -0
  60. tinygrad/shape/shapetracker.py +40 -50
  61. tinygrad/shape/view.py +102 -63
  62. tinygrad/tensor.py +1109 -365
  63. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/METADATA +54 -50
  64. tinygrad-0.10.0.dist-info/RECORD +77 -0
  65. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/WHEEL +1 -1
  66. tinygrad/codegen/linearizer.py +0 -528
  67. tinygrad/codegen/uops.py +0 -451
  68. tinygrad/engine/graph.py +0 -100
  69. tinygrad/renderer/assembly.py +0 -269
  70. tinygrad/shape/symbolic.py +0 -327
  71. tinygrad-0.9.1.dist-info/RECORD +0 -63
  72. /tinygrad/{runtime/driver/__init__.py → py.typed} +0 -0
  73. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/LICENSE +0 -0
  74. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/top_level.txt +0 -0
@@ -146,7 +146,6 @@ def char_pointer_cast(string, encoding='utf-8'):
146
146
 
147
147
  _libraries = {}
148
148
  _libraries['libcuda.so'] = ctypes.CDLL(ctypes.util.find_library('cuda'))
149
- _libraries['libnvrtc.so'] = ctypes.CDLL(ctypes.util.find_library('nvrtc'))
150
149
 
151
150
 
152
151
  cuuint32_t = ctypes.c_uint32
@@ -4921,143 +4920,6 @@ try:
4921
4920
  cuGetExportTable.argtypes = [ctypes.POINTER(ctypes.POINTER(None)), ctypes.POINTER(struct_CUuuid_st)]
4922
4921
  except AttributeError:
4923
4922
  pass
4924
-
4925
- # values for enumeration 'c__EA_nvrtcResult'
4926
- c__EA_nvrtcResult__enumvalues = {
4927
- 0: 'NVRTC_SUCCESS',
4928
- 1: 'NVRTC_ERROR_OUT_OF_MEMORY',
4929
- 2: 'NVRTC_ERROR_PROGRAM_CREATION_FAILURE',
4930
- 3: 'NVRTC_ERROR_INVALID_INPUT',
4931
- 4: 'NVRTC_ERROR_INVALID_PROGRAM',
4932
- 5: 'NVRTC_ERROR_INVALID_OPTION',
4933
- 6: 'NVRTC_ERROR_COMPILATION',
4934
- 7: 'NVRTC_ERROR_BUILTIN_OPERATION_FAILURE',
4935
- 8: 'NVRTC_ERROR_NO_NAME_EXPRESSIONS_AFTER_COMPILATION',
4936
- 9: 'NVRTC_ERROR_NO_LOWERED_NAMES_BEFORE_COMPILATION',
4937
- 10: 'NVRTC_ERROR_NAME_EXPRESSION_NOT_VALID',
4938
- 11: 'NVRTC_ERROR_INTERNAL_ERROR',
4939
- }
4940
- NVRTC_SUCCESS = 0
4941
- NVRTC_ERROR_OUT_OF_MEMORY = 1
4942
- NVRTC_ERROR_PROGRAM_CREATION_FAILURE = 2
4943
- NVRTC_ERROR_INVALID_INPUT = 3
4944
- NVRTC_ERROR_INVALID_PROGRAM = 4
4945
- NVRTC_ERROR_INVALID_OPTION = 5
4946
- NVRTC_ERROR_COMPILATION = 6
4947
- NVRTC_ERROR_BUILTIN_OPERATION_FAILURE = 7
4948
- NVRTC_ERROR_NO_NAME_EXPRESSIONS_AFTER_COMPILATION = 8
4949
- NVRTC_ERROR_NO_LOWERED_NAMES_BEFORE_COMPILATION = 9
4950
- NVRTC_ERROR_NAME_EXPRESSION_NOT_VALID = 10
4951
- NVRTC_ERROR_INTERNAL_ERROR = 11
4952
- c__EA_nvrtcResult = ctypes.c_uint32 # enum
4953
- nvrtcResult = c__EA_nvrtcResult
4954
- nvrtcResult__enumvalues = c__EA_nvrtcResult__enumvalues
4955
- try:
4956
- nvrtcGetErrorString = _libraries['libnvrtc.so'].nvrtcGetErrorString
4957
- nvrtcGetErrorString.restype = ctypes.POINTER(ctypes.c_char)
4958
- nvrtcGetErrorString.argtypes = [nvrtcResult]
4959
- except AttributeError:
4960
- pass
4961
- try:
4962
- nvrtcVersion = _libraries['libnvrtc.so'].nvrtcVersion
4963
- nvrtcVersion.restype = nvrtcResult
4964
- nvrtcVersion.argtypes = [ctypes.POINTER(ctypes.c_int32), ctypes.POINTER(ctypes.c_int32)]
4965
- except AttributeError:
4966
- pass
4967
- try:
4968
- nvrtcGetNumSupportedArchs = _libraries['libnvrtc.so'].nvrtcGetNumSupportedArchs
4969
- nvrtcGetNumSupportedArchs.restype = nvrtcResult
4970
- nvrtcGetNumSupportedArchs.argtypes = [ctypes.POINTER(ctypes.c_int32)]
4971
- except AttributeError:
4972
- pass
4973
- try:
4974
- nvrtcGetSupportedArchs = _libraries['libnvrtc.so'].nvrtcGetSupportedArchs
4975
- nvrtcGetSupportedArchs.restype = nvrtcResult
4976
- nvrtcGetSupportedArchs.argtypes = [ctypes.POINTER(ctypes.c_int32)]
4977
- except AttributeError:
4978
- pass
4979
- class struct__nvrtcProgram(Structure):
4980
- pass
4981
-
4982
- nvrtcProgram = ctypes.POINTER(struct__nvrtcProgram)
4983
- try:
4984
- nvrtcCreateProgram = _libraries['libnvrtc.so'].nvrtcCreateProgram
4985
- nvrtcCreateProgram.restype = nvrtcResult
4986
- nvrtcCreateProgram.argtypes = [ctypes.POINTER(ctypes.POINTER(struct__nvrtcProgram)), ctypes.POINTER(ctypes.c_char), ctypes.POINTER(ctypes.c_char), ctypes.c_int32, ctypes.POINTER(ctypes.POINTER(ctypes.c_char)), ctypes.POINTER(ctypes.POINTER(ctypes.c_char))]
4987
- except AttributeError:
4988
- pass
4989
- try:
4990
- nvrtcDestroyProgram = _libraries['libnvrtc.so'].nvrtcDestroyProgram
4991
- nvrtcDestroyProgram.restype = nvrtcResult
4992
- nvrtcDestroyProgram.argtypes = [ctypes.POINTER(ctypes.POINTER(struct__nvrtcProgram))]
4993
- except AttributeError:
4994
- pass
4995
- try:
4996
- nvrtcCompileProgram = _libraries['libnvrtc.so'].nvrtcCompileProgram
4997
- nvrtcCompileProgram.restype = nvrtcResult
4998
- nvrtcCompileProgram.argtypes = [nvrtcProgram, ctypes.c_int32, ctypes.POINTER(ctypes.POINTER(ctypes.c_char))]
4999
- except AttributeError:
5000
- pass
5001
- try:
5002
- nvrtcGetPTXSize = _libraries['libnvrtc.so'].nvrtcGetPTXSize
5003
- nvrtcGetPTXSize.restype = nvrtcResult
5004
- nvrtcGetPTXSize.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_uint64)]
5005
- except AttributeError:
5006
- pass
5007
- try:
5008
- nvrtcGetPTX = _libraries['libnvrtc.so'].nvrtcGetPTX
5009
- nvrtcGetPTX.restype = nvrtcResult
5010
- nvrtcGetPTX.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_char)]
5011
- except AttributeError:
5012
- pass
5013
- try:
5014
- nvrtcGetCUBINSize = _libraries['libnvrtc.so'].nvrtcGetCUBINSize
5015
- nvrtcGetCUBINSize.restype = nvrtcResult
5016
- nvrtcGetCUBINSize.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_uint64)]
5017
- except AttributeError:
5018
- pass
5019
- try:
5020
- nvrtcGetCUBIN = _libraries['libnvrtc.so'].nvrtcGetCUBIN
5021
- nvrtcGetCUBIN.restype = nvrtcResult
5022
- nvrtcGetCUBIN.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_char)]
5023
- except AttributeError:
5024
- pass
5025
- try:
5026
- nvrtcGetNVVMSize = _libraries['libnvrtc.so'].nvrtcGetNVVMSize
5027
- nvrtcGetNVVMSize.restype = nvrtcResult
5028
- nvrtcGetNVVMSize.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_uint64)]
5029
- except AttributeError:
5030
- pass
5031
- try:
5032
- nvrtcGetNVVM = _libraries['libnvrtc.so'].nvrtcGetNVVM
5033
- nvrtcGetNVVM.restype = nvrtcResult
5034
- nvrtcGetNVVM.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_char)]
5035
- except AttributeError:
5036
- pass
5037
- try:
5038
- nvrtcGetProgramLogSize = _libraries['libnvrtc.so'].nvrtcGetProgramLogSize
5039
- nvrtcGetProgramLogSize.restype = nvrtcResult
5040
- nvrtcGetProgramLogSize.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_uint64)]
5041
- except AttributeError:
5042
- pass
5043
- try:
5044
- nvrtcGetProgramLog = _libraries['libnvrtc.so'].nvrtcGetProgramLog
5045
- nvrtcGetProgramLog.restype = nvrtcResult
5046
- nvrtcGetProgramLog.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_char)]
5047
- except AttributeError:
5048
- pass
5049
- try:
5050
- nvrtcAddNameExpression = _libraries['libnvrtc.so'].nvrtcAddNameExpression
5051
- nvrtcAddNameExpression.restype = nvrtcResult
5052
- nvrtcAddNameExpression.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_char)]
5053
- except AttributeError:
5054
- pass
5055
- try:
5056
- nvrtcGetLoweredName = _libraries['libnvrtc.so'].nvrtcGetLoweredName
5057
- nvrtcGetLoweredName.restype = nvrtcResult
5058
- nvrtcGetLoweredName.argtypes = [nvrtcProgram, ctypes.POINTER(ctypes.c_char), ctypes.POINTER(ctypes.POINTER(ctypes.c_char))]
5059
- except AttributeError:
5060
- pass
5061
4923
  __all__ = \
5062
4924
  ['CUDA_ARRAY3D_DESCRIPTOR', 'CUDA_ARRAY3D_DESCRIPTOR_v2',
5063
4925
  'CUDA_ARRAY_DESCRIPTOR', 'CUDA_ARRAY_DESCRIPTOR_v2',
@@ -5673,21 +5535,11 @@ __all__ = \
5673
5535
  'CUuserObjectRetain_flags__enumvalues',
5674
5536
  'CUuserObjectRetain_flags_enum', 'CUuserObject_flags',
5675
5537
  'CUuserObject_flags__enumvalues', 'CUuserObject_flags_enum',
5676
- 'CUuuid', 'NVRTC_ERROR_BUILTIN_OPERATION_FAILURE',
5677
- 'NVRTC_ERROR_COMPILATION', 'NVRTC_ERROR_INTERNAL_ERROR',
5678
- 'NVRTC_ERROR_INVALID_INPUT', 'NVRTC_ERROR_INVALID_OPTION',
5679
- 'NVRTC_ERROR_INVALID_PROGRAM',
5680
- 'NVRTC_ERROR_NAME_EXPRESSION_NOT_VALID',
5681
- 'NVRTC_ERROR_NO_LOWERED_NAMES_BEFORE_COMPILATION',
5682
- 'NVRTC_ERROR_NO_NAME_EXPRESSIONS_AFTER_COMPILATION',
5683
- 'NVRTC_ERROR_OUT_OF_MEMORY',
5684
- 'NVRTC_ERROR_PROGRAM_CREATION_FAILURE', 'NVRTC_SUCCESS',
5685
- 'c__EA_nvrtcResult', 'cuArray3DCreate_v2',
5686
- 'cuArray3DGetDescriptor_v2', 'cuArrayCreate_v2', 'cuArrayDestroy',
5687
- 'cuArrayGetDescriptor_v2', 'cuArrayGetPlane',
5688
- 'cuArrayGetSparseProperties', 'cuCtxAttach', 'cuCtxCreate_v2',
5689
- 'cuCtxCreate_v3', 'cuCtxDestroy_v2', 'cuCtxDetach',
5690
- 'cuCtxDisablePeerAccess', 'cuCtxEnablePeerAccess',
5538
+ 'CUuuid', 'cuArray3DCreate_v2', 'cuArray3DGetDescriptor_v2',
5539
+ 'cuArrayCreate_v2', 'cuArrayDestroy', 'cuArrayGetDescriptor_v2',
5540
+ 'cuArrayGetPlane', 'cuArrayGetSparseProperties', 'cuCtxAttach',
5541
+ 'cuCtxCreate_v2', 'cuCtxCreate_v3', 'cuCtxDestroy_v2',
5542
+ 'cuCtxDetach', 'cuCtxDisablePeerAccess', 'cuCtxEnablePeerAccess',
5691
5543
  'cuCtxGetApiVersion', 'cuCtxGetCacheConfig', 'cuCtxGetCurrent',
5692
5544
  'cuCtxGetDevice', 'cuCtxGetExecAffinity', 'cuCtxGetFlags',
5693
5545
  'cuCtxGetLimit', 'cuCtxGetSharedMemConfig',
@@ -5844,14 +5696,7 @@ __all__ = \
5844
5696
  'cuTexRefSetMipmappedArray', 'cuThreadExchangeStreamCaptureMode',
5845
5697
  'cuUserObjectCreate', 'cuUserObjectRelease', 'cuUserObjectRetain',
5846
5698
  'cuWaitExternalSemaphoresAsync', 'cudaError_enum', 'cuuint32_t',
5847
- 'cuuint64_t', 'nvrtcAddNameExpression', 'nvrtcCompileProgram',
5848
- 'nvrtcCreateProgram', 'nvrtcDestroyProgram', 'nvrtcGetCUBIN',
5849
- 'nvrtcGetCUBINSize', 'nvrtcGetErrorString', 'nvrtcGetLoweredName',
5850
- 'nvrtcGetNVVM', 'nvrtcGetNVVMSize', 'nvrtcGetNumSupportedArchs',
5851
- 'nvrtcGetPTX', 'nvrtcGetPTXSize', 'nvrtcGetProgramLog',
5852
- 'nvrtcGetProgramLogSize', 'nvrtcGetSupportedArchs',
5853
- 'nvrtcProgram', 'nvrtcResult', 'nvrtcResult__enumvalues',
5854
- 'nvrtcVersion', 'size_t', 'struct_CUDA_ARRAY3D_DESCRIPTOR_st',
5699
+ 'cuuint64_t', 'size_t', 'struct_CUDA_ARRAY3D_DESCRIPTOR_st',
5855
5700
  'struct_CUDA_ARRAY_DESCRIPTOR_st',
5856
5701
  'struct_CUDA_ARRAY_SPARSE_PROPERTIES_st',
5857
5702
  'struct_CUDA_ARRAY_SPARSE_PROPERTIES_st_tileExtent',
@@ -5906,7 +5751,6 @@ __all__ = \
5906
5751
  'struct_CUstreamMemOpWriteValueParams_st', 'struct_CUstream_st',
5907
5752
  'struct_CUsurfref_st', 'struct_CUtexref_st',
5908
5753
  'struct_CUuserObject_st', 'struct_CUuuid_st',
5909
- 'struct__nvrtcProgram',
5910
5754
  'union_CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st_handle',
5911
5755
  'union_CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st_handle',
5912
5756
  'union_CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st_0_nvSciSync',
@@ -157,6 +157,14 @@ def char_pointer_cast(string, encoding='utf-8'):
157
157
 
158
158
 
159
159
 
160
+ LIB_URING_H = True # macro
161
+ _XOPEN_SOURCE = 500 # macro
162
+ # def uring_unlikely(cond): # macro
163
+ # return __builtin_expect(!!(cond),0)
164
+ # def uring_likely(cond): # macro
165
+ # return __builtin_expect(!!(cond),1)
166
+ # def io_uring_for_each_cqe(ring, head, cqe): # macro
167
+ # return (head=*(ring)->cq.khead;(cqe=(head!=io_uring_smp_load_acquire((ring)->cq.ktail)?&(ring)->cq.cqes[head&(*(ring)->cq.kring_mask)]:NULL));head++)
160
168
  class struct_io_uring_sq(Structure):
161
169
  pass
162
170
 
@@ -685,6 +693,7 @@ try:
685
693
  except AttributeError:
686
694
  pass
687
695
  __u64 = ctypes.c_uint64
696
+ # LIBURING_UDATA_TIMEOUT = ((__u64)-1) # macro
688
697
  try:
689
698
  io_uring_prep_rw = _libraries['FIXME_STUB'].io_uring_prep_rw
690
699
  io_uring_prep_rw.restype = None
@@ -1085,6 +1094,51 @@ try:
1085
1094
  io_uring_mlock_size_params.argtypes = [ctypes.c_uint32, ctypes.POINTER(struct_io_uring_params)]
1086
1095
  except AttributeError:
1087
1096
  pass
1097
+ LINUX_IO_URING_H = True # macro
1098
+ IORING_SETUP_IOPOLL = (1<<0) # macro
1099
+ IORING_SETUP_SQPOLL = (1<<1) # macro
1100
+ IORING_SETUP_SQ_AFF = (1<<2) # macro
1101
+ IORING_SETUP_CQSIZE = (1<<3) # macro
1102
+ IORING_SETUP_CLAMP = (1<<4) # macro
1103
+ IORING_SETUP_ATTACH_WQ = (1<<5) # macro
1104
+ IORING_SETUP_R_DISABLED = (1<<6) # macro
1105
+ IORING_FSYNC_DATASYNC = (1<<0) # macro
1106
+ IORING_TIMEOUT_ABS = (1<<0) # macro
1107
+ IORING_TIMEOUT_UPDATE = (1<<1) # macro
1108
+ IORING_TIMEOUT_BOOTTIME = (1<<2) # macro
1109
+ IORING_TIMEOUT_REALTIME = (1<<3) # macro
1110
+ IORING_LINK_TIMEOUT_UPDATE = (1<<4) # macro
1111
+ IORING_TIMEOUT_CLOCK_MASK = ((1<<2)|(1<<3)) # macro
1112
+ IORING_TIMEOUT_UPDATE_MASK = ((1<<1)|(1<<4)) # macro
1113
+ SPLICE_F_FD_IN_FIXED = (1<<31) # macro
1114
+ IORING_POLL_ADD_MULTI = (1<<0) # macro
1115
+ IORING_POLL_UPDATE_EVENTS = (1<<1) # macro
1116
+ IORING_POLL_UPDATE_USER_DATA = (1<<2) # macro
1117
+ IORING_CQE_F_BUFFER = (1<<0) # macro
1118
+ IORING_CQE_F_MORE = (1<<1) # macro
1119
+ IORING_OFF_SQ_RING = 0 # macro
1120
+ IORING_OFF_CQ_RING = 0x8000000 # macro
1121
+ IORING_OFF_SQES = 0x10000000 # macro
1122
+ IORING_SQ_NEED_WAKEUP = (1<<0) # macro
1123
+ IORING_SQ_CQ_OVERFLOW = (1<<1) # macro
1124
+ IORING_CQ_EVENTFD_DISABLED = (1<<0) # macro
1125
+ IORING_ENTER_GETEVENTS = (1<<0) # macro
1126
+ IORING_ENTER_SQ_WAKEUP = (1<<1) # macro
1127
+ IORING_ENTER_SQ_WAIT = (1<<2) # macro
1128
+ IORING_ENTER_EXT_ARG = (1<<3) # macro
1129
+ IORING_FEAT_SINGLE_MMAP = (1<<0) # macro
1130
+ IORING_FEAT_NODROP = (1<<1) # macro
1131
+ IORING_FEAT_SUBMIT_STABLE = (1<<2) # macro
1132
+ IORING_FEAT_RW_CUR_POS = (1<<3) # macro
1133
+ IORING_FEAT_CUR_PERSONALITY = (1<<4) # macro
1134
+ IORING_FEAT_FAST_POLL = (1<<5) # macro
1135
+ IORING_FEAT_POLL_32BITS = (1<<6) # macro
1136
+ IORING_FEAT_SQPOLL_NONFIXED = (1<<7) # macro
1137
+ IORING_FEAT_EXT_ARG = (1<<8) # macro
1138
+ IORING_FEAT_NATIVE_WORKERS = (1<<9) # macro
1139
+ IORING_FEAT_RSRC_TAGS = (1<<10) # macro
1140
+ IORING_REGISTER_FILES_SKIP = (-2) # macro
1141
+ IO_URING_OP_SUPPORTED = (1<<0) # macro
1088
1142
 
1089
1143
  # values for enumeration 'c__Ea_IOSQE_FIXED_FILE_BIT'
1090
1144
  c__Ea_IOSQE_FIXED_FILE_BIT__enumvalues = {
@@ -1102,6 +1156,12 @@ IOSQE_IO_HARDLINK_BIT = 3
1102
1156
  IOSQE_ASYNC_BIT = 4
1103
1157
  IOSQE_BUFFER_SELECT_BIT = 5
1104
1158
  c__Ea_IOSQE_FIXED_FILE_BIT = ctypes.c_uint32 # enum
1159
+ IOSQE_FIXED_FILE = (1<<IOSQE_FIXED_FILE_BIT) # macro
1160
+ IOSQE_IO_DRAIN = (1<<IOSQE_IO_DRAIN_BIT) # macro
1161
+ IOSQE_IO_LINK = (1<<IOSQE_IO_LINK_BIT) # macro
1162
+ IOSQE_IO_HARDLINK = (1<<IOSQE_IO_HARDLINK_BIT) # macro
1163
+ IOSQE_ASYNC = (1<<IOSQE_ASYNC_BIT) # macro
1164
+ IOSQE_BUFFER_SELECT = (1<<IOSQE_BUFFER_SELECT_BIT) # macro
1105
1165
 
1106
1166
  # values for enumeration 'c__Ea_IORING_OP_NOP'
1107
1167
  c__Ea_IORING_OP_NOP__enumvalues = {
@@ -1324,7 +1384,18 @@ struct_io_uring_getevents_arg._fields_ = [
1324
1384
  ]
1325
1385
 
1326
1386
  __all__ = \
1327
- ['IORING_CQE_BUFFER_SHIFT', 'IORING_OP_ACCEPT',
1387
+ ['IORING_CQE_BUFFER_SHIFT', 'IORING_CQE_F_BUFFER',
1388
+ 'IORING_CQE_F_MORE', 'IORING_CQ_EVENTFD_DISABLED',
1389
+ 'IORING_ENTER_EXT_ARG', 'IORING_ENTER_GETEVENTS',
1390
+ 'IORING_ENTER_SQ_WAIT', 'IORING_ENTER_SQ_WAKEUP',
1391
+ 'IORING_FEAT_CUR_PERSONALITY', 'IORING_FEAT_EXT_ARG',
1392
+ 'IORING_FEAT_FAST_POLL', 'IORING_FEAT_NATIVE_WORKERS',
1393
+ 'IORING_FEAT_NODROP', 'IORING_FEAT_POLL_32BITS',
1394
+ 'IORING_FEAT_RSRC_TAGS', 'IORING_FEAT_RW_CUR_POS',
1395
+ 'IORING_FEAT_SINGLE_MMAP', 'IORING_FEAT_SQPOLL_NONFIXED',
1396
+ 'IORING_FEAT_SUBMIT_STABLE', 'IORING_FSYNC_DATASYNC',
1397
+ 'IORING_LINK_TIMEOUT_UPDATE', 'IORING_OFF_CQ_RING',
1398
+ 'IORING_OFF_SQES', 'IORING_OFF_SQ_RING', 'IORING_OP_ACCEPT',
1328
1399
  'IORING_OP_ASYNC_CANCEL', 'IORING_OP_CLOSE', 'IORING_OP_CONNECT',
1329
1400
  'IORING_OP_EPOLL_CTL', 'IORING_OP_FADVISE', 'IORING_OP_FALLOCATE',
1330
1401
  'IORING_OP_FILES_UPDATE', 'IORING_OP_FSYNC', 'IORING_OP_LAST',
@@ -1339,11 +1410,13 @@ __all__ = \
1339
1410
  'IORING_OP_SYMLINKAT', 'IORING_OP_SYNC_FILE_RANGE',
1340
1411
  'IORING_OP_TEE', 'IORING_OP_TIMEOUT', 'IORING_OP_TIMEOUT_REMOVE',
1341
1412
  'IORING_OP_UNLINKAT', 'IORING_OP_WRITE', 'IORING_OP_WRITEV',
1342
- 'IORING_OP_WRITE_FIXED', 'IORING_REGISTER_BUFFERS',
1343
- 'IORING_REGISTER_BUFFERS2', 'IORING_REGISTER_BUFFERS_UPDATE',
1344
- 'IORING_REGISTER_ENABLE_RINGS', 'IORING_REGISTER_EVENTFD',
1345
- 'IORING_REGISTER_EVENTFD_ASYNC', 'IORING_REGISTER_FILES',
1346
- 'IORING_REGISTER_FILES2', 'IORING_REGISTER_FILES_UPDATE',
1413
+ 'IORING_OP_WRITE_FIXED', 'IORING_POLL_ADD_MULTI',
1414
+ 'IORING_POLL_UPDATE_EVENTS', 'IORING_POLL_UPDATE_USER_DATA',
1415
+ 'IORING_REGISTER_BUFFERS', 'IORING_REGISTER_BUFFERS2',
1416
+ 'IORING_REGISTER_BUFFERS_UPDATE', 'IORING_REGISTER_ENABLE_RINGS',
1417
+ 'IORING_REGISTER_EVENTFD', 'IORING_REGISTER_EVENTFD_ASYNC',
1418
+ 'IORING_REGISTER_FILES', 'IORING_REGISTER_FILES2',
1419
+ 'IORING_REGISTER_FILES_SKIP', 'IORING_REGISTER_FILES_UPDATE',
1347
1420
  'IORING_REGISTER_FILES_UPDATE2', 'IORING_REGISTER_IOWQ_AFF',
1348
1421
  'IORING_REGISTER_IOWQ_MAX_WORKERS', 'IORING_REGISTER_LAST',
1349
1422
  'IORING_REGISTER_PERSONALITY', 'IORING_REGISTER_PROBE',
@@ -1351,13 +1424,24 @@ __all__ = \
1351
1424
  'IORING_RESTRICTION_REGISTER_OP',
1352
1425
  'IORING_RESTRICTION_SQE_FLAGS_ALLOWED',
1353
1426
  'IORING_RESTRICTION_SQE_FLAGS_REQUIRED',
1354
- 'IORING_RESTRICTION_SQE_OP', 'IORING_UNREGISTER_BUFFERS',
1355
- 'IORING_UNREGISTER_EVENTFD', 'IORING_UNREGISTER_FILES',
1356
- 'IORING_UNREGISTER_IOWQ_AFF', 'IORING_UNREGISTER_PERSONALITY',
1357
- 'IOSQE_ASYNC_BIT', 'IOSQE_BUFFER_SELECT_BIT',
1358
- 'IOSQE_FIXED_FILE_BIT', 'IOSQE_IO_DRAIN_BIT',
1359
- 'IOSQE_IO_HARDLINK_BIT', 'IOSQE_IO_LINK_BIT', 'IO_WQ_BOUND',
1360
- 'IO_WQ_UNBOUND', '__io_uring_get_cqe',
1427
+ 'IORING_RESTRICTION_SQE_OP', 'IORING_SETUP_ATTACH_WQ',
1428
+ 'IORING_SETUP_CLAMP', 'IORING_SETUP_CQSIZE',
1429
+ 'IORING_SETUP_IOPOLL', 'IORING_SETUP_R_DISABLED',
1430
+ 'IORING_SETUP_SQPOLL', 'IORING_SETUP_SQ_AFF',
1431
+ 'IORING_SQ_CQ_OVERFLOW', 'IORING_SQ_NEED_WAKEUP',
1432
+ 'IORING_TIMEOUT_ABS', 'IORING_TIMEOUT_BOOTTIME',
1433
+ 'IORING_TIMEOUT_CLOCK_MASK', 'IORING_TIMEOUT_REALTIME',
1434
+ 'IORING_TIMEOUT_UPDATE', 'IORING_TIMEOUT_UPDATE_MASK',
1435
+ 'IORING_UNREGISTER_BUFFERS', 'IORING_UNREGISTER_EVENTFD',
1436
+ 'IORING_UNREGISTER_FILES', 'IORING_UNREGISTER_IOWQ_AFF',
1437
+ 'IORING_UNREGISTER_PERSONALITY', 'IOSQE_ASYNC', 'IOSQE_ASYNC_BIT',
1438
+ 'IOSQE_BUFFER_SELECT', 'IOSQE_BUFFER_SELECT_BIT',
1439
+ 'IOSQE_FIXED_FILE', 'IOSQE_FIXED_FILE_BIT', 'IOSQE_IO_DRAIN',
1440
+ 'IOSQE_IO_DRAIN_BIT', 'IOSQE_IO_HARDLINK',
1441
+ 'IOSQE_IO_HARDLINK_BIT', 'IOSQE_IO_LINK', 'IOSQE_IO_LINK_BIT',
1442
+ 'IO_URING_OP_SUPPORTED', 'IO_WQ_BOUND', 'IO_WQ_UNBOUND',
1443
+ 'LIB_URING_H', 'LINUX_IO_URING_H', 'SPLICE_F_FD_IN_FIXED',
1444
+ '_XOPEN_SOURCE', '__io_uring_get_cqe',
1361
1445
  '__io_uring_prep_poll_mask', '__io_uring_set_target_fixed_file',
1362
1446
  '__io_uring_sqring_wait', '__u64',
1363
1447
  'c__Ea_IORING_CQE_BUFFER_SHIFT', 'c__Ea_IORING_OP_NOP',
@@ -1434,53 +1518,3 @@ __all__ = \
1434
1518
  NR_io_uring_setup = 425
1435
1519
  NR_io_uring_enter = 426
1436
1520
  NR_io_uring_register = 427
1437
- IOSQE_FIXED_FILE = (1 << IOSQE_FIXED_FILE_BIT)
1438
- IOSQE_IO_DRAIN = (1 << IOSQE_IO_DRAIN_BIT)
1439
- IOSQE_IO_LINK = (1 << IOSQE_IO_LINK_BIT)
1440
- IOSQE_IO_HARDLINK = (1 << IOSQE_IO_HARDLINK_BIT)
1441
- IOSQE_ASYNC = (1 << IOSQE_ASYNC_BIT)
1442
- IOSQE_BUFFER_SELECT = (1 << IOSQE_BUFFER_SELECT_BIT)
1443
- IORING_SETUP_IOPOLL = (1 << 0)
1444
- IORING_SETUP_SQPOLL = (1 << 1)
1445
- IORING_SETUP_SQ_AFF = (1 << 2)
1446
- IORING_SETUP_CQSIZE = (1 << 3)
1447
- IORING_SETUP_CLAMP = (1 << 4)
1448
- IORING_SETUP_ATTACH_WQ = (1 << 5)
1449
- IORING_SETUP_R_DISABLED = (1 << 6)
1450
- IORING_FSYNC_DATASYNC = (1 << 0)
1451
- IORING_TIMEOUT_ABS = (1 << 0)
1452
- IORING_TIMEOUT_UPDATE = (1 << 1)
1453
- IORING_TIMEOUT_BOOTTIME = (1 << 2)
1454
- IORING_TIMEOUT_REALTIME = (1 << 3)
1455
- IORING_LINK_TIMEOUT_UPDATE = (1 << 4)
1456
- IORING_TIMEOUT_CLOCK_MASK = (IORING_TIMEOUT_BOOTTIME | IORING_TIMEOUT_REALTIME)
1457
- IORING_TIMEOUT_UPDATE_MASK = (IORING_TIMEOUT_UPDATE | IORING_LINK_TIMEOUT_UPDATE)
1458
- SPLICE_F_FD_IN_FIXED = (1 << 31)
1459
- IORING_POLL_ADD_MULTI = (1 << 0)
1460
- IORING_POLL_UPDATE_EVENTS = (1 << 1)
1461
- IORING_POLL_UPDATE_USER_DATA = (1 << 2)
1462
- IORING_CQE_F_BUFFER = (1 << 0)
1463
- IORING_CQE_F_MORE = (1 << 1)
1464
- IORING_OFF_SQ_RING = 0
1465
- IORING_OFF_CQ_RING = 0x8000000
1466
- IORING_OFF_SQES = 0x10000000
1467
- IORING_SQ_NEED_WAKEUP = (1 << 0)
1468
- IORING_SQ_CQ_OVERFLOW = (1 << 1)
1469
- IORING_CQ_EVENTFD_DISABLED = (1 << 0)
1470
- IORING_ENTER_GETEVENTS = (1 << 0)
1471
- IORING_ENTER_SQ_WAKEUP = (1 << 1)
1472
- IORING_ENTER_SQ_WAIT = (1 << 2)
1473
- IORING_ENTER_EXT_ARG = (1 << 3)
1474
- IORING_FEAT_SINGLE_MMAP = (1 << 0)
1475
- IORING_FEAT_NODROP = (1 << 1)
1476
- IORING_FEAT_SUBMIT_STABLE = (1 << 2)
1477
- IORING_FEAT_RW_CUR_POS = (1 << 3)
1478
- IORING_FEAT_CUR_PERSONALITY = (1 << 4)
1479
- IORING_FEAT_FAST_POLL = (1 << 5)
1480
- IORING_FEAT_POLL_32BITS = (1 << 6)
1481
- IORING_FEAT_SQPOLL_NONFIXED = (1 << 7)
1482
- IORING_FEAT_EXT_ARG = (1 << 8)
1483
- IORING_FEAT_NATIVE_WORKERS = (1 << 9)
1484
- IORING_FEAT_RSRC_TAGS = (1 << 10)
1485
- IORING_REGISTER_FILES_SKIP = (-2)
1486
- IO_URING_OP_SUPPORTED = (1 << 0)