flashinfer-python 0.2.0.post1__tar.gz

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 (1150) hide show
  1. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/axpby.hpp +95 -0
  2. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/clear.hpp +64 -0
  3. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/cooperative_copy.hpp +333 -0
  4. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/cooperative_gemm.hpp +512 -0
  5. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/copy.hpp +382 -0
  6. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/fill.hpp +87 -0
  7. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/functional.hpp +290 -0
  8. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/gemm.hpp +500 -0
  9. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/prefer.hpp +46 -0
  10. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/prefetch.hpp +145 -0
  11. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/tensor_algorithms.hpp +166 -0
  12. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/algorithm/tuple_algorithms.hpp +1073 -0
  13. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/cluster_sm90.hpp +245 -0
  14. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/config.hpp +50 -0
  15. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/copy.hpp +107 -0
  16. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/copy_sm50.hpp +98 -0
  17. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/copy_sm75.hpp +236 -0
  18. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/copy_sm80.hpp +198 -0
  19. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/copy_sm90.hpp +219 -0
  20. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/copy_sm90_desc.hpp +422 -0
  21. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/copy_sm90_tma.hpp +1395 -0
  22. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma.hpp +64 -0
  23. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm61.hpp +87 -0
  24. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm70.hpp +329 -0
  25. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm75.hpp +120 -0
  26. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm80.hpp +2144 -0
  27. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm90.hpp +5651 -0
  28. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm90_desc.hpp +156 -0
  29. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm90_gmma.hpp +50604 -0
  30. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/mma_sm90_gmma_sparse.hpp +53789 -0
  31. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/arch/util.hpp +320 -0
  32. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_atom.hpp +764 -0
  33. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits.hpp +159 -0
  34. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits_sm50.hpp +75 -0
  35. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits_sm75.hpp +143 -0
  36. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits_sm80.hpp +194 -0
  37. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits_sm90.hpp +132 -0
  38. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits_sm90_im2col.hpp +940 -0
  39. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits_sm90_tma.hpp +1525 -0
  40. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/copy_traits_sm90_tma_swizzle.hpp +93 -0
  41. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_atom.hpp +1117 -0
  42. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits.hpp +189 -0
  43. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits_sm61.hpp +73 -0
  44. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits_sm70.hpp +198 -0
  45. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits_sm75.hpp +81 -0
  46. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits_sm80.hpp +442 -0
  47. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits_sm90.hpp +144 -0
  48. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits_sm90_gmma.hpp +20007 -0
  49. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/atom/mma_traits_sm90_gmma_sparse.hpp +16915 -0
  50. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/config.hpp +149 -0
  51. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/alignment.hpp +70 -0
  52. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/array.hpp +492 -0
  53. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/array_aligned.hpp +42 -0
  54. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/array_subbyte.hpp +637 -0
  55. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/bit_field.hpp +133 -0
  56. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/cuda_types.hpp +183 -0
  57. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/packed_tuple.hpp +254 -0
  58. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/tuple.hpp +744 -0
  59. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/container/type_list.hpp +124 -0
  60. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/int_tuple.hpp +864 -0
  61. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/layout.hpp +2058 -0
  62. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/layout_composed.hpp +652 -0
  63. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/arithmetic_tuple.hpp +556 -0
  64. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/complex.hpp +76 -0
  65. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/int.hpp +106 -0
  66. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/integer_sequence.hpp +151 -0
  67. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/integral_constant.hpp +503 -0
  68. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/integral_ratio.hpp +264 -0
  69. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/math.hpp +356 -0
  70. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/numeric_types.hpp +135 -0
  71. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/numeric/real.hpp +74 -0
  72. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/pointer.hpp +322 -0
  73. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/pointer_base.hpp +246 -0
  74. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/pointer_flagged.hpp +199 -0
  75. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/pointer_sparse.hpp +172 -0
  76. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/pointer_swizzle.hpp +168 -0
  77. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/stride.hpp +598 -0
  78. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/swizzle.hpp +498 -0
  79. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/swizzle_layout.hpp +584 -0
  80. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/tensor.hpp +58 -0
  81. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/tensor_impl.hpp +1193 -0
  82. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/tensor_predicate.hpp +78 -0
  83. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/tensor_zip.hpp +243 -0
  84. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/underscore.hpp +194 -0
  85. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/util/debug.hpp +164 -0
  86. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/util/print.hpp +199 -0
  87. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cute/util/type_traits.hpp +292 -0
  88. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/aligned_buffer.h +129 -0
  89. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/arch.h +109 -0
  90. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/barrier.h +630 -0
  91. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/cache_operation.h +66 -0
  92. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/config.h +81 -0
  93. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/grid_dependency_control.h +84 -0
  94. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/memory.h +602 -0
  95. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/memory_sm75.h +269 -0
  96. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/memory_sm80.h +472 -0
  97. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma.h +269 -0
  98. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm50.h +432 -0
  99. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm60.h +252 -0
  100. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm61.h +142 -0
  101. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm70.h +665 -0
  102. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm75.h +793 -0
  103. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm80.h +1505 -0
  104. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm89.h +367 -0
  105. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sm90.h +245 -0
  106. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sparse_sm80.h +1238 -0
  107. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/mma_sparse_sm89.h +409 -0
  108. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/reg_reconfig.h +67 -0
  109. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/simd.h +125 -0
  110. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/simd_sm60.h +104 -0
  111. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/simd_sm61.h +147 -0
  112. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/synclog.hpp +1324 -0
  113. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/wmma.h +223 -0
  114. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/wmma_sm70.h +136 -0
  115. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/wmma_sm72.h +210 -0
  116. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/arch/wmma_sm75.h +207 -0
  117. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/array.h +2614 -0
  118. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/array_planar_complex.h +89 -0
  119. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/array_subbyte.h +559 -0
  120. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/barrier.h +377 -0
  121. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/bfloat16.h +679 -0
  122. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/blas3.h +143 -0
  123. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/blas3_types.h +78 -0
  124. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/block_striped.h +267 -0
  125. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/cluster_launch.hpp +275 -0
  126. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/complex.h +823 -0
  127. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/constants.h +1239 -0
  128. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/collective/builders/sm90_common.inl +96 -0
  129. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/collective/builders/sm90_gmma_builder.inl +257 -0
  130. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/collective/collective_builder.hpp +93 -0
  131. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/collective/collective_conv.hpp +62 -0
  132. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/collective/detail.hpp +254 -0
  133. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/collective/sm90_implicit_gemm_gmma_ss_warpspecialized.hpp +663 -0
  134. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/conv2d_problem_size.h +654 -0
  135. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/conv3d_problem_size.h +513 -0
  136. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/convnd_problem_shape.hpp +561 -0
  137. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/convolution.h +194 -0
  138. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/detail.hpp +137 -0
  139. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/device/conv_universal_adapter.hpp +421 -0
  140. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/device/direct_convolution.h +270 -0
  141. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/device/implicit_gemm_convolution.h +361 -0
  142. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/device/implicit_gemm_convolution_fusion.h +269 -0
  143. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/dispatch_policy.hpp +90 -0
  144. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/conv_universal.hpp +65 -0
  145. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d.h +322 -0
  146. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_dgrad.h +1927 -0
  147. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_fprop.h +2007 -0
  148. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_fprop_fusion.h +357 -0
  149. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_fprop_with_absmax.h +127 -0
  150. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_fprop_with_broadcast.h +221 -0
  151. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_fprop_with_reduction.h +130 -0
  152. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_group_fprop.h +622 -0
  153. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_wgrad.h +1011 -0
  154. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv2d_wgrad_fusion.h +325 -0
  155. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv3d_dgrad.h +736 -0
  156. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv3d_fprop.h +981 -0
  157. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv3d_fprop_fusion.h +360 -0
  158. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv3d_fprop_with_broadcast.h +222 -0
  159. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_conv3d_wgrad.h +936 -0
  160. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_deconv2d.h +999 -0
  161. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_deconv2d_with_broadcast.h +305 -0
  162. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_deconv3d.h +541 -0
  163. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_deconv3d_with_broadcast.h +309 -0
  164. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/default_depthwise_fprop.h +588 -0
  165. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/direct_convolution.h +505 -0
  166. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/implicit_gemm_convolution.h +455 -0
  167. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/implicit_gemm_convolution_fusion.h +461 -0
  168. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/implicit_gemm_convolution_strided_dgrad.h +492 -0
  169. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/implicit_gemm_convolution_with_absmax.h +494 -0
  170. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/implicit_gemm_convolution_with_fused_epilogue.h +499 -0
  171. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/kernel/sm90_implicit_gemm_tma_warpspecialized.hpp +76 -0
  172. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/thread/depthwise_mma.h +325 -0
  173. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_dgrad_filter_tile_access_iterator_analytic.h +485 -0
  174. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_dgrad_filter_tile_access_iterator_optimized.h +619 -0
  175. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_dgrad_output_gradient_tile_access_iterator_analytic.h +606 -0
  176. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_dgrad_output_gradient_tile_access_iterator_optimized.h +821 -0
  177. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_activation_tile_access_iterator_analytic.h +332 -0
  178. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_activation_tile_access_iterator_few_channels.h +360 -0
  179. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_activation_tile_access_iterator_fixed_channels.h +353 -0
  180. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_activation_tile_access_iterator_optimized.h +422 -0
  181. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_filter_tile_access_iterator_analytic.h +330 -0
  182. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_filter_tile_access_iterator_few_channels.h +289 -0
  183. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_filter_tile_access_iterator_fixed_channels.h +275 -0
  184. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_fprop_filter_tile_access_iterator_optimized.h +322 -0
  185. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_params.h +893 -0
  186. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_tile_iterator.h +337 -0
  187. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_wgrad_activation_tile_access_iterator_analytic.h +285 -0
  188. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_wgrad_activation_tile_access_iterator_optimized.h +321 -0
  189. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_wgrad_output_gradient_tile_access_iterator_analytic.h +260 -0
  190. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv2d_wgrad_output_gradient_tile_access_iterator_optimized.h +310 -0
  191. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_dgrad_filter_tile_access_iterator_analytic.h +268 -0
  192. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_dgrad_filter_tile_access_iterator_optimized.h +289 -0
  193. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_dgrad_output_gradient_tile_access_iterator_analytic.h +343 -0
  194. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_dgrad_output_gradient_tile_access_iterator_optimized.h +489 -0
  195. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_fprop_activation_tile_access_iterator_analytic.h +291 -0
  196. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_fprop_activation_tile_access_iterator_optimized.h +478 -0
  197. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_fprop_filter_tile_access_iterator_analytic.h +259 -0
  198. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_fprop_filter_tile_access_iterator_optimized.h +279 -0
  199. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_params.h +508 -0
  200. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_wgrad_activation_tile_access_iterator_analytic.h +289 -0
  201. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_wgrad_activation_tile_access_iterator_optimized.h +319 -0
  202. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_wgrad_output_gradient_tile_access_iterator_analytic.h +267 -0
  203. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/conv3d_wgrad_output_gradient_tile_access_iterator_optimized.h +310 -0
  204. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_direct_conv_params.h +230 -0
  205. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_fprop_activation_tile_access_iterator_direct_conv_fixed_stride_dilation.h +314 -0
  206. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_fprop_activation_tile_access_iterator_direct_conv_optimized.h +291 -0
  207. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_fprop_direct_conv_multistage.h +551 -0
  208. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_fprop_filter_tile_access_iterator_direct_conv_optimized.h +261 -0
  209. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_fprop_pipelined.h +336 -0
  210. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_mma_base.h +229 -0
  211. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/depthwise_mma_core_with_lane_access_size.h +952 -0
  212. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/implicit_gemm_fprop_fusion_multistage.h +802 -0
  213. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/implicit_gemm_multistage.h +539 -0
  214. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/implicit_gemm_pipelined.h +320 -0
  215. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/implicit_gemm_wgrad_fusion_multistage.h +729 -0
  216. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/predicated_scale_bias_vector_access_iterator.h +470 -0
  217. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/predicated_scale_bias_vector_iterator.h +371 -0
  218. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/threadblock/threadblock_swizzle.h +193 -0
  219. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/warp/mma_depthwise_simt.h +380 -0
  220. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/warp/mma_depthwise_simt_tile_iterator.h +862 -0
  221. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/conv/warp/scale_bias_relu_transform.h +221 -0
  222. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/coord.h +480 -0
  223. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/core_io.h +286 -0
  224. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/cuda_host_adapter.hpp +407 -0
  225. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/cutlass.h +160 -0
  226. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/detail/collective.hpp +63 -0
  227. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/detail/dependent_false.hpp +86 -0
  228. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/detail/helper_macros.hpp +205 -0
  229. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/detail/layout.hpp +392 -0
  230. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/detail/mma.hpp +71 -0
  231. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/device_kernel.h +125 -0
  232. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/builders/sm90_builder.inl +812 -0
  233. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/builders/sm90_common.inl +80 -0
  234. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/collective_builder.hpp +120 -0
  235. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/collective_epilogue.hpp +71 -0
  236. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/default_epilogue.hpp +242 -0
  237. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/default_epilogue_array.hpp +273 -0
  238. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/detail.hpp +492 -0
  239. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/epilogue_tensor_broadcast.hpp +271 -0
  240. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/sm70_epilogue_vectorized.hpp +549 -0
  241. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/sm70_epilogue_vectorized_array.hpp +412 -0
  242. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/sm90_epilogue_array_tma_warpspecialized.hpp +1198 -0
  243. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/sm90_epilogue_tma_warpspecialized.hpp +894 -0
  244. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/collective/sm90_epilogue_tma_warpspecialized_bias_elementwise.hpp +164 -0
  245. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/dispatch_policy.hpp +195 -0
  246. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/callbacks.hpp +89 -0
  247. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/operations.hpp +351 -0
  248. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/sm90_callbacks_tma_warpspecialized.hpp +1787 -0
  249. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/sm90_visitor_compute_tma_warpspecialized.hpp +839 -0
  250. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/sm90_visitor_load_tma_warpspecialized.hpp +1415 -0
  251. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/sm90_visitor_store_tma_warpspecialized.hpp +1729 -0
  252. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/sm90_visitor_tma_warpspecialized.hpp +1139 -0
  253. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/fusion/sm90_visitor_topk_softmax.hpp +759 -0
  254. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/activation.h +758 -0
  255. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/conversion_op.h +132 -0
  256. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/detail.hpp +52 -0
  257. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination.h +523 -0
  258. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_bias_elementwise.h +524 -0
  259. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_bias_relu.h +610 -0
  260. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_clamp.h +685 -0
  261. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_dgelu.h +250 -0
  262. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_drelu.h +452 -0
  263. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_gelu.h +70 -0
  264. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_generic.h +265 -0
  265. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_generic_with_scaling.h +325 -0
  266. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_hardswish.h +69 -0
  267. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_leaky_relu.h +231 -0
  268. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_params.h +75 -0
  269. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_planar_complex.h +236 -0
  270. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_relu.h +572 -0
  271. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_relu0.h +543 -0
  272. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_residual_block.h +301 -0
  273. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_sigmoid.h +70 -0
  274. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_silu.h +69 -0
  275. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_tensor_broadcast.hpp +253 -0
  276. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/linear_combination_with_elementwise.h +234 -0
  277. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/reduction_op.h +97 -0
  278. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/thread/scale_type.h +66 -0
  279. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_complex_tensor_op.h +255 -0
  280. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_complex_tensor_op_blas3.h +264 -0
  281. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_direct_store.h +74 -0
  282. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_planar_complex.h +241 -0
  283. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_simt.h +443 -0
  284. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_tensor_op.h +904 -0
  285. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_tensor_op_blas3.h +175 -0
  286. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_volta_tensor_op.h +337 -0
  287. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_with_absmax.h +126 -0
  288. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_with_broadcast.h +376 -0
  289. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_with_reduction.h +177 -0
  290. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_epilogue_wmma_tensor_op.h +165 -0
  291. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_thread_map_simt.h +127 -0
  292. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_thread_map_tensor_op.h +208 -0
  293. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_thread_map_volta_tensor_op.h +228 -0
  294. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/default_thread_map_wmma_tensor_op.h +113 -0
  295. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/direct_store_epilogue_iterator.h +142 -0
  296. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue.h +543 -0
  297. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_base.h +240 -0
  298. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_base_streamk.h +197 -0
  299. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_depthwise.h +335 -0
  300. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_direct_store.h +347 -0
  301. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_gemm_k_reduction.h +212 -0
  302. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_planar_complex.h +401 -0
  303. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_smem_accumulator.h +230 -0
  304. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_streamk_with_broadcast.h +443 -0
  305. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_visitor_with_softmax.h +513 -0
  306. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_with_absmax.h +923 -0
  307. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_with_broadcast.h +1718 -0
  308. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_with_reduction.h +823 -0
  309. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_with_visitor.h +409 -0
  310. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_with_visitor_callbacks.h +504 -0
  311. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/epilogue_workspace.h +197 -0
  312. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/fusion/visitor_2x.hpp +433 -0
  313. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/fusion/visitor_compute.hpp +109 -0
  314. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/fusion/visitor_load.hpp +583 -0
  315. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/fusion/visitor_store.hpp +805 -0
  316. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/fusion/visitors.hpp +38 -0
  317. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/interleaved_epilogue.h +407 -0
  318. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/output_iterator_parameter.h +223 -0
  319. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/output_tile_thread_map.h +628 -0
  320. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator.h +1387 -0
  321. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_affine.h +615 -0
  322. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_affine_layout_params.h +156 -0
  323. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_blas3.h +633 -0
  324. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_conv.h +562 -0
  325. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_direct_conv.h +445 -0
  326. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_params.h +483 -0
  327. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_predicates.h +309 -0
  328. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/predicated_tile_iterator_strided_dgrad.h +479 -0
  329. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/shared_load_iterator.h +223 -0
  330. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/shared_load_iterator_mixed.h +594 -0
  331. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/threadblock/shared_load_iterator_pitch_linear.h +194 -0
  332. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/fragment_iterator_complex_tensor_op.h +187 -0
  333. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/fragment_iterator_gaussian_complex_tensor_op.h +194 -0
  334. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/fragment_iterator_simt.h +164 -0
  335. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/fragment_iterator_tensor_op.h +378 -0
  336. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/fragment_iterator_volta_tensor_op.h +269 -0
  337. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/fragment_iterator_wmma_tensor_op.h +164 -0
  338. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/simt_policy.h +107 -0
  339. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/tensor_op_policy.h +189 -0
  340. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/tile_iterator_simt.h +785 -0
  341. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/tile_iterator_tensor_op.h +671 -0
  342. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/tile_iterator_tensor_op_mixed.h +1081 -0
  343. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/tile_iterator_volta_tensor_op.h +440 -0
  344. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/tile_iterator_wmma_tensor_op.h +227 -0
  345. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/volta_tensor_op_policy.h +195 -0
  346. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/epilogue/warp/wmma_tensor_op_policy.h +101 -0
  347. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/fast_math.h +1067 -0
  348. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/float8.h +1284 -0
  349. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/floating_point_nvrtc.h +98 -0
  350. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/functional.h +930 -0
  351. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/builders/sm90_common.inl +419 -0
  352. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/builders/sm90_gmma_builder.inl +1038 -0
  353. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/builders/sm90_sparse_config.inl +268 -0
  354. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/builders/sm90_sparse_gmma_builder.inl +388 -0
  355. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/collective_builder.hpp +42 -0
  356. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/collective_builder_decl.hpp +88 -0
  357. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/collective_mma.hpp +49 -0
  358. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/collective_mma_decl.hpp +64 -0
  359. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/fp8_accumulation.hpp +121 -0
  360. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm70_mma_twostage.hpp +597 -0
  361. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm80_mma_multistage.hpp +707 -0
  362. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_array_tma_gmma_ss_warpspecialized.hpp +761 -0
  363. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_multistage_gmma_rs_warpspecialized.hpp +677 -0
  364. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_multistage_gmma_ss_warpspecialized.hpp +509 -0
  365. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_tma_gmma_rs_warpspecialized.hpp +752 -0
  366. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_tma_gmma_rs_warpspecialized_mixed_input.hpp +1529 -0
  367. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_tma_gmma_ss.hpp +539 -0
  368. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_tma_gmma_ss_warpspecialized.hpp +582 -0
  369. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_mma_tma_gmma_ss_warpspecialized_fp8.hpp +584 -0
  370. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/collective/sm90_sparse_mma_tma_gmma_ss_warpspecialized.hpp +724 -0
  371. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/base_grouped.h +478 -0
  372. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/default_gemm_configuration.h +955 -0
  373. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/ell_gemm.h +849 -0
  374. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm.h +772 -0
  375. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_array.h +738 -0
  376. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_batched.h +704 -0
  377. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_complex.h +718 -0
  378. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_grouped.h +61 -0
  379. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_layernorm_mainloop_fusion.h +385 -0
  380. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_sparse.h +515 -0
  381. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_sparse_universal.h +211 -0
  382. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_sparse_universal_with_absmax.h +202 -0
  383. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_sparse_with_absmax.h +360 -0
  384. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_sparse_with_visitor.h +342 -0
  385. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_splitk_parallel.h +636 -0
  386. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_universal.h +442 -0
  387. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_universal_adapter.h +693 -0
  388. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_universal_base.h +522 -0
  389. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_universal_streamk_with_broadcast.h +386 -0
  390. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_universal_with_absmax.h +404 -0
  391. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_universal_with_broadcast.h +386 -0
  392. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemm_with_k_reduction.h +415 -0
  393. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/gemv.h +182 -0
  394. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/rank_2k.h +548 -0
  395. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/rank_2k_grouped.h +63 -0
  396. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/rank_k.h +510 -0
  397. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/symm.h +603 -0
  398. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/device/trmm.h +759 -0
  399. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/dispatch_policy.hpp +324 -0
  400. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/gemm.h +133 -0
  401. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/gemm_enumerated_types.h +80 -0
  402. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/group_array_problem_shape.hpp +123 -0
  403. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_ell_gemm.h +837 -0
  404. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm.h +1189 -0
  405. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_complex.h +404 -0
  406. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_grouped.h +384 -0
  407. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_grouped_softmax_mainloop_fusion.h +164 -0
  408. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_layernorm_mainloop_fusion.h +137 -0
  409. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_planar_complex_universal.h +352 -0
  410. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_sparse.h +252 -0
  411. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_sparse_universal.h +141 -0
  412. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_sparse_universal_with_absmax.h +144 -0
  413. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_sparse_with_absmax.h +157 -0
  414. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_sparse_with_visitor.h +197 -0
  415. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_splitk_parallel.h +136 -0
  416. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_streamk_with_broadcast.h +146 -0
  417. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_universal.h +396 -0
  418. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_universal_with_visitor.h +157 -0
  419. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_with_absmax.h +143 -0
  420. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_with_broadcast.h +243 -0
  421. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_with_k_reduction.h +150 -0
  422. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemm_with_reduction.h +246 -0
  423. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_gemv.h +132 -0
  424. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_rank_2k.h +285 -0
  425. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_rank_2k_complex.h +498 -0
  426. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_rank_2k_grouped.h +355 -0
  427. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_rank_2k_universal.h +346 -0
  428. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_rank_k.h +247 -0
  429. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_rank_k_complex.h +429 -0
  430. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_rank_k_universal.h +305 -0
  431. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_symm.h +321 -0
  432. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_symm_complex.h +508 -0
  433. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_symm_universal.h +342 -0
  434. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_trmm.h +269 -0
  435. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_trmm_complex.h +265 -0
  436. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/default_trmm_universal.h +359 -0
  437. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/ell_gemm.h +824 -0
  438. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm.h +380 -0
  439. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_array.h +264 -0
  440. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_batched.h +273 -0
  441. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_grouped.h +457 -0
  442. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_grouped_problem_visitor.h +121 -0
  443. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_grouped_softmax_mainloop_fusion.h +481 -0
  444. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_layernorm_mainloop_fusion.h +782 -0
  445. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_params.h +189 -0
  446. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_pipelined.h +158 -0
  447. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_planar_complex.h +715 -0
  448. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_planar_complex_array.h +609 -0
  449. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_sparse_universal.h +804 -0
  450. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_sparse_universal_with_absmax.h +609 -0
  451. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_splitk_parallel.h +253 -0
  452. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_streamk_with_fused_epilogue.h +2396 -0
  453. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_transpose_operands.h +124 -0
  454. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_universal.h +702 -0
  455. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_universal.hpp +66 -0
  456. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_universal_decl.h +61 -0
  457. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_universal_streamk.h +1168 -0
  458. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_universal_with_visitor.h +321 -0
  459. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_universal_with_visitor_streamk.h +895 -0
  460. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_with_absmax.h +759 -0
  461. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_with_fused_epilogue.h +1512 -0
  462. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemm_with_k_reduction.h +704 -0
  463. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemv.h +638 -0
  464. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/gemv_batched_strided.h +244 -0
  465. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/grouped_problem_visitor.h +463 -0
  466. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/params_sparse_base.h +115 -0
  467. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/params_universal_base.h +264 -0
  468. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/rank_2k_grouped.h +688 -0
  469. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/rank_2k_grouped_problem_visitor.h +376 -0
  470. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/rank_2k_transpose_operands.h +129 -0
  471. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/rank_2k_universal.h +769 -0
  472. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/rank_k_universal.h +556 -0
  473. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm70_gemm.hpp +270 -0
  474. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_array_tma_warpspecialized_cooperative.hpp +883 -0
  475. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_array_tma_warpspecialized_pingpong.hpp +948 -0
  476. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_tma.hpp +306 -0
  477. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_tma_warpspecialized.hpp +522 -0
  478. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_tma_warpspecialized_cooperative.hpp +671 -0
  479. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_tma_warpspecialized_pingpong.hpp +664 -0
  480. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_warpspecialized.hpp +417 -0
  481. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_warpspecialized_cooperative.hpp +504 -0
  482. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_gemm_warpspecialized_pingpong.hpp +516 -0
  483. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_tile_scheduler.hpp +139 -0
  484. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_tile_scheduler_group.hpp +510 -0
  485. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sm90_tile_scheduler_stream_k.hpp +945 -0
  486. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sparse_gemm.h +394 -0
  487. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sparse_gemm_with_absmax.h +509 -0
  488. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/sparse_gemm_with_visitor.h +238 -0
  489. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/static_tile_scheduler.hpp +492 -0
  490. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/symm_universal.h +675 -0
  491. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/tile_scheduler.hpp +149 -0
  492. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/tile_scheduler_params.h +1535 -0
  493. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/kernel/trmm_universal.h +580 -0
  494. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/thread/mma.h +90 -0
  495. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/thread/mma_sm50.h +538 -0
  496. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/thread/mma_sm60.h +1161 -0
  497. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/thread/mma_sm61.h +284 -0
  498. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_ell_mma.h +734 -0
  499. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_gemv_core.h +151 -0
  500. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma.h +823 -0
  501. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core.h +116 -0
  502. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_simt.h +1723 -0
  503. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_sm70.h +682 -0
  504. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_sm75.h +1315 -0
  505. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_sm80.h +2951 -0
  506. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_sparse_sm80.h +876 -0
  507. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_with_access_size.h +328 -0
  508. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_with_reduction.h +167 -0
  509. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_core_wmma.h +712 -0
  510. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_layernorm_mainloop_fusion.h +178 -0
  511. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_planar_complex_multistage.h +136 -0
  512. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_planar_complex_pipelined.h +130 -0
  513. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_softmax_mainloop_fusion.h +160 -0
  514. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_mma_with_reduction.h +141 -0
  515. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_multistage_mma_complex.h +159 -0
  516. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_multistage_mma_complex_core.h +119 -0
  517. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_multistage_mma_complex_core_sm80.h +1808 -0
  518. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_multistage_trmm_complex.h +556 -0
  519. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_sparse_mma.h +196 -0
  520. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/default_trmm.h +445 -0
  521. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/ell_mma_multistage.h +648 -0
  522. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/ell_mma_pipelined.h +376 -0
  523. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/gemv.h +147 -0
  524. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/index_remat.h +107 -0
  525. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_base.h +236 -0
  526. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_blas3_multistage.h +707 -0
  527. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_layernorm_mainloop_fusion_multistage.h +863 -0
  528. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_multistage.h +741 -0
  529. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_pipelined.h +439 -0
  530. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_planar_complex_base.h +208 -0
  531. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_planar_complex_multistage.h +646 -0
  532. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_planar_complex_pipelined.h +424 -0
  533. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_singlestage.h +265 -0
  534. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_softmax_mainloop_fusion_multistage.h +756 -0
  535. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_sparse_base.h +273 -0
  536. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_sparse_multistage.h +668 -0
  537. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/mma_with_reduction_multistage.h +545 -0
  538. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/threadblock_swizzle.h +459 -0
  539. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/threadblock/threadblock_swizzle_streamk.h +801 -0
  540. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/default_mma_complex_tensor_op.h +612 -0
  541. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/default_mma_sparse_tensor_op.h +165 -0
  542. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/default_mma_tensor_op.h +123 -0
  543. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/default_mma_tensor_op_sm80.h +375 -0
  544. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/default_mma_with_reduction_tensor_op.h +92 -0
  545. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/default_mma_wmma_tensor_op.h +130 -0
  546. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/layernorm_scale_bias_transform.h +139 -0
  547. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma.h +60 -0
  548. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_complex_tensor_op.h +1168 -0
  549. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_complex_tensor_op_fast_f32.h +663 -0
  550. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_complex_tensor_op_tile_iterator_sm80.h +2485 -0
  551. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_gaussian_complex_tensor_op.h +642 -0
  552. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_gaussian_complex_tensor_op_tile_iterator_sm80.h +390 -0
  553. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_mixed_input_tensor_op.h +566 -0
  554. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_planar_complex.h +182 -0
  555. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_simt.h +263 -0
  556. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_simt_policy.h +69 -0
  557. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_simt_tile_iterator.h +1890 -0
  558. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_sparse_tensor_op.h +382 -0
  559. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op.h +415 -0
  560. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_fast_f32.h +471 -0
  561. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_fragment_iterator.h +559 -0
  562. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_policy.h +65 -0
  563. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_sm70.h +280 -0
  564. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_tile_access_iterator.h +362 -0
  565. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_tile_iterator.h +4793 -0
  566. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_tile_iterator_sm70.h +3098 -0
  567. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_tile_iterator_sm80.h +2441 -0
  568. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_tile_iterator_sparse.h +380 -0
  569. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_tile_iterator_wmma.h +805 -0
  570. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_tensor_op_wmma.h +223 -0
  571. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/mma_with_reduction_tensor_op.h +449 -0
  572. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/scale_bias_tile_iterator.h +572 -0
  573. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/softmax_scale_bias_transform.h +117 -0
  574. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm/warp/tile_iterator_planar_complex.h +250 -0
  575. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm_coord.h +394 -0
  576. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/gemm_coord.hpp +66 -0
  577. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/half.h +930 -0
  578. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/integer_subbyte.h +280 -0
  579. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/kernel_hardware_info.h +76 -0
  580. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/kernel_hardware_info.hpp +35 -0
  581. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/kernel_launch.h +141 -0
  582. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/layout.h +64 -0
  583. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/matrix.h +1349 -0
  584. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/permute.h +828 -0
  585. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/pitch_linear.h +149 -0
  586. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/tensor.h +648 -0
  587. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/tensor_op_multiplicand_sm70.h +1044 -0
  588. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/tensor_op_multiplicand_sm75.h +1169 -0
  589. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/tensor_op_multiplicand_sm80.h +1139 -0
  590. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/layout/vector.h +105 -0
  591. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/matrix.h +14129 -0
  592. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/matrix_coord.h +164 -0
  593. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/matrix_shape.h +65 -0
  594. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/numeric_conversion.h +4547 -0
  595. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/numeric_size.h +83 -0
  596. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/numeric_types.h +88 -0
  597. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/pipeline/pipeline.hpp +36 -0
  598. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/pipeline/sm90_pipeline.hpp +1173 -0
  599. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/pitch_linear_coord.h +181 -0
  600. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/platform/platform.h +913 -0
  601. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/predicate_vector.h +547 -0
  602. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/quaternion.h +752 -0
  603. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/real.h +61 -0
  604. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/device/reduce_split_k.h +232 -0
  605. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/device/tensor_reduce.h +264 -0
  606. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/device/tensor_reduce_affine_contiguous.h +374 -0
  607. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/device/tensor_reduce_affine_strided.h +362 -0
  608. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/kernel/reduce_softmax_final.h +267 -0
  609. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/kernel/reduce_split_k.h +248 -0
  610. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/kernel/tensor_reduce_affine_contiguous.h +606 -0
  611. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/kernel/tensor_reduce_affine_strided.h +641 -0
  612. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/thread/reduce.h +234 -0
  613. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/thread/reduction_operators.h +235 -0
  614. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/reduction/threadblock_swizzle.h +67 -0
  615. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/relatively_equal.h +275 -0
  616. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/semaphore.h +118 -0
  617. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/subbyte_reference.h +1388 -0
  618. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/tensor_coord.h +326 -0
  619. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/tensor_ref.h +419 -0
  620. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/tensor_ref_planar_complex.h +374 -0
  621. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/tensor_view.h +297 -0
  622. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/tensor_view_planar_complex.h +301 -0
  623. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/tfloat32.h +478 -0
  624. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/thread/matrix.h +198 -0
  625. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/trace.h +59 -0
  626. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/collective/sm90_wgmma_transpose.hpp +754 -0
  627. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/device/transform_universal_adapter.hpp +303 -0
  628. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/kernel/filter_format_transformer.hpp +223 -0
  629. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/kernel/sm90_sparse_gemm_compressor.hpp +578 -0
  630. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/kernel/sparse_gemm_compressor.hpp +284 -0
  631. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/pitch_linear_thread_map.h +926 -0
  632. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/thread/transpose.h +107 -0
  633. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/thread/unary_op.h +105 -0
  634. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/ell_iterator.h +199 -0
  635. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/ell_predicated_tile_access_iterator.h +1350 -0
  636. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/ell_predicated_tile_iterator.h +1315 -0
  637. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_scale_bias_vector_access_iterator.h +375 -0
  638. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_scale_bias_vector_iterator.h +328 -0
  639. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_tile_access_iterator.h +2118 -0
  640. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_tile_access_iterator_2dthreadtile.h +834 -0
  641. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_tile_access_iterator_params.h +290 -0
  642. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_tile_access_iterator_triangular_matrix.h +892 -0
  643. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_tile_iterator.h +1887 -0
  644. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_tile_iterator_2dthreadtile.h +787 -0
  645. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_tile_iterator_triangular_matrix.h +818 -0
  646. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/predicated_vector_access_iterator.h +417 -0
  647. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_scale_bias_vector_access_iterator.h +253 -0
  648. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_access_iterator.h +58 -0
  649. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_access_iterator_pitch_linear.h +408 -0
  650. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_access_iterator_pitch_linear_direct_conv.h +587 -0
  651. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_access_iterator_tensor_op.h +821 -0
  652. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_access_iterator_tensor_op_sm80.h +1532 -0
  653. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_iterator.h +62 -0
  654. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_iterator_pitch_linear.h +552 -0
  655. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_iterator_pitch_linear_2dthreadtile.h +509 -0
  656. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_iterator_tensor_op.h +1107 -0
  657. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/regular_tile_iterator_tensor_op_sm70.h +1460 -0
  658. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/threadblock/vector_iterator.h +149 -0
  659. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/transform/warp/vector_fragment_iterator.h +283 -0
  660. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/uint128.h +270 -0
  661. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/version.h +80 -0
  662. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/wmma_array.h +133 -0
  663. flashinfer_python-0.2.0.post1/3rdparty/cutlass/include/cutlass/workspace.h +150 -0
  664. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/GPU_Clock.hpp +67 -0
  665. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/command_line.h +313 -0
  666. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/cublas_wrappers.hpp +526 -0
  667. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/debug.h +143 -0
  668. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_dump.h +187 -0
  669. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_groupnorm.h +402 -0
  670. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_layernorm.h +644 -0
  671. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_memory.h +377 -0
  672. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_nchw_to_nhwc.h +141 -0
  673. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_nhwc_padding.h +276 -0
  674. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_nhwc_pooling.h +576 -0
  675. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_nhwc_to_nchw.h +144 -0
  676. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_rmsnorm.h +186 -0
  677. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/device_utils.h +127 -0
  678. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/distribution.h +154 -0
  679. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/exceptions.h +69 -0
  680. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/gett_commandline.hpp +369 -0
  681. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/helper_cuda.hpp +116 -0
  682. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/host_reorder.h +111 -0
  683. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/host_tensor.h +541 -0
  684. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/host_tensor_planar_complex.h +591 -0
  685. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/host_uncompress.h +157 -0
  686. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/index_sequence.h +38 -0
  687. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/packed_stride.hpp +570 -0
  688. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/print_error.hpp +341 -0
  689. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/detail/inner_product.h +135 -0
  690. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/detail/linear_to_coordinate.h +94 -0
  691. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/convolution.h +1549 -0
  692. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/gemm.h +385 -0
  693. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/gemm_complex.h +350 -0
  694. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/gemm_planar_complex.h +311 -0
  695. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/gett.hpp +146 -0
  696. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/kernel/gemm.h +162 -0
  697. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/kernel/tensor_elementwise.h +168 -0
  698. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/kernel/tensor_foreach.h +159 -0
  699. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/rank_2k_complex.h +355 -0
  700. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/tensor_compare.h +246 -0
  701. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/tensor_fill.h +2077 -0
  702. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/tensor_foreach.h +144 -0
  703. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/tensor_reduce.h +510 -0
  704. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/tensor_relu.h +141 -0
  705. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/device/thread/gemm.h +186 -0
  706. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/conv.hpp +698 -0
  707. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/convolution.h +802 -0
  708. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/error_metrics.h +66 -0
  709. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/gemm.h +531 -0
  710. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/gemm_complex.h +210 -0
  711. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/gemm_planar_complex.h +228 -0
  712. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/gett.hpp +538 -0
  713. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/rank_2k.h +261 -0
  714. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/rank_2k_complex.h +318 -0
  715. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/rank_k_complex.h +234 -0
  716. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/symm.h +285 -0
  717. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/symm_complex.h +319 -0
  718. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_compare.h +423 -0
  719. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_compare.hpp +101 -0
  720. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_copy.h +256 -0
  721. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_elementwise.h +341 -0
  722. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_fill.h +1718 -0
  723. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_fill.hpp +432 -0
  724. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_foreach.h +134 -0
  725. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_norm.h +42 -0
  726. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_reduce.h +203 -0
  727. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/tensor_reduce.hpp +203 -0
  728. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/trmm.h +215 -0
  729. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/reference/host/trmm_complex.h +262 -0
  730. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/tensor_view_io.h +270 -0
  731. flashinfer_python-0.2.0.post1/3rdparty/cutlass/tools/util/include/cutlass/util/type_traits.h +238 -0
  732. flashinfer_python-0.2.0.post1/LICENSE +223 -0
  733. flashinfer_python-0.2.0.post1/PKG-INFO +182 -0
  734. flashinfer_python-0.2.0.post1/README.md +169 -0
  735. flashinfer_python-0.2.0.post1/csrc/activation.cu +81 -0
  736. flashinfer_python-0.2.0.post1/csrc/aot_extension_utils.h +46 -0
  737. flashinfer_python-0.2.0.post1/csrc/batch_decode.cu +196 -0
  738. flashinfer_python-0.2.0.post1/csrc/batch_prefill.cu +321 -0
  739. flashinfer_python-0.2.0.post1/csrc/batch_prefill_sm90.cu +291 -0
  740. flashinfer_python-0.2.0.post1/csrc/bmm_fp8.cu +62 -0
  741. flashinfer_python-0.2.0.post1/csrc/cascade.cu +131 -0
  742. flashinfer_python-0.2.0.post1/csrc/flashinfer_cascade_ops.cu +32 -0
  743. flashinfer_python-0.2.0.post1/csrc/flashinfer_gemm_ops.cu +29 -0
  744. flashinfer_python-0.2.0.post1/csrc/flashinfer_norm_ops.cu +36 -0
  745. flashinfer_python-0.2.0.post1/csrc/flashinfer_ops.cu +275 -0
  746. flashinfer_python-0.2.0.post1/csrc/flashinfer_ops_sm90.cu +65 -0
  747. flashinfer_python-0.2.0.post1/csrc/flashinfer_page_ops.cu +35 -0
  748. flashinfer_python-0.2.0.post1/csrc/flashinfer_quantization_ops.cu +26 -0
  749. flashinfer_python-0.2.0.post1/csrc/flashinfer_rope_ops.cu +51 -0
  750. flashinfer_python-0.2.0.post1/csrc/flashinfer_sampling_ops.cu +72 -0
  751. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +28 -0
  752. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +28 -0
  753. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +28 -0
  754. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_e4m3_dtypekv_e4m3_dtypeout_e4m3_idtype_i32.cu +28 -0
  755. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_e5m2_dtypekv_e5m2_dtypeout_e5m2_idtype_i32.cu +28 -0
  756. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +28 -0
  757. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +28 -0
  758. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_128_posenc_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +28 -0
  759. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +28 -0
  760. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +28 -0
  761. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +28 -0
  762. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_e4m3_dtypekv_e4m3_dtypeout_e4m3_idtype_i32.cu +28 -0
  763. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_e5m2_dtypekv_e5m2_dtypeout_e5m2_idtype_i32.cu +28 -0
  764. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +28 -0
  765. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +28 -0
  766. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_256_posenc_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +28 -0
  767. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +28 -0
  768. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +28 -0
  769. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +28 -0
  770. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_e4m3_dtypekv_e4m3_dtypeout_e4m3_idtype_i32.cu +28 -0
  771. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_e5m2_dtypekv_e5m2_dtypeout_e5m2_idtype_i32.cu +28 -0
  772. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +28 -0
  773. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +28 -0
  774. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_decode_head_64_posenc_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +28 -0
  775. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  776. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  777. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  778. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  779. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  780. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  781. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  782. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  783. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  784. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  785. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  786. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  787. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  788. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  789. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  790. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  791. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  792. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  793. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  794. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  795. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  796. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  797. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  798. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  799. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  800. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  801. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  802. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  803. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  804. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  805. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  806. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  807. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  808. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  809. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  810. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  811. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  812. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  813. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  814. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  815. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  816. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  817. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  818. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  819. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  820. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  821. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  822. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  823. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  824. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  825. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  826. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  827. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  828. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  829. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  830. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  831. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  832. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  833. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  834. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  835. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  836. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  837. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  838. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  839. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +45 -0
  840. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +84 -0
  841. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +45 -0
  842. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +45 -0
  843. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +45 -0
  844. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +45 -0
  845. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +45 -0
  846. flashinfer_python-0.2.0.post1/csrc/generated/batch_paged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +84 -0
  847. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  848. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  849. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  850. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  851. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  852. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  853. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  854. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  855. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  856. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  857. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  858. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  859. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  860. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  861. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  862. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  863. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  864. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  865. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  866. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  867. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  868. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  869. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  870. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  871. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  872. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  873. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  874. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  875. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  876. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  877. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  878. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  879. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  880. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  881. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  882. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  883. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  884. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  885. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  886. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  887. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  888. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  889. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  890. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  891. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  892. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  893. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  894. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  895. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  896. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  897. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  898. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  899. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  900. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  901. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  902. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  903. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  904. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  905. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  906. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  907. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  908. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  909. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  910. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  911. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32.cu +46 -0
  912. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_idtype_i32_sm90.cu +77 -0
  913. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16_idtype_i32.cu +46 -0
  914. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16_idtype_i32.cu +46 -0
  915. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16_idtype_i32.cu +46 -0
  916. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16_idtype_i32.cu +46 -0
  917. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32.cu +46 -0
  918. flashinfer_python-0.2.0.post1/csrc/generated/batch_ragged_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_idtype_i32_sm90.cu +77 -0
  919. flashinfer_python-0.2.0.post1/csrc/generated/dispatch.inc +19 -0
  920. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +19 -0
  921. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +19 -0
  922. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +19 -0
  923. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_e4m3_dtypekv_e4m3_dtypeout_e4m3.cu +19 -0
  924. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_e5m2_dtypekv_e5m2_dtypeout_e5m2.cu +19 -0
  925. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +19 -0
  926. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +19 -0
  927. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_128_posenc_0_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +19 -0
  928. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +19 -0
  929. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +19 -0
  930. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +19 -0
  931. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_e4m3_dtypekv_e4m3_dtypeout_e4m3.cu +19 -0
  932. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_e5m2_dtypekv_e5m2_dtypeout_e5m2.cu +19 -0
  933. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +19 -0
  934. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +19 -0
  935. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_256_posenc_0_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +19 -0
  936. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +19 -0
  937. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +19 -0
  938. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +19 -0
  939. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_e4m3_dtypekv_e4m3_dtypeout_e4m3.cu +19 -0
  940. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_e5m2_dtypekv_e5m2_dtypeout_e5m2.cu +19 -0
  941. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +19 -0
  942. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +19 -0
  943. flashinfer_python-0.2.0.post1/csrc/generated/single_decode_head_64_posenc_0_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +19 -0
  944. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  945. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  946. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  947. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  948. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  949. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  950. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  951. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  952. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  953. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  954. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  955. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  956. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  957. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  958. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  959. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  960. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  961. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  962. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  963. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  964. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  965. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  966. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  967. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_128_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  968. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  969. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  970. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  971. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  972. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  973. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  974. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  975. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  976. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  977. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  978. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  979. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  980. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  981. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  982. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  983. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  984. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  985. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  986. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  987. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  988. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  989. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  990. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  991. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_256_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  992. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  993. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  994. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  995. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  996. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  997. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  998. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  999. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_0_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  1000. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  1001. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  1002. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  1003. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  1004. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  1005. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  1006. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  1007. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_1_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  1008. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16.cu +20 -0
  1009. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_bf16_dtypeout_bf16_sm90.cu +32 -0
  1010. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e4m3_dtypeout_bf16.cu +20 -0
  1011. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_bf16_dtypekv_e5m2_dtypeout_bf16.cu +20 -0
  1012. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e4m3_dtypeout_f16.cu +20 -0
  1013. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_e5m2_dtypeout_f16.cu +20 -0
  1014. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16.cu +20 -0
  1015. flashinfer_python-0.2.0.post1/csrc/generated/single_prefill_head_64_posenc_0_fp16qkred_0_mask_2_dtypeq_f16_dtypekv_f16_dtypeout_f16_sm90.cu +32 -0
  1016. flashinfer_python-0.2.0.post1/csrc/group_gemm.cu +40 -0
  1017. flashinfer_python-0.2.0.post1/csrc/group_gemm_sm90.cu +45 -0
  1018. flashinfer_python-0.2.0.post1/csrc/norm.cu +127 -0
  1019. flashinfer_python-0.2.0.post1/csrc/page.cu +139 -0
  1020. flashinfer_python-0.2.0.post1/csrc/pytorch_extension_utils.h +183 -0
  1021. flashinfer_python-0.2.0.post1/csrc/quantization.cu +55 -0
  1022. flashinfer_python-0.2.0.post1/csrc/renorm.cu +79 -0
  1023. flashinfer_python-0.2.0.post1/csrc/rope.cu +245 -0
  1024. flashinfer_python-0.2.0.post1/csrc/runtime_utils.h +18 -0
  1025. flashinfer_python-0.2.0.post1/csrc/sampling.cu +185 -0
  1026. flashinfer_python-0.2.0.post1/csrc/single_decode.cu +100 -0
  1027. flashinfer_python-0.2.0.post1/csrc/single_prefill.cu +113 -0
  1028. flashinfer_python-0.2.0.post1/csrc/single_prefill_sm90.cu +114 -0
  1029. flashinfer_python-0.2.0.post1/custom_backend.py +41 -0
  1030. flashinfer_python-0.2.0.post1/flashinfer/__init__.py +91 -0
  1031. flashinfer_python-0.2.0.post1/flashinfer/_build_meta.py +1 -0
  1032. flashinfer_python-0.2.0.post1/flashinfer/activation.py +192 -0
  1033. flashinfer_python-0.2.0.post1/flashinfer/cascade.py +1083 -0
  1034. flashinfer_python-0.2.0.post1/flashinfer/decode.py +1413 -0
  1035. flashinfer_python-0.2.0.post1/flashinfer/gemm.py +738 -0
  1036. flashinfer_python-0.2.0.post1/flashinfer/jit/__init__.py +50 -0
  1037. flashinfer_python-0.2.0.post1/flashinfer/jit/activation.py +74 -0
  1038. flashinfer_python-0.2.0.post1/flashinfer/jit/aot_config.py +1 -0
  1039. flashinfer_python-0.2.0.post1/flashinfer/jit/attention.py +800 -0
  1040. flashinfer_python-0.2.0.post1/flashinfer/jit/batch_decode_mla_templ.py +189 -0
  1041. flashinfer_python-0.2.0.post1/flashinfer/jit/batch_decode_templ.py +205 -0
  1042. flashinfer_python-0.2.0.post1/flashinfer/jit/batch_prefill_sm90_templ.py +968 -0
  1043. flashinfer_python-0.2.0.post1/flashinfer/jit/batch_prefill_templ.py +491 -0
  1044. flashinfer_python-0.2.0.post1/flashinfer/jit/core.py +125 -0
  1045. flashinfer_python-0.2.0.post1/flashinfer/jit/env.py +49 -0
  1046. flashinfer_python-0.2.0.post1/flashinfer/jit/single_decode_templ.py +205 -0
  1047. flashinfer_python-0.2.0.post1/flashinfer/jit/single_prefill_sm90_templ.py +349 -0
  1048. flashinfer_python-0.2.0.post1/flashinfer/jit/single_prefill_templ.py +331 -0
  1049. flashinfer_python-0.2.0.post1/flashinfer/jit/utils.py +101 -0
  1050. flashinfer_python-0.2.0.post1/flashinfer/norm.py +212 -0
  1051. flashinfer_python-0.2.0.post1/flashinfer/page.py +371 -0
  1052. flashinfer_python-0.2.0.post1/flashinfer/prefill.py +2736 -0
  1053. flashinfer_python-0.2.0.post1/flashinfer/py.typed +0 -0
  1054. flashinfer_python-0.2.0.post1/flashinfer/quantization.py +155 -0
  1055. flashinfer_python-0.2.0.post1/flashinfer/rope.py +1101 -0
  1056. flashinfer_python-0.2.0.post1/flashinfer/sampling.py +1225 -0
  1057. flashinfer_python-0.2.0.post1/flashinfer/sparse.py +610 -0
  1058. flashinfer_python-0.2.0.post1/flashinfer/triton/__init__.py +1 -0
  1059. flashinfer_python-0.2.0.post1/flashinfer/triton/activation.py +57 -0
  1060. flashinfer_python-0.2.0.post1/flashinfer/triton/cascade.py +152 -0
  1061. flashinfer_python-0.2.0.post1/flashinfer/triton/kernels/__init__.py +0 -0
  1062. flashinfer_python-0.2.0.post1/flashinfer/triton/kernels/activation.py +64 -0
  1063. flashinfer_python-0.2.0.post1/flashinfer/triton/kernels/cascade.py +159 -0
  1064. flashinfer_python-0.2.0.post1/flashinfer/triton/kernels/quant.py +27 -0
  1065. flashinfer_python-0.2.0.post1/flashinfer/triton/utils.py +28 -0
  1066. flashinfer_python-0.2.0.post1/flashinfer/utils.py +364 -0
  1067. flashinfer_python-0.2.0.post1/flashinfer_python.egg-info/PKG-INFO +182 -0
  1068. flashinfer_python-0.2.0.post1/flashinfer_python.egg-info/SOURCES.txt +1148 -0
  1069. flashinfer_python-0.2.0.post1/flashinfer_python.egg-info/dependency_links.txt +1 -0
  1070. flashinfer_python-0.2.0.post1/flashinfer_python.egg-info/requires.txt +2 -0
  1071. flashinfer_python-0.2.0.post1/flashinfer_python.egg-info/top_level.txt +1 -0
  1072. flashinfer_python-0.2.0.post1/include/flashinfer/activation.cuh +61 -0
  1073. flashinfer_python-0.2.0.post1/include/flashinfer/allocator.h +62 -0
  1074. flashinfer_python-0.2.0.post1/include/flashinfer/attention/cascade.cuh +721 -0
  1075. flashinfer_python-0.2.0.post1/include/flashinfer/attention/decode.cuh +1099 -0
  1076. flashinfer_python-0.2.0.post1/include/flashinfer/attention/decode_params.cuh +234 -0
  1077. flashinfer_python-0.2.0.post1/include/flashinfer/attention/heap.h +64 -0
  1078. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/attention_updater.cuh +259 -0
  1079. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/block_sparse_gather.cuh +196 -0
  1080. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/epilogue.cuh +259 -0
  1081. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/kernel_traits.cuh +120 -0
  1082. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/mainloop.cuh +266 -0
  1083. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/mainloop_mma.cuh +262 -0
  1084. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/named_barrier.cuh +112 -0
  1085. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/params.cuh +155 -0
  1086. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/prefill_sm90.cuh +536 -0
  1087. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/sparse_mainloop.cuh +327 -0
  1088. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/tile_scheduler.cuh +306 -0
  1089. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/utils.cuh +165 -0
  1090. flashinfer_python-0.2.0.post1/include/flashinfer/attention/hopper/variants.cuh +75 -0
  1091. flashinfer_python-0.2.0.post1/include/flashinfer/attention/mask.cuh +29 -0
  1092. flashinfer_python-0.2.0.post1/include/flashinfer/attention/prefill.cuh +2317 -0
  1093. flashinfer_python-0.2.0.post1/include/flashinfer/attention/prefill_params.cuh +287 -0
  1094. flashinfer_python-0.2.0.post1/include/flashinfer/attention/scheduler.cuh +929 -0
  1095. flashinfer_python-0.2.0.post1/include/flashinfer/attention/state.cuh +83 -0
  1096. flashinfer_python-0.2.0.post1/include/flashinfer/attention/variants.cuh +294 -0
  1097. flashinfer_python-0.2.0.post1/include/flashinfer/attention_impl.cuh +26 -0
  1098. flashinfer_python-0.2.0.post1/include/flashinfer/cp_async.cuh +187 -0
  1099. flashinfer_python-0.2.0.post1/include/flashinfer/cutlass_utils.cuh +80 -0
  1100. flashinfer_python-0.2.0.post1/include/flashinfer/distributed/all_reduce.cuh +247 -0
  1101. flashinfer_python-0.2.0.post1/include/flashinfer/exception.h +48 -0
  1102. flashinfer_python-0.2.0.post1/include/flashinfer/fastdiv.cuh +109 -0
  1103. flashinfer_python-0.2.0.post1/include/flashinfer/frag_layout_swizzle.cuh +41 -0
  1104. flashinfer_python-0.2.0.post1/include/flashinfer/gemm/bmm_fp8.cuh +203 -0
  1105. flashinfer_python-0.2.0.post1/include/flashinfer/gemm/group_gemm.cuh +99 -0
  1106. flashinfer_python-0.2.0.post1/include/flashinfer/gemm/group_gemm_lora.cuh +29 -0
  1107. flashinfer_python-0.2.0.post1/include/flashinfer/gemm/group_gemm_sm90.cuh +160 -0
  1108. flashinfer_python-0.2.0.post1/include/flashinfer/gemm/group_gemv.cuh +29 -0
  1109. flashinfer_python-0.2.0.post1/include/flashinfer/layout.cuh +128 -0
  1110. flashinfer_python-0.2.0.post1/include/flashinfer/math.cuh +156 -0
  1111. flashinfer_python-0.2.0.post1/include/flashinfer/mma.cuh +705 -0
  1112. flashinfer_python-0.2.0.post1/include/flashinfer/norm.cuh +270 -0
  1113. flashinfer_python-0.2.0.post1/include/flashinfer/page.cuh +566 -0
  1114. flashinfer_python-0.2.0.post1/include/flashinfer/permuted_smem.cuh +174 -0
  1115. flashinfer_python-0.2.0.post1/include/flashinfer/pos_enc.cuh +810 -0
  1116. flashinfer_python-0.2.0.post1/include/flashinfer/quantization.cuh +114 -0
  1117. flashinfer_python-0.2.0.post1/include/flashinfer/sampling.cuh +1408 -0
  1118. flashinfer_python-0.2.0.post1/include/flashinfer/utils.cuh +324 -0
  1119. flashinfer_python-0.2.0.post1/include/flashinfer/vec_dtypes.cuh +1393 -0
  1120. flashinfer_python-0.2.0.post1/pyproject.toml +64 -0
  1121. flashinfer_python-0.2.0.post1/setup.cfg +4 -0
  1122. flashinfer_python-0.2.0.post1/setup.py +250 -0
  1123. flashinfer_python-0.2.0.post1/tests/test_activation.py +53 -0
  1124. flashinfer_python-0.2.0.post1/tests/test_alibi.py +106 -0
  1125. flashinfer_python-0.2.0.post1/tests/test_batch_decode_kernels.py +582 -0
  1126. flashinfer_python-0.2.0.post1/tests/test_batch_prefill_kernels.py +732 -0
  1127. flashinfer_python-0.2.0.post1/tests/test_block_sparse.py +129 -0
  1128. flashinfer_python-0.2.0.post1/tests/test_block_sparse_indices_to_vector_sparse_offsets.py +84 -0
  1129. flashinfer_python-0.2.0.post1/tests/test_bmm_fp8.py +42 -0
  1130. flashinfer_python-0.2.0.post1/tests/test_decode_fp8_calibration_scale.py +162 -0
  1131. flashinfer_python-0.2.0.post1/tests/test_decode_prefill_lse.py +77 -0
  1132. flashinfer_python-0.2.0.post1/tests/test_fp8_prefill.py +200 -0
  1133. flashinfer_python-0.2.0.post1/tests/test_group_gemm.py +111 -0
  1134. flashinfer_python-0.2.0.post1/tests/test_hopper.py +219 -0
  1135. flashinfer_python-0.2.0.post1/tests/test_jit_example.py +393 -0
  1136. flashinfer_python-0.2.0.post1/tests/test_jit_warmup.py +113 -0
  1137. flashinfer_python-0.2.0.post1/tests/test_logits_cap.py +110 -0
  1138. flashinfer_python-0.2.0.post1/tests/test_mla_decode_kernel.py +463 -0
  1139. flashinfer_python-0.2.0.post1/tests/test_non_contiguous_decode.py +107 -0
  1140. flashinfer_python-0.2.0.post1/tests/test_non_contiguous_prefill.py +206 -0
  1141. flashinfer_python-0.2.0.post1/tests/test_norm.py +144 -0
  1142. flashinfer_python-0.2.0.post1/tests/test_page.py +57 -0
  1143. flashinfer_python-0.2.0.post1/tests/test_quantization.py +63 -0
  1144. flashinfer_python-0.2.0.post1/tests/test_rope.py +353 -0
  1145. flashinfer_python-0.2.0.post1/tests/test_sampling.py +397 -0
  1146. flashinfer_python-0.2.0.post1/tests/test_shared_prefix_kernels.py +322 -0
  1147. flashinfer_python-0.2.0.post1/tests/test_sliding_window.py +379 -0
  1148. flashinfer_python-0.2.0.post1/tests/test_tensor_cores_decode.py +274 -0
  1149. flashinfer_python-0.2.0.post1/tests/test_triton_cascade.py +81 -0
  1150. flashinfer_python-0.2.0.post1/version.txt +1 -0
@@ -0,0 +1,95 @@
1
+ /***************************************************************************************************
2
+ * Copyright (c) 2023 - 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3
+ * SPDX-License-Identifier: BSD-3-Clause
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ *
8
+ * 1. Redistributions of source code must retain the above copyright notice, this
9
+ * list of conditions and the following disclaimer.
10
+ *
11
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
12
+ * this list of conditions and the following disclaimer in the documentation
13
+ * and/or other materials provided with the distribution.
14
+ *
15
+ * 3. Neither the name of the copyright holder nor the names of its
16
+ * contributors may be used to endorse or promote products derived from
17
+ * this software without specific prior written permission.
18
+ *
19
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
23
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
+ *
30
+ **************************************************************************************************/
31
+ #pragma once
32
+
33
+ #include <cute/config.hpp>
34
+
35
+ #include <cute/tensor_impl.hpp>
36
+ #include <cute/tensor_predicate.hpp>
37
+
38
+ namespace cute
39
+ {
40
+
41
+ //
42
+ // Accept mutable temporaries
43
+ //
44
+ template <class Alpha,
45
+ class XEngine, class XLayout,
46
+ class Beta,
47
+ class YEngine, class YLayout,
48
+ class PrdTensor = TrivialPredTensor>
49
+ CUTE_HOST_DEVICE
50
+ void
51
+ axpby(Alpha const& alpha,
52
+ Tensor<XEngine, XLayout> const& x,
53
+ Beta const& beta,
54
+ Tensor<YEngine, YLayout> && y,
55
+ PrdTensor const& p = {})
56
+ {
57
+ return axpby(alpha, x, beta, y, p);
58
+ }
59
+
60
+ //
61
+ // AXPBY
62
+ //
63
+ template <class Alpha,
64
+ class XEngine, class XLayout,
65
+ class Beta,
66
+ class YEngine, class YLayout,
67
+ class PrdTensor = TrivialPredTensor>
68
+ CUTE_HOST_DEVICE
69
+ void
70
+ axpby(Alpha const& alpha,
71
+ Tensor<XEngine, XLayout> const& x,
72
+ Beta const& beta,
73
+ Tensor<YEngine, YLayout> & y,
74
+ PrdTensor const& p = {})
75
+ {
76
+ auto isBetaZero = [&] () {
77
+ if constexpr (is_complex<Beta>::value) {
78
+ return beta.real() == Int<0>{} && beta.imag() == Int<0>{};
79
+ }
80
+ else {
81
+ return beta == Int<0>{};
82
+ }
83
+
84
+ CUTE_GCC_UNREACHABLE;
85
+ } ();
86
+
87
+ CUTE_UNROLL
88
+ for (int i = 0; i < size(x); ++i) {
89
+ if (p(i)) {
90
+ y(i) = (isBetaZero ? alpha * x(i) : alpha * x(i) + beta * y(i));
91
+ }
92
+ }
93
+ }
94
+
95
+ } // end namespace cute
@@ -0,0 +1,64 @@
1
+ /***************************************************************************************************
2
+ * Copyright (c) 2023 - 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3
+ * SPDX-License-Identifier: BSD-3-Clause
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ *
8
+ * 1. Redistributions of source code must retain the above copyright notice, this
9
+ * list of conditions and the following disclaimer.
10
+ *
11
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
12
+ * this list of conditions and the following disclaimer in the documentation
13
+ * and/or other materials provided with the distribution.
14
+ *
15
+ * 3. Neither the name of the copyright holder nor the names of its
16
+ * contributors may be used to endorse or promote products derived from
17
+ * this software without specific prior written permission.
18
+ *
19
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
23
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
+ *
30
+ **************************************************************************************************/
31
+ #pragma once
32
+
33
+ #include <cute/config.hpp> // CUTE_HOST_DEVICE
34
+ #include <cute/tensor_impl.hpp> // cute::Tensor
35
+ #include <cute/algorithm/fill.hpp> // cute::fill
36
+
37
+ namespace cute
38
+ {
39
+
40
+ //
41
+ // Accept mutable temporaries
42
+ //
43
+ template <class Engine, class Layout>
44
+ CUTE_HOST_DEVICE
45
+ void
46
+ clear(Tensor<Engine, Layout>&& tensor)
47
+ {
48
+ return clear(tensor);
49
+ }
50
+
51
+ //
52
+ // Set elements to zero
53
+ //
54
+ template <class Engine, class Layout>
55
+ CUTE_HOST_DEVICE
56
+ void
57
+ clear(Tensor<Engine, Layout>& tensor)
58
+ {
59
+ using T = typename Tensor<Engine,Layout>::value_type;
60
+
61
+ fill(tensor, T{});
62
+ }
63
+
64
+ } // end namespace cute
@@ -0,0 +1,333 @@
1
+ /***************************************************************************************************
2
+ * Copyright (c) 2017 - 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3
+ * SPDX-License-Identifier: BSD-3-Clause
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions are met:
7
+ *
8
+ * 1. Redistributions of source code must retain the above copyright notice, this
9
+ * list of conditions and the following disclaimer.
10
+ *
11
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
12
+ * this list of conditions and the following disclaimer in the documentation
13
+ * and/or other materials provided with the distribution.
14
+ *
15
+ * 3. Neither the name of the copyright holder nor the names of its
16
+ * contributors may be used to endorse or promote products derived from
17
+ * this software without specific prior written permission.
18
+ *
19
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
23
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
+ *
30
+ **************************************************************************************************/
31
+ #pragma once
32
+
33
+ #include <cute/config.hpp>
34
+ #include <cute/layout.hpp>
35
+ #include <cute/layout_composed.hpp> // cute::logical_divide
36
+ #include <cute/swizzle.hpp> // cute::Swizzle
37
+ #include <cute/swizzle_layout.hpp> // cute::get_nonswizzle_portion
38
+ #include <cute/tensor_impl.hpp> // cute::Tensor
39
+ #include <cute/tensor_predicate.hpp>
40
+ #include <cute/algorithm/copy.hpp>
41
+ #include <cute/atom/copy_atom.hpp>
42
+
43
+ namespace cute
44
+ {
45
+
46
+ template <uint32_t NumThreads,
47
+ class SrcEngine, class SrcLayout,
48
+ class DstEngine, class DstLayout>
49
+ CUTE_HOST_DEVICE void
50
+ naive_cooperative_copy(uint32_t const& tid,
51
+ Tensor<SrcEngine, SrcLayout> const& src,
52
+ Tensor<DstEngine, DstLayout> & dst)
53
+ {
54
+ auto N = size(src);
55
+ if (tid < N) {
56
+ uint32_t upper_bound = (N / NumThreads) * NumThreads;
57
+ CUTE_UNROLL
58
+ for (uint32_t i = 0; i < upper_bound; i += NumThreads) { // All in-bounds
59
+ dst[tid + i] = src[tid + i];
60
+ }
61
+ if (N % NumThreads != 0) { // Likely static condition
62
+ uint32_t final_idx = tid + upper_bound;
63
+ if (final_idx < N) { // Final in-bounds
64
+ dst[final_idx] = src[final_idx];
65
+ }
66
+ }
67
+ }
68
+ }
69
+
70
+ // Accept mutable temporaries
71
+ template <uint32_t NumThreads,
72
+ class SrcEngine, class SrcLayout,
73
+ class DstEngine, class DstLayout>
74
+ CUTE_HOST_DEVICE void
75
+ naive_cooperative_copy(uint32_t const& tid,
76
+ Tensor<SrcEngine, SrcLayout> const& src,
77
+ Tensor<DstEngine, DstLayout> && dst)
78
+ {
79
+ return naive_cooperative_copy(tid, src, dst);
80
+ }
81
+
82
+ // A heuristic to determine a "good" permutation of two tensors for later vectorization and thr-assignment
83
+ template <class AEngine, class ALayout,
84
+ class BEngine, class BLayout>
85
+ CUTE_HOST_DEVICE constexpr
86
+ auto
87
+ heuristic_permutation(Tensor<AEngine, ALayout> const& a,
88
+ Tensor<BEngine, BLayout> const& b)
89
+ {
90
+ constexpr bool swizzleA = get_swizzle_t<AEngine>::num_bits != 0 or
91
+ get_swizzle_t<ALayout>::num_bits != 0;
92
+ constexpr bool swizzleB = get_swizzle_t<BEngine>::num_bits != 0 or
93
+ get_swizzle_t<BLayout>::num_bits != 0;
94
+ auto a_inv = right_inverse(get_nonswizzle_portion(a.layout()));
95
+ auto b_inv = right_inverse(get_nonswizzle_portion(b.layout()));
96
+
97
+ constexpr uint8_t scoreA = (uint8_t(swizzleA) << 2) |
98
+ (uint8_t(is_smem<AEngine>::value) << 1) |
99
+ (uint8_t(size(a_inv) > size(b_inv)) << 0);
100
+
101
+ constexpr uint8_t scoreB = (uint8_t(swizzleB) << 2) |
102
+ (uint8_t(is_smem<BEngine>::value) << 1) |
103
+ (uint8_t(size(b_inv) > size(a_inv)) << 0);
104
+
105
+ if constexpr (scoreA >= scoreB) {
106
+ return a_inv;
107
+ } else {
108
+ return b_inv;
109
+ }
110
+ }
111
+
112
+ // cooperative_copy<NumThreads, MaxVecBits>(thr_idx, src, dst)
113
+ // Use NumThreads to copy Tensor src to Tensor dst with element-wise vectorization up to MaxVecBits.
114
+ // @pre 0 <= @a tid < NumThreads
115
+ // @pre Tensors @a src and @a dst are aligned up to MaxVecBits.
116
+ // That is, pointers and dynamic strides are assumed to be aligned up to MaxVecBits.
117
+ //
118
+ template <uint32_t NumThreads, uint32_t MaxVecBits,
119
+ class SrcEngine, class SrcLayout,
120
+ class DstEngine, class DstLayout>
121
+ CUTE_HOST_DEVICE
122
+ void
123
+ cooperative_copy(uint32_t const& tid,
124
+ Tensor<SrcEngine, SrcLayout> const& src,
125
+ Tensor<DstEngine, DstLayout> & dst)
126
+ {
127
+ // Assumes the shapes are static, can generalize/fallback
128
+ CUTE_STATIC_ASSERT_V(is_static<decltype(shape(src))>{} && is_static<decltype(shape(dst))>{});
129
+ CUTE_STATIC_ASSERT_V(size(src) == size(dst));
130
+ // Assumes the types are the same, can generalize/fallback
131
+ static_assert(cute::is_same<typename SrcEngine::value_type, typename DstEngine::value_type>::value);
132
+ static_assert(MaxVecBits == sizeof_bits_v<typename SrcEngine::value_type> ||
133
+ MaxVecBits == 8 || MaxVecBits == 16 || MaxVecBits == 32 || MaxVecBits == 64 || MaxVecBits == 128,
134
+ "Expected MaxVecBits to be value size or 8 or 16 or 32 or 64 or 128 for alignment and performance.");
135
+ // Check that the tensors are likely shared across threads: either gmem or smem
136
+ static_assert((is_gmem<SrcEngine>::value || is_smem<SrcEngine>::value),
137
+ "cooperative_copy expects shared gmem or smem source tensor.");
138
+ static_assert((is_gmem<DstEngine>::value || is_smem<DstEngine>::value),
139
+ "cooperative_copy expects shared gmem or smem destination tensor.");
140
+ // Precondition on tid in DEBUG
141
+ assert(tid < NumThreads);
142
+ // Precondition on pointer alignment in DEBUG
143
+ assert(is_byte_aligned<ceil_div(MaxVecBits,8u)>(raw_pointer_cast(src.data())));
144
+ assert(is_byte_aligned<ceil_div(MaxVecBits,8u)>(raw_pointer_cast(dst.data())));
145
+
146
+ #if 0
147
+ if (thread0()) {
148
+ print(" "); print("cooperative_copy\n");
149
+ print(" "); print("NumThreads: "); print(NumThreads); print("\n");
150
+ print(" "); print("MaxVecBits: "); print(MaxVecBits); print("\n");
151
+ print(" "); print("src: "); print(src); print("\n");
152
+ print(" "); print("dst: "); print(dst); print("\n");
153
+ }
154
+ #ifdef __CUDA_ARCH__
155
+ __syncthreads();
156
+ #endif
157
+ #endif
158
+
159
+ // The common layout of the two tensors that can be vectorized over elements and threads
160
+ // vidx -> coord
161
+ auto common_layout = heuristic_permutation(src, dst);
162
+
163
+ // Apply
164
+ // (V, rest)
165
+ Tensor src_a = coalesce(logical_divide(src, common_layout), Shape<_1,_1>{});
166
+ Tensor dst_a = coalesce(logical_divide(dst, common_layout), Shape<_1,_1>{});
167
+
168
+ //
169
+ // Determine vectorization of elems and thrs based on src/dst size and number of threads
170
+ // NOTE: This heuristic promotes parallelization over vectorization
171
+ //
172
+
173
+ // The number of elements and number of bits
174
+ constexpr int elem_bits = sizeof_bits_v<typename SrcEngine::value_type>;
175
+ constexpr int total_elem = size(SrcLayout{});
176
+
177
+ // The number of elements that can be vectorized in values
178
+ constexpr int common_elem = decltype(max_common_vector(src_a, dst_a))::value;
179
+
180
+ #if 0
181
+ if (thread0()) {
182
+ print(" "); print("common_layout: "); print(common_layout); print("\n");
183
+ print(" "); print("src_a: "); print(src_a); print("\n");
184
+ print(" "); print("dst_a: "); print(dst_a); print("\n");
185
+ }
186
+ #ifdef __CUDA_ARCH__
187
+ __syncthreads();
188
+ #endif
189
+ #endif
190
+
191
+ //
192
+ if constexpr (total_elem % NumThreads != 0) {
193
+ // Not attempting to find a partitioning pattern, fallback to dynamically indexed slowpath
194
+
195
+ if constexpr (common_elem > 1 && MaxVecBits > elem_bits) {
196
+ // If the vectorization is non-trivial and divides the maximum vectorizations, then vectorize
197
+ constexpr auto max_align_src = elem_bits * decltype(max_alignment(src_a.layout()))::value;
198
+ constexpr auto max_align_dst = elem_bits * decltype(max_alignment(dst_a.layout()))::value;
199
+ constexpr auto vec_bits = gcd(max_align_src, max_align_dst, MaxVecBits);
200
+ using VecType = uint_bit_t<vec_bits>;
201
+
202
+ static_assert(vec_bits % elem_bits == 0, "Expected divisibility");
203
+ static_assert((vec_bits >= 8), "No support for subbyte copying");
204
+
205
+ Tensor src_v = recast<VecType const>(src_a);
206
+ Tensor dst_v = recast<VecType >(dst_a);
207
+
208
+ #if 0
209
+ if (thread0()) {
210
+ print(" "); print("cooperative_copy -- naive\n");
211
+ print(" "); print("src_v: "); print(src_v); print("\n");
212
+ print(" "); print("dst_v: "); print(dst_v); print("\n");
213
+ }
214
+ #ifdef __CUDA_ARCH__
215
+ __syncthreads();
216
+ #endif
217
+ #endif
218
+
219
+ naive_cooperative_copy<NumThreads>(tid, src_v, dst_v);
220
+ } else {
221
+ naive_cooperative_copy<NumThreads>(tid, src_a, dst_a);
222
+ }
223
+ } else {
224
+ // If the tensors can be equally partitioned by the threads,
225
+ // compute vectorization widths in elements and threads.
226
+
227
+ // If there are too many threads to allow a full vectorized copy, trunc the vectorization
228
+ constexpr int total_bits = total_elem * elem_bits;
229
+ constexpr int max_bits_per_thr = total_bits / NumThreads;
230
+ // At least elem_bits, at most common_bits
231
+ constexpr int common_bits = common_elem * elem_bits;
232
+ constexpr int vec_bits = cute::max(elem_bits, cute::gcd(common_bits, int(MaxVecBits), max_bits_per_thr));
233
+
234
+ // Should account for vec_bits < 8 and/or vec_elem <= 1
235
+ // And also account for subbyte types, which could cause race conditions
236
+ // Want to ENFORCE sufficient vectorization in those cases
237
+ static_assert(vec_bits % elem_bits == 0, "Expected divisibility");
238
+ static_assert(vec_bits >= 8, "No support for subbyte copying");
239
+
240
+ using VecType = uint_bit_t<vec_bits>;
241
+ constexpr int vec_elem = vec_bits / elem_bits;
242
+
243
+ constexpr int vec_thrs = cute::min(int(NumThreads), total_elem / vec_elem);
244
+
245
+ //
246
+ // Determine the partitioning patterns for the vec_elems and vec_thrs
247
+ //
248
+
249
+ // Distribute the rest of the V*T to some consistent portion outside of the common_layout, if needed
250
+ auto common_domain_src = domain_distribute(shape(src_a), Int<vec_elem*vec_thrs>{});
251
+ auto common_domain_dst = domain_distribute(shape(dst_a), Int<vec_elem*vec_thrs>{});
252
+
253
+ // Make sure for now, could fall back here instead
254
+ CUTE_STATIC_ASSERT_V(size(common_domain_src) == Int<vec_elem*vec_thrs>{});
255
+ CUTE_STATIC_ASSERT_V(compatible(common_domain_src, common_domain_dst) ||
256
+ compatible(common_domain_dst, common_domain_src));
257
+ // Use the "more specific" domain for the extra elements of V*T
258
+ auto common_domain = conditional_return(compatible(common_domain_src, common_domain_dst),
259
+ common_domain_dst, common_domain_src);
260
+
261
+ // Construct the tiler
262
+ auto tiler_vt = common_domain.with_shape(Int<vec_elem>{}, Int<vec_thrs>{});
263
+
264
+ // Apply and slice
265
+ Tensor src_v = logical_divide(src_a, tiler_vt)(make_coord(_,tid),_);
266
+ Tensor dst_v = logical_divide(dst_a, tiler_vt)(make_coord(_,tid),_);
267
+
268
+ #if 0
269
+ if (thread0()) {
270
+ print(" "); print("cooperative_copy -- vec\n");
271
+ print(" "); print("Used vector: "); print(vec_elem); print("\n");
272
+ print(" "); print("Used threads: "); print(vec_thrs); print("\n");
273
+ print(" "); print("tiler_vt: "); print(tiler_vt); print("\n");
274
+ print(" "); print("src_v: "); print(src_v); print("\n");
275
+ print(" "); print("dst_v: "); print(dst_v); print("\n");
276
+ print(" "); print("recast<VecType const>(src_v): "); print(recast<VecType const>(src_v)); print("\n");
277
+ print(" "); print("recast<VecType >(dst_v): "); print(recast<VecType >(dst_v)); print("\n");
278
+ }
279
+ #ifdef __CUDA_ARCH__
280
+ __syncthreads();
281
+ #endif
282
+ #endif
283
+
284
+ // If we're using all threads (static) or the tid is in-range (dynamic)
285
+ if (vec_thrs == NumThreads or tid < vec_thrs) {
286
+ return copy_if(TrivialPredTensor{}, recast<VecType const>(src_v), recast<VecType>(dst_v));
287
+ }
288
+ }
289
+ }
290
+
291
+ // Default max-vectorization size to value_type size
292
+ template <uint32_t NumThreads,
293
+ class SrcEngine, class SrcLayout,
294
+ class DstEngine, class DstLayout>
295
+ CUTE_HOST_DEVICE
296
+ void
297
+ cooperative_copy(uint32_t const& tid,
298
+ Tensor<SrcEngine, SrcLayout> const& src,
299
+ Tensor<DstEngine, DstLayout> & dst)
300
+ {
301
+ constexpr uint32_t MaxVecBits = sizeof_bits_v<typename SrcEngine::value_type>;
302
+ return cooperative_copy<NumThreads, MaxVecBits>(tid, src, dst);
303
+ }
304
+
305
+ //
306
+ // Accept mutable temporaries
307
+ //
308
+
309
+ template <uint32_t NumThreads,
310
+ class SrcEngine, class SrcLayout,
311
+ class DstEngine, class DstLayout>
312
+ CUTE_HOST_DEVICE
313
+ void
314
+ cooperative_copy(uint32_t const& tid,
315
+ Tensor<SrcEngine, SrcLayout> const& src,
316
+ Tensor<DstEngine, DstLayout> && dst)
317
+ {
318
+ return cooperative_copy<NumThreads>(tid, src, dst);
319
+ }
320
+
321
+ template <uint32_t NumThreads, uint32_t MaxVecBits,
322
+ class SrcEngine, class SrcLayout,
323
+ class DstEngine, class DstLayout>
324
+ CUTE_HOST_DEVICE
325
+ void
326
+ cooperative_copy(uint32_t const& tid,
327
+ Tensor<SrcEngine, SrcLayout> const& src,
328
+ Tensor<DstEngine, DstLayout> && dst)
329
+ {
330
+ return cooperative_copy<NumThreads, MaxVecBits>(tid, src, dst);
331
+ }
332
+
333
+ } // end namespace cute