yapocis 1.0.0__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 (480) hide show
  1. yapocis-1.0.0/.gitignore +48 -0
  2. yapocis-1.0.0/.gitmodules +3 -0
  3. yapocis-1.0.0/.python-version +1 -0
  4. yapocis-1.0.0/.readthedocs.yml +26 -0
  5. yapocis-1.0.0/.settings/org.eclipse.core.resources.prefs +3 -0
  6. yapocis-1.0.0/AGENTS.md +45 -0
  7. yapocis-1.0.0/AI.md +1608 -0
  8. yapocis-1.0.0/CHANGELOG.md +273 -0
  9. yapocis-1.0.0/CLAUDE.md +138 -0
  10. yapocis-1.0.0/CONTRIBUTORS.md +72 -0
  11. yapocis-1.0.0/HISTORY.md +216 -0
  12. yapocis-1.0.0/LICENSE.txt +22 -0
  13. yapocis-1.0.0/Makefile +432 -0
  14. yapocis-1.0.0/OVERVIEW.md +168 -0
  15. yapocis-1.0.0/PKG-INFO +527 -0
  16. yapocis-1.0.0/README.md +343 -0
  17. yapocis-1.0.0/RELEASE.md +180 -0
  18. yapocis-1.0.0/RENOVATE.md +182 -0
  19. yapocis-1.0.0/VAD_README.md +196 -0
  20. yapocis-1.0.0/activate.sh +46 -0
  21. yapocis-1.0.0/cliff.toml +87 -0
  22. yapocis-1.0.0/cq +19 -0
  23. yapocis-1.0.0/docs/Makefile +25 -0
  24. yapocis-1.0.0/docs/_static/custom.css +3 -0
  25. yapocis-1.0.0/docs/_static/images/.gitkeep +0 -0
  26. yapocis-1.0.0/docs/_templates/.gitkeep +0 -0
  27. yapocis-1.0.0/docs/api/assets.md +160 -0
  28. yapocis-1.0.0/docs/api/core.md +30 -0
  29. yapocis-1.0.0/docs/api/index.md +37 -0
  30. yapocis-1.0.0/docs/api/lib.md +98 -0
  31. yapocis-1.0.0/docs/api/utils.md +12 -0
  32. yapocis-1.0.0/docs/architecture/bound-kernels.md +232 -0
  33. yapocis-1.0.0/docs/architecture/buffer-management.md +169 -0
  34. yapocis-1.0.0/docs/architecture/extensions.md +209 -0
  35. yapocis-1.0.0/docs/architecture/index.md +74 -0
  36. yapocis-1.0.0/docs/architecture/interface-spec.md +232 -0
  37. yapocis-1.0.0/docs/architecture/kernel-code.md +228 -0
  38. yapocis-1.0.0/docs/architecture/kernel-program.md +232 -0
  39. yapocis-1.0.0/docs/assets/fonts.md +142 -0
  40. yapocis-1.0.0/docs/assets/icons.md +117 -0
  41. yapocis-1.0.0/docs/assets/images.md +142 -0
  42. yapocis-1.0.0/docs/assets/index.md +93 -0
  43. yapocis-1.0.0/docs/assets/models.md +196 -0
  44. yapocis-1.0.0/docs/cli/index.md +401 -0
  45. yapocis-1.0.0/docs/conf.py +103 -0
  46. yapocis-1.0.0/docs/examples/index.md +264 -0
  47. yapocis-1.0.0/docs/history/ai-contributions.md +67 -0
  48. yapocis-1.0.0/docs/history/index.md +99 -0
  49. yapocis-1.0.0/docs/index.md +68 -0
  50. yapocis-1.0.0/docs/kernel-development/cuda-kernels.md +189 -0
  51. yapocis-1.0.0/docs/kernel-development/index.md +90 -0
  52. yapocis-1.0.0/docs/kernel-development/interface-files.md +191 -0
  53. yapocis-1.0.0/docs/kernel-development/mako-templates.md +208 -0
  54. yapocis-1.0.0/docs/kernel-development/metal-kernels.md +249 -0
  55. yapocis-1.0.0/docs/kernel-development/numba-kernels.md +258 -0
  56. yapocis-1.0.0/docs/kernel-development/opencl-kernels.md +199 -0
  57. yapocis-1.0.0/docs/kernel-development/testing-kernels.md +324 -0
  58. yapocis-1.0.0/docs/kernel-quickstart/index.md +39 -0
  59. yapocis-1.0.0/docs/kernel-quickstart/interface-basics.md +124 -0
  60. yapocis-1.0.0/docs/kernel-quickstart/template-basics.md +195 -0
  61. yapocis-1.0.0/docs/kernel-quickstart/testing-basics.md +181 -0
  62. yapocis-1.0.0/docs/kernel-quickstart/your-first-kernel.md +113 -0
  63. yapocis-1.0.0/docs/library/anisodiff.md +188 -0
  64. yapocis-1.0.0/docs/library/channels.md +183 -0
  65. yapocis-1.0.0/docs/library/colormath.md +235 -0
  66. yapocis-1.0.0/docs/library/convolve-kernels.md +121 -0
  67. yapocis-1.0.0/docs/library/convolve.md +130 -0
  68. yapocis-1.0.0/docs/library/fft.md +332 -0
  69. yapocis-1.0.0/docs/library/gaussian.md +237 -0
  70. yapocis-1.0.0/docs/library/gradient.md +176 -0
  71. yapocis-1.0.0/docs/library/graphics.md +253 -0
  72. yapocis-1.0.0/docs/library/hsi.md +213 -0
  73. yapocis-1.0.0/docs/library/imageops.md +216 -0
  74. yapocis-1.0.0/docs/library/index.md +95 -0
  75. yapocis-1.0.0/docs/library/kerneldraw.md +191 -0
  76. yapocis-1.0.0/docs/library/mandelbrot.md +163 -0
  77. yapocis-1.0.0/docs/library/median.md +153 -0
  78. yapocis-1.0.0/docs/library/mplbackend.md +58 -0
  79. yapocis-1.0.0/docs/library/operators.md +184 -0
  80. yapocis-1.0.0/docs/library/resnet50.md +174 -0
  81. yapocis-1.0.0/docs/library/simplex.md +273 -0
  82. yapocis-1.0.0/docs/library/truetrace.md +266 -0
  83. yapocis-1.0.0/docs/library/typeset.md +173 -0
  84. yapocis-1.0.0/docs/library/vgg16.md +197 -0
  85. yapocis-1.0.0/docs/library/zc.md +203 -0
  86. yapocis-1.0.0/docs/overview/index.md +114 -0
  87. yapocis-1.0.0/docs/quickstart/backends.md +158 -0
  88. yapocis-1.0.0/docs/quickstart/first-program.md +118 -0
  89. yapocis-1.0.0/docs/quickstart/images.md +219 -0
  90. yapocis-1.0.0/docs/quickstart/index.md +48 -0
  91. yapocis-1.0.0/docs/quickstart/installation.md +151 -0
  92. yapocis-1.0.0/docs/requirements.txt +7 -0
  93. yapocis-1.0.0/examples/FFT_EXAMPLES.md +369 -0
  94. yapocis-1.0.0/examples/__init__.py +2 -0
  95. yapocis-1.0.0/examples/demo_convolve_kernels.py +466 -0
  96. yapocis-1.0.0/examples/fft_chirp_analysis.py +158 -0
  97. yapocis-1.0.0/examples/fft_library_demo.py +303 -0
  98. yapocis-1.0.0/examples/fft_power_spectrum.py +185 -0
  99. yapocis-1.0.0/examples/fft_quickstart.py +93 -0
  100. yapocis-1.0.0/examples/gaussians.py +89 -0
  101. yapocis-1.0.0/examples/mandelbrot.py +134 -0
  102. yapocis-1.0.0/examples/matplotlib_filled_paths.py +82 -0
  103. yapocis-1.0.0/examples/matplotlib_histogram.py +18 -0
  104. yapocis-1.0.0/examples/matplotlib_markers.py +47 -0
  105. yapocis-1.0.0/examples/median_performance.py +386 -0
  106. yapocis-1.0.0/examples/resnet50.py +304 -0
  107. yapocis-1.0.0/examples/simple_numpy.py +15 -0
  108. yapocis-1.0.0/examples/simple_openclose.py +45 -0
  109. yapocis-1.0.0/examples/simple_yapocis.py +24 -0
  110. yapocis-1.0.0/examples/vgg16.py +376 -0
  111. yapocis-1.0.0/examples/zcs_performance.py +498 -0
  112. yapocis-1.0.0/oldtests/__init__.py +796 -0
  113. yapocis-1.0.0/oldtests/conftest.py +310 -0
  114. yapocis-1.0.0/oldtests/random_data.py +272 -0
  115. yapocis-1.0.0/oldtests/test.jpg +0 -0
  116. yapocis-1.0.0/oldtests/test.txt +31 -0
  117. yapocis-1.0.0/oldtests/test_anisodiff.py +137 -0
  118. yapocis-1.0.0/oldtests/test_async_execution.py +235 -0
  119. yapocis-1.0.0/oldtests/test_async_modes.py +290 -0
  120. yapocis-1.0.0/oldtests/test_async_performance.py +314 -0
  121. yapocis-1.0.0/oldtests/test_backend_advanced.py +460 -0
  122. yapocis-1.0.0/oldtests/test_backend_comparison.py +223 -0
  123. yapocis-1.0.0/oldtests/test_backend_rendering.py +321 -0
  124. yapocis-1.0.0/oldtests/test_backend_runtime.py +87 -0
  125. yapocis-1.0.0/oldtests/test_backend_smoke.py +69 -0
  126. yapocis-1.0.0/oldtests/test_cnn.py +347 -0
  127. yapocis-1.0.0/oldtests/test_cnn_kernels.py +703 -0
  128. yapocis-1.0.0/oldtests/test_colormath.py +139 -0
  129. yapocis-1.0.0/oldtests/test_config.py +14 -0
  130. yapocis-1.0.0/oldtests/test_convolve.py +17 -0
  131. yapocis-1.0.0/oldtests/test_convolve_kernels.py +524 -0
  132. yapocis-1.0.0/oldtests/test_examples.py +33 -0
  133. yapocis-1.0.0/oldtests/test_fft.py +255 -0
  134. yapocis-1.0.0/oldtests/test_fft_library.py +275 -0
  135. yapocis-1.0.0/oldtests/test_gaussians.py +108 -0
  136. yapocis-1.0.0/oldtests/test_graphics.py +286 -0
  137. yapocis-1.0.0/oldtests/test_graphics4.py +332 -0
  138. yapocis-1.0.0/oldtests/test_graphics_antialiasing.py +422 -0
  139. yapocis-1.0.0/oldtests/test_hires.py +13 -0
  140. yapocis-1.0.0/oldtests/test_imageops.py +84 -0
  141. yapocis-1.0.0/oldtests/test_kernel_performance.py +316 -0
  142. yapocis-1.0.0/oldtests/test_kerneldraw.py +101 -0
  143. yapocis-1.0.0/oldtests/test_kerneldraw3.py +82 -0
  144. yapocis-1.0.0/oldtests/test_kerneldraw4.py +102 -0
  145. yapocis-1.0.0/oldtests/test_kernels.py +61 -0
  146. yapocis-1.0.0/oldtests/test_library_performance.py +137 -0
  147. yapocis-1.0.0/oldtests/test_mandelbrot.py +34 -0
  148. yapocis-1.0.0/oldtests/test_math_backend_comparison.py +173 -0
  149. yapocis-1.0.0/oldtests/test_matplotlib_backend.py +338 -0
  150. yapocis-1.0.0/oldtests/test_matplotlib_images.py +215 -0
  151. yapocis-1.0.0/oldtests/test_operators.py +230 -0
  152. yapocis-1.0.0/oldtests/test_pyplot_adapted.py +363 -0
  153. yapocis-1.0.0/oldtests/test_registries.py +55 -0
  154. yapocis-1.0.0/oldtests/test_rpc.py +201 -0
  155. yapocis-1.0.0/oldtests/test_tools_cli.py +593 -0
  156. yapocis-1.0.0/oldtests/test_truetrace.py +124 -0
  157. yapocis-1.0.0/oldtests/test_utils.py +36 -0
  158. yapocis-1.0.0/oldtests/test_validation_example.py +75 -0
  159. yapocis-1.0.0/pyproject.toml +320 -0
  160. yapocis-1.0.0/src/yapocis/__init__.py +3 -0
  161. yapocis-1.0.0/src/yapocis/core/__init__.py +342 -0
  162. yapocis-1.0.0/src/yapocis/core/device_mgr_base.py +466 -0
  163. yapocis-1.0.0/src/yapocis/core/dispatch_expr.py +150 -0
  164. yapocis-1.0.0/src/yapocis/core/interface.py +351 -0
  165. yapocis-1.0.0/src/yapocis/core/interface_context.py +205 -0
  166. yapocis-1.0.0/src/yapocis/core/interface_parser.py +537 -0
  167. yapocis-1.0.0/src/yapocis/core/kernel_base.py +418 -0
  168. yapocis-1.0.0/src/yapocis/core/kmgr_base.py +499 -0
  169. yapocis-1.0.0/src/yapocis/core/manager.py +53 -0
  170. yapocis-1.0.0/src/yapocis/cu/__init__.py +5 -0
  171. yapocis-1.0.0/src/yapocis/cu/device.py +75 -0
  172. yapocis-1.0.0/src/yapocis/cu/device_manager.py +336 -0
  173. yapocis-1.0.0/src/yapocis/cu/kernel.py +200 -0
  174. yapocis-1.0.0/src/yapocis/cu/kernel_manager.py +64 -0
  175. yapocis-1.0.0/src/yapocis/fonts/UFL.txt +96 -0
  176. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-Bold.ttf +0 -0
  177. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-BoldItalic.ttf +0 -0
  178. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-Italic.ttf +0 -0
  179. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-Light.ttf +0 -0
  180. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-LightItalic.ttf +0 -0
  181. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-Medium.ttf +0 -0
  182. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-MediumItalic.ttf +0 -0
  183. yapocis-1.0.0/src/yapocis/fonts/Ubuntu-Regular.ttf +0 -0
  184. yapocis-1.0.0/src/yapocis/fonts/__init__.py +61 -0
  185. yapocis-1.0.0/src/yapocis/icons/__init__.py +46 -0
  186. yapocis-1.0.0/src/yapocis/images/CREDITS.md +24 -0
  187. yapocis-1.0.0/src/yapocis/images/__init__.py +16 -0
  188. yapocis-1.0.0/src/yapocis/images/cassette_player.jpg +0 -0
  189. yapocis-1.0.0/src/yapocis/images/chainsaw.jpg +0 -0
  190. yapocis-1.0.0/src/yapocis/images/chime.jpg +0 -0
  191. yapocis-1.0.0/src/yapocis/images/church.jpg +0 -0
  192. yapocis-1.0.0/src/yapocis/images/elephant.jpg +0 -0
  193. yapocis-1.0.0/src/yapocis/images/german_shepherd.jpg +0 -0
  194. yapocis-1.0.0/src/yapocis/images/golden_retriever.jpg +0 -0
  195. yapocis-1.0.0/src/yapocis/images/hotdog.jpg +0 -0
  196. yapocis-1.0.0/src/yapocis/images/lemon.jpg +0 -0
  197. yapocis-1.0.0/src/yapocis/images/panda.jpg +0 -0
  198. yapocis-1.0.0/src/yapocis/images/parachute.jpg +0 -0
  199. yapocis-1.0.0/src/yapocis/images/stone_wall.jpg +0 -0
  200. yapocis-1.0.0/src/yapocis/images/suit.jpg +0 -0
  201. yapocis-1.0.0/src/yapocis/images/test.jpg +0 -0
  202. yapocis-1.0.0/src/yapocis/interfaces/__init__.py +12 -0
  203. yapocis-1.0.0/src/yapocis/interfaces/anisodiff.interface +14 -0
  204. yapocis-1.0.0/src/yapocis/interfaces/audio.interface +20 -0
  205. yapocis-1.0.0/src/yapocis/interfaces/cnn.interface +287 -0
  206. yapocis-1.0.0/src/yapocis/interfaces/colormath.interface +8 -0
  207. yapocis-1.0.0/src/yapocis/interfaces/convolve.interface +4 -0
  208. yapocis-1.0.0/src/yapocis/interfaces/convolves.interface +5 -0
  209. yapocis-1.0.0/src/yapocis/interfaces/convolves.yml +115 -0
  210. yapocis-1.0.0/src/yapocis/interfaces/convolvesep.interface +8 -0
  211. yapocis-1.0.0/src/yapocis/interfaces/convolvesep.yml +101 -0
  212. yapocis-1.0.0/src/yapocis/interfaces/demo.interface +4 -0
  213. yapocis-1.0.0/src/yapocis/interfaces/fft.interface +21 -0
  214. yapocis-1.0.0/src/yapocis/interfaces/gradient.interface +4 -0
  215. yapocis-1.0.0/src/yapocis/interfaces/graphics.interface +19 -0
  216. yapocis-1.0.0/src/yapocis/interfaces/graphics4.interface +19 -0
  217. yapocis-1.0.0/src/yapocis/interfaces/hsi.interface +6 -0
  218. yapocis-1.0.0/src/yapocis/interfaces/imageops.interface +7 -0
  219. yapocis-1.0.0/src/yapocis/interfaces/mandelbrot.interface +3 -0
  220. yapocis-1.0.0/src/yapocis/interfaces/median3x3.interface +4 -0
  221. yapocis-1.0.0/src/yapocis/interfaces/operators.interface +9 -0
  222. yapocis-1.0.0/src/yapocis/interfaces/operators.yml +21 -0
  223. yapocis-1.0.0/src/yapocis/interfaces/simplex.interface +28 -0
  224. yapocis-1.0.0/src/yapocis/interfaces/truetrace.interface +21 -0
  225. yapocis-1.0.0/src/yapocis/interfaces/vgg16.interface +107 -0
  226. yapocis-1.0.0/src/yapocis/interfaces/zcs.interface +13 -0
  227. yapocis-1.0.0/src/yapocis/kernels/__init__.py +50 -0
  228. yapocis-1.0.0/src/yapocis/kernels/cuda/__init__.py +11 -0
  229. yapocis-1.0.0/src/yapocis/kernels/cuda/anisodiff.mako +78 -0
  230. yapocis-1.0.0/src/yapocis/kernels/cuda/audio.mako +108 -0
  231. yapocis-1.0.0/src/yapocis/kernels/cuda/cnn.mako +837 -0
  232. yapocis-1.0.0/src/yapocis/kernels/cuda/colormath.mako +253 -0
  233. yapocis-1.0.0/src/yapocis/kernels/cuda/constants.mako +183 -0
  234. yapocis-1.0.0/src/yapocis/kernels/cuda/convolve.mako +45 -0
  235. yapocis-1.0.0/src/yapocis/kernels/cuda/convolves.mako +26 -0
  236. yapocis-1.0.0/src/yapocis/kernels/cuda/convolvesep.mako +68 -0
  237. yapocis-1.0.0/src/yapocis/kernels/cuda/demo.mako +11 -0
  238. yapocis-1.0.0/src/yapocis/kernels/cuda/fft.mako +284 -0
  239. yapocis-1.0.0/src/yapocis/kernels/cuda/gradient.mako +30 -0
  240. yapocis-1.0.0/src/yapocis/kernels/cuda/graphics.mako +347 -0
  241. yapocis-1.0.0/src/yapocis/kernels/cuda/graphics4.mako +317 -0
  242. yapocis-1.0.0/src/yapocis/kernels/cuda/helpers.mako +67 -0
  243. yapocis-1.0.0/src/yapocis/kernels/cuda/hsi.mako +153 -0
  244. yapocis-1.0.0/src/yapocis/kernels/cuda/imageops.mako +48 -0
  245. yapocis-1.0.0/src/yapocis/kernels/cuda/mandelbrot.mako +23 -0
  246. yapocis-1.0.0/src/yapocis/kernels/cuda/median3x3.mako +48 -0
  247. yapocis-1.0.0/src/yapocis/kernels/cuda/operators.mako +17 -0
  248. yapocis-1.0.0/src/yapocis/kernels/cuda/simplex.mako +301 -0
  249. yapocis-1.0.0/src/yapocis/kernels/cuda/truetrace.mako +132 -0
  250. yapocis-1.0.0/src/yapocis/kernels/cuda/vgg16.mako +270 -0
  251. yapocis-1.0.0/src/yapocis/kernels/cuda/zcs.mako +47 -0
  252. yapocis-1.0.0/src/yapocis/kernels/metal/__init__.py +1 -0
  253. yapocis-1.0.0/src/yapocis/kernels/metal/anisodiff.mako +48 -0
  254. yapocis-1.0.0/src/yapocis/kernels/metal/audio.mako +114 -0
  255. yapocis-1.0.0/src/yapocis/kernels/metal/cnn.mako +856 -0
  256. yapocis-1.0.0/src/yapocis/kernels/metal/colormath.mako +257 -0
  257. yapocis-1.0.0/src/yapocis/kernels/metal/constants.mako +40 -0
  258. yapocis-1.0.0/src/yapocis/kernels/metal/convolve.mako +46 -0
  259. yapocis-1.0.0/src/yapocis/kernels/metal/convolves.mako +21 -0
  260. yapocis-1.0.0/src/yapocis/kernels/metal/convolvesep.mako +70 -0
  261. yapocis-1.0.0/src/yapocis/kernels/metal/demo.mako +11 -0
  262. yapocis-1.0.0/src/yapocis/kernels/metal/fft.mako +396 -0
  263. yapocis-1.0.0/src/yapocis/kernels/metal/fft_radix2.metal +304 -0
  264. yapocis-1.0.0/src/yapocis/kernels/metal/gradient.mako +30 -0
  265. yapocis-1.0.0/src/yapocis/kernels/metal/graphics.mako +354 -0
  266. yapocis-1.0.0/src/yapocis/kernels/metal/graphics4.mako +385 -0
  267. yapocis-1.0.0/src/yapocis/kernels/metal/helpers.mako +35 -0
  268. yapocis-1.0.0/src/yapocis/kernels/metal/hsi.mako +139 -0
  269. yapocis-1.0.0/src/yapocis/kernels/metal/imageops.mako +55 -0
  270. yapocis-1.0.0/src/yapocis/kernels/metal/mandelbrot.mako +23 -0
  271. yapocis-1.0.0/src/yapocis/kernels/metal/median3x3.mako +45 -0
  272. yapocis-1.0.0/src/yapocis/kernels/metal/operators.mako +13 -0
  273. yapocis-1.0.0/src/yapocis/kernels/metal/simplex.mako +314 -0
  274. yapocis-1.0.0/src/yapocis/kernels/metal/truetrace.mako +123 -0
  275. yapocis-1.0.0/src/yapocis/kernels/metal/vgg16.mako +280 -0
  276. yapocis-1.0.0/src/yapocis/kernels/metal/zcs.mako +49 -0
  277. yapocis-1.0.0/src/yapocis/kernels/numbax/__init__.py +1 -0
  278. yapocis-1.0.0/src/yapocis/kernels/numbax/anisodiff.py +148 -0
  279. yapocis-1.0.0/src/yapocis/kernels/numbax/cnn.py +1549 -0
  280. yapocis-1.0.0/src/yapocis/kernels/numbax/colormath.py +618 -0
  281. yapocis-1.0.0/src/yapocis/kernels/numbax/convolve.py +65 -0
  282. yapocis-1.0.0/src/yapocis/kernels/numbax/convolvesep.py +117 -0
  283. yapocis-1.0.0/src/yapocis/kernels/numbax/demo.py +13 -0
  284. yapocis-1.0.0/src/yapocis/kernels/numbax/fft.py +156 -0
  285. yapocis-1.0.0/src/yapocis/kernels/numbax/gradient.py +105 -0
  286. yapocis-1.0.0/src/yapocis/kernels/numbax/graphics.py +510 -0
  287. yapocis-1.0.0/src/yapocis/kernels/numbax/graphics4.py +488 -0
  288. yapocis-1.0.0/src/yapocis/kernels/numbax/hsi.py +224 -0
  289. yapocis-1.0.0/src/yapocis/kernels/numbax/imageops.py +150 -0
  290. yapocis-1.0.0/src/yapocis/kernels/numbax/mandelbrot.py +71 -0
  291. yapocis-1.0.0/src/yapocis/kernels/numbax/median3x3.py +82 -0
  292. yapocis-1.0.0/src/yapocis/kernels/numbax/operators.py +137 -0
  293. yapocis-1.0.0/src/yapocis/kernels/numbax/simplex.py +562 -0
  294. yapocis-1.0.0/src/yapocis/kernels/numbax/truetrace.py +68 -0
  295. yapocis-1.0.0/src/yapocis/kernels/numbax/zcs.py +69 -0
  296. yapocis-1.0.0/src/yapocis/kernels/ocl/__init__.py +13 -0
  297. yapocis-1.0.0/src/yapocis/kernels/ocl/anisodiff.mako +72 -0
  298. yapocis-1.0.0/src/yapocis/kernels/ocl/audio.mako +114 -0
  299. yapocis-1.0.0/src/yapocis/kernels/ocl/cnn.mako +828 -0
  300. yapocis-1.0.0/src/yapocis/kernels/ocl/colormath.mako +250 -0
  301. yapocis-1.0.0/src/yapocis/kernels/ocl/constants.mako +22 -0
  302. yapocis-1.0.0/src/yapocis/kernels/ocl/convolve.mako +41 -0
  303. yapocis-1.0.0/src/yapocis/kernels/ocl/convolves.mako +22 -0
  304. yapocis-1.0.0/src/yapocis/kernels/ocl/convolvesep.mako +61 -0
  305. yapocis-1.0.0/src/yapocis/kernels/ocl/demo.mako +7 -0
  306. yapocis-1.0.0/src/yapocis/kernels/ocl/fft.mako +290 -0
  307. yapocis-1.0.0/src/yapocis/kernels/ocl/gradient.mako +26 -0
  308. yapocis-1.0.0/src/yapocis/kernels/ocl/graphics.mako +345 -0
  309. yapocis-1.0.0/src/yapocis/kernels/ocl/graphics4.mako +358 -0
  310. yapocis-1.0.0/src/yapocis/kernels/ocl/helpers.mako +47 -0
  311. yapocis-1.0.0/src/yapocis/kernels/ocl/hsi.mako +146 -0
  312. yapocis-1.0.0/src/yapocis/kernels/ocl/imageops.mako +41 -0
  313. yapocis-1.0.0/src/yapocis/kernels/ocl/mandelbrot.mako +19 -0
  314. yapocis-1.0.0/src/yapocis/kernels/ocl/median3x3.mako +44 -0
  315. yapocis-1.0.0/src/yapocis/kernels/ocl/operators.mako +11 -0
  316. yapocis-1.0.0/src/yapocis/kernels/ocl/simplex.mako +325 -0
  317. yapocis-1.0.0/src/yapocis/kernels/ocl/truetrace.mako +132 -0
  318. yapocis-1.0.0/src/yapocis/kernels/ocl/vgg16.mako +270 -0
  319. yapocis-1.0.0/src/yapocis/kernels/ocl/zcs.mako +45 -0
  320. yapocis-1.0.0/src/yapocis/lib/__init__.py +1 -0
  321. yapocis-1.0.0/src/yapocis/lib/abstract_graphics.py +581 -0
  322. yapocis-1.0.0/src/yapocis/lib/anisodiff.py +258 -0
  323. yapocis-1.0.0/src/yapocis/lib/anisodiff.pyi +26 -0
  324. yapocis-1.0.0/src/yapocis/lib/bound_kernels.py +147 -0
  325. yapocis-1.0.0/src/yapocis/lib/channels.py +54 -0
  326. yapocis-1.0.0/src/yapocis/lib/colormath.py +69 -0
  327. yapocis-1.0.0/src/yapocis/lib/colormath.pyi +17 -0
  328. yapocis-1.0.0/src/yapocis/lib/convolve.py +12 -0
  329. yapocis-1.0.0/src/yapocis/lib/convolve_kernels.py +277 -0
  330. yapocis-1.0.0/src/yapocis/lib/fft.py +600 -0
  331. yapocis-1.0.0/src/yapocis/lib/fft.pyi +32 -0
  332. yapocis-1.0.0/src/yapocis/lib/gaussian.py +340 -0
  333. yapocis-1.0.0/src/yapocis/lib/gradient.py +16 -0
  334. yapocis-1.0.0/src/yapocis/lib/gradient.pyi +12 -0
  335. yapocis-1.0.0/src/yapocis/lib/graphics.py +203 -0
  336. yapocis-1.0.0/src/yapocis/lib/graphics.pyi +33 -0
  337. yapocis-1.0.0/src/yapocis/lib/graphics4.py +228 -0
  338. yapocis-1.0.0/src/yapocis/lib/graphics4.pyi +33 -0
  339. yapocis-1.0.0/src/yapocis/lib/hsi.py +37 -0
  340. yapocis-1.0.0/src/yapocis/lib/hsi.pyi +14 -0
  341. yapocis-1.0.0/src/yapocis/lib/imageops.py +144 -0
  342. yapocis-1.0.0/src/yapocis/lib/imageops.pyi +17 -0
  343. yapocis-1.0.0/src/yapocis/lib/kerneldraw1.py +12 -0
  344. yapocis-1.0.0/src/yapocis/lib/kerneldraw3.py +94 -0
  345. yapocis-1.0.0/src/yapocis/lib/kerneldraw4.py +13 -0
  346. yapocis-1.0.0/src/yapocis/lib/mandelbrot.py +7 -0
  347. yapocis-1.0.0/src/yapocis/lib/mandelbrot.pyi +11 -0
  348. yapocis-1.0.0/src/yapocis/lib/median.py +70 -0
  349. yapocis-1.0.0/src/yapocis/lib/mplbackend.py +459 -0
  350. yapocis-1.0.0/src/yapocis/lib/operators.py +11 -0
  351. yapocis-1.0.0/src/yapocis/lib/operators.pyi +20 -0
  352. yapocis-1.0.0/src/yapocis/lib/resnet50.py +733 -0
  353. yapocis-1.0.0/src/yapocis/lib/simplex.py +409 -0
  354. yapocis-1.0.0/src/yapocis/lib/simplex.pyi +16 -0
  355. yapocis-1.0.0/src/yapocis/lib/truetrace.py +633 -0
  356. yapocis-1.0.0/src/yapocis/lib/truetrace.pyi +14 -0
  357. yapocis-1.0.0/src/yapocis/lib/typeset.py +314 -0
  358. yapocis-1.0.0/src/yapocis/lib/vgg16.py +690 -0
  359. yapocis-1.0.0/src/yapocis/lib/zc.py +45 -0
  360. yapocis-1.0.0/src/yapocis/metallic/__init__.py +8 -0
  361. yapocis-1.0.0/src/yapocis/metallic/device.py +76 -0
  362. yapocis-1.0.0/src/yapocis/metallic/device_manager.py +182 -0
  363. yapocis-1.0.0/src/yapocis/metallic/kernel.py +205 -0
  364. yapocis-1.0.0/src/yapocis/metallic/kernel_manager.py +121 -0
  365. yapocis-1.0.0/src/yapocis/models/.gitignore +1 -0
  366. yapocis-1.0.0/src/yapocis/models/__init__.py +186 -0
  367. yapocis-1.0.0/src/yapocis/models/resnet50/README.md +34 -0
  368. yapocis-1.0.0/src/yapocis/models/resnet50/classes.txt +1000 -0
  369. yapocis-1.0.0/src/yapocis/models/vgg16/README.md +34 -0
  370. yapocis-1.0.0/src/yapocis/models/vgg16/classes.txt +1000 -0
  371. yapocis-1.0.0/src/yapocis/numbax/__init__.py +12 -0
  372. yapocis-1.0.0/src/yapocis/numbax/kernel.py +122 -0
  373. yapocis-1.0.0/src/yapocis/numbax/kernel_manager.py +280 -0
  374. yapocis-1.0.0/src/yapocis/ocl/__init__.py +1 -0
  375. yapocis-1.0.0/src/yapocis/ocl/device.py +88 -0
  376. yapocis-1.0.0/src/yapocis/ocl/device_manager.py +199 -0
  377. yapocis-1.0.0/src/yapocis/ocl/kernel.py +169 -0
  378. yapocis-1.0.0/src/yapocis/ocl/kernel_manager.py +85 -0
  379. yapocis-1.0.0/src/yapocis/scripts/__init__.py +3 -0
  380. yapocis-1.0.0/src/yapocis/scripts/cuda_cards.py +1038 -0
  381. yapocis-1.0.0/src/yapocis/scripts/doctest_examples.py +926 -0
  382. yapocis-1.0.0/src/yapocis/scripts/imagewatcher.py +1505 -0
  383. yapocis-1.0.0/src/yapocis/scripts/performance.py +1733 -0
  384. yapocis-1.0.0/src/yapocis/scripts/queue_check.py +208 -0
  385. yapocis-1.0.0/src/yapocis/scripts/report.py +368 -0
  386. yapocis-1.0.0/src/yapocis/scripts/tools.py +1656 -0
  387. yapocis-1.0.0/src/yapocis/scripts/validate.py +434 -0
  388. yapocis-1.0.0/src/yapocis/utils/__init__.py +1 -0
  389. yapocis-1.0.0/src/yapocis/utils/advanced.py +113 -0
  390. yapocis-1.0.0/src/yapocis/utils/basic.py +668 -0
  391. yapocis-1.0.0/src/yapocis/utils/config.py +66 -0
  392. yapocis-1.0.0/src/yapocis/utils/deterministic.py +286 -0
  393. yapocis-1.0.0/src/yapocis/utils/internals.py +212 -0
  394. yapocis-1.0.0/src/yapocis/utils/logging.py +29 -0
  395. yapocis-1.0.0/src/yapocis/utils/performance.py +2147 -0
  396. yapocis-1.0.0/src/yapocis/utils/stereo_typing.py +35 -0
  397. yapocis-1.0.0/src/yapocis/utils/validation.py +379 -0
  398. yapocis-1.0.0/tests/BACKEND_STANDARDIZATION.md +167 -0
  399. yapocis-1.0.0/tests/CENTRALIZED_PARAMETERIZATION.md +183 -0
  400. yapocis-1.0.0/tests/MIGRATION_SUMMARY.md +205 -0
  401. yapocis-1.0.0/tests/MPLBACKEND_REORGANIZATION.md +197 -0
  402. yapocis-1.0.0/tests/README.md +395 -0
  403. yapocis-1.0.0/tests/__init__.py +832 -0
  404. yapocis-1.0.0/tests/async/__init__.py +3 -0
  405. yapocis-1.0.0/tests/async/test_execution.py +250 -0
  406. yapocis-1.0.0/tests/async/test_modes.py +300 -0
  407. yapocis-1.0.0/tests/async/test_performance.py +320 -0
  408. yapocis-1.0.0/tests/backend/__init__.py +3 -0
  409. yapocis-1.0.0/tests/backend/test_backend_selection.py +70 -0
  410. yapocis-1.0.0/tests/backend/test_interface_dtypes.py +31 -0
  411. yapocis-1.0.0/tests/backend/test_kernel_template_cache.py +65 -0
  412. yapocis-1.0.0/tests/backend/test_runtime.py +89 -0
  413. yapocis-1.0.0/tests/backend/test_search_order.py +58 -0
  414. yapocis-1.0.0/tests/backend/test_smoke.py +71 -0
  415. yapocis-1.0.0/tests/conftest.py +348 -0
  416. yapocis-1.0.0/tests/integration/__init__.py +3 -0
  417. yapocis-1.0.0/tests/integration/test_config.py +18 -0
  418. yapocis-1.0.0/tests/integration/test_examples.py +40 -0
  419. yapocis-1.0.0/tests/integration/test_image_io.py +116 -0
  420. yapocis-1.0.0/tests/integration/test_registries.py +61 -0
  421. yapocis-1.0.0/tests/integration/test_rpc.py +201 -0
  422. yapocis-1.0.0/tests/integration/test_tools_cli.py +620 -0
  423. yapocis-1.0.0/tests/integration/test_utils.py +49 -0
  424. yapocis-1.0.0/tests/lib/__init__.py +3 -0
  425. yapocis-1.0.0/tests/lib/compute/__init__.py +3 -0
  426. yapocis-1.0.0/tests/lib/compute/test_gaussians.py +124 -0
  427. yapocis-1.0.0/tests/lib/compute/test_gradient_values.py +85 -0
  428. yapocis-1.0.0/tests/lib/compute/test_hires.py +11 -0
  429. yapocis-1.0.0/tests/lib/compute/test_mandelbrot.py +39 -0
  430. yapocis-1.0.0/tests/lib/compute/test_operators.py +224 -0
  431. yapocis-1.0.0/tests/lib/compute/test_simplex.py +378 -0
  432. yapocis-1.0.0/tests/lib/compute/test_truetrace.py +129 -0
  433. yapocis-1.0.0/tests/lib/fft/__init__.py +3 -0
  434. yapocis-1.0.0/tests/lib/fft/test_fft.py +271 -0
  435. yapocis-1.0.0/tests/lib/fft/test_fft_library.py +292 -0
  436. yapocis-1.0.0/tests/lib/graphics/__init__.py +3 -0
  437. yapocis-1.0.0/tests/lib/graphics/test_alpha_blending.py +315 -0
  438. yapocis-1.0.0/tests/lib/graphics/test_antialiasing.py +435 -0
  439. yapocis-1.0.0/tests/lib/graphics/test_graphics.py +332 -0
  440. yapocis-1.0.0/tests/lib/graphics/test_graphics4.py +386 -0
  441. yapocis-1.0.0/tests/lib/graphics/test_kerneldraw.py +116 -0
  442. yapocis-1.0.0/tests/lib/graphics/test_kerneldraw3.py +92 -0
  443. yapocis-1.0.0/tests/lib/graphics/test_kerneldraw4.py +112 -0
  444. yapocis-1.0.0/tests/lib/graphics/test_position_validation.py +431 -0
  445. yapocis-1.0.0/tests/lib/graphics/test_position_validation_graphics4.py +571 -0
  446. yapocis-1.0.0/tests/lib/graphics/test_primitive_consistency.py +87 -0
  447. yapocis-1.0.0/tests/lib/graphics/test_zero_length_lines.py +40 -0
  448. yapocis-1.0.0/tests/lib/mplbackend/README.md +90 -0
  449. yapocis-1.0.0/tests/lib/mplbackend/__init__.py +3 -0
  450. yapocis-1.0.0/tests/lib/mplbackend/test_advanced.py +493 -0
  451. yapocis-1.0.0/tests/lib/mplbackend/test_backend.py +338 -0
  452. yapocis-1.0.0/tests/lib/mplbackend/test_comparison.py +232 -0
  453. yapocis-1.0.0/tests/lib/mplbackend/test_images.py +254 -0
  454. yapocis-1.0.0/tests/lib/mplbackend/test_imshow_position.py +269 -0
  455. yapocis-1.0.0/tests/lib/mplbackend/test_math_comparison.py +186 -0
  456. yapocis-1.0.0/tests/lib/mplbackend/test_primitives_position.py +502 -0
  457. yapocis-1.0.0/tests/lib/mplbackend/test_pyplot.py +365 -0
  458. yapocis-1.0.0/tests/lib/mplbackend/test_rendering.py +330 -0
  459. yapocis-1.0.0/tests/lib/mplbackend/test_seaborn.py +196 -0
  460. yapocis-1.0.0/tests/lib/neural/__init__.py +3 -0
  461. yapocis-1.0.0/tests/lib/neural/test_cnn.py +365 -0
  462. yapocis-1.0.0/tests/lib/neural/test_cnn_kernels.py +667 -0
  463. yapocis-1.0.0/tests/lib/processing/__init__.py +3 -0
  464. yapocis-1.0.0/tests/lib/processing/test_anisodiff.py +197 -0
  465. yapocis-1.0.0/tests/lib/processing/test_colormath.py +203 -0
  466. yapocis-1.0.0/tests/lib/processing/test_convolve.py +23 -0
  467. yapocis-1.0.0/tests/lib/processing/test_convolve_kernels.py +526 -0
  468. yapocis-1.0.0/tests/lib/processing/test_hsi2rgb_clamp.py +104 -0
  469. yapocis-1.0.0/tests/lib/processing/test_imageops.py +334 -0
  470. yapocis-1.0.0/tests/lib/processing/test_median.py +278 -0
  471. yapocis-1.0.0/tests/performance/__init__.py +3 -0
  472. yapocis-1.0.0/tests/performance/test_kernel_perf.py +345 -0
  473. yapocis-1.0.0/tests/performance/test_library_perf.py +135 -0
  474. yapocis-1.0.0/tests/random_data.py +301 -0
  475. yapocis-1.0.0/tests/regression/__init__.py +3 -0
  476. yapocis-1.0.0/tests/regression/test_validation.py +78 -0
  477. yapocis-1.0.0/tests/test.txt +31 -0
  478. yapocis-1.0.0/tests/test_vimp_common.py +153 -0
  479. yapocis-1.0.0/uv.lock +3976 -0
  480. yapocis-1.0.0/vad_yapocis.py +639 -0
@@ -0,0 +1,48 @@
1
+ \#*
2
+ *.pyc
3
+ *.ocl
4
+ *.swp
5
+ *.pyd
6
+ *.so
7
+ *.o
8
+ *.lo
9
+ *.la
10
+ *~
11
+ *.bak
12
+ *.swp
13
+ *.png
14
+ *.svg
15
+ .\#*
16
+ *.log
17
+ .deps
18
+ .libs
19
+ __pycache__
20
+ #*
21
+ /.claude
22
+ .env
23
+ /src/yapocis/mako_modules
24
+ /queue
25
+ /opencl_cache
26
+ /prof
27
+ /.idea
28
+ /build
29
+ /dist
30
+ /scipy.egg-info
31
+ /site.cfg
32
+ /docs/_build/
33
+ /docs/frontpage/build
34
+ /docs/source/generated
35
+ /yapocis.egg-info/
36
+ /.pydevproject
37
+ /.project
38
+ /src/yapocis/icons/*/*
39
+ /performance
40
+ /performance/reports/
41
+ /code_cache
42
+ /claude-debug/*
43
+ *#checkin.txt*
44
+ env
45
+ pyproject.toml.example
46
+ scripts/release.py
47
+ segment.py
48
+ test_vad_yapocis.py
@@ -0,0 +1,3 @@
1
+ [submodule "external"]
2
+ path = external
3
+ url = git@github.com:seantrue/yapocis-external.git
@@ -0,0 +1 @@
1
+ 3.13
@@ -0,0 +1,26 @@
1
+ # .readthedocs.yml
2
+ # Read the Docs configuration file
3
+ # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4
+
5
+ # Required
6
+ version: 2
7
+
8
+ build:
9
+ os: ubuntu-24.04
10
+ tools:
11
+ python: "3.13"
12
+
13
+ # Build documentation in the docs/ directory with Sphinx
14
+ sphinx:
15
+ configuration: docs/conf.py
16
+
17
+ # Optionally build your docs in additional formats such as PDF
18
+ formats:
19
+ - pdf
20
+
21
+ # Install yapocis itself so autodoc can import it, then the Sphinx tooling
22
+ python:
23
+ install:
24
+ - method: pip
25
+ path: .
26
+ - requirements: docs/requirements.txt
@@ -0,0 +1,3 @@
1
+ #Sun Aug 21 10:33:41 EDT 2011
2
+ eclipse.preferences.version=1
3
+ encoding//doc/conf.py=utf-8
@@ -0,0 +1,45 @@
1
+ # Repository Guidelines
2
+
3
+ ## Project Structure & Module Organization
4
+ - `yapocis/` – core package:
5
+ - `ocl/` OpenCL devices, buffers, kernel build (`DeviceManager`, `KernelManager`).
6
+ - `core/` shared utilities (backend selection, autotune, tunecache, interface parsing).
7
+ - `cu/` and `cukernels/` CUDA support via CuPy and Mako templates.
8
+ - `interfaces/`, `kernels/` interface DSL and Mako kernel templates.
9
+ - `tests/` – pytest suite (`test_*.py`).
10
+ - `examples/` – runnable demos and performance scripts.
11
+ - `docs/` – documentation (Read the Docs).
12
+ - `scripts/` – helper utilities (e.g., `scripts/imagewatcher.py`).
13
+
14
+ ## Build, Test, and Development Commands
15
+ - Create env + install:
16
+ - `make install-dev` (recommended)
17
+ - Or manually: `uv venv .venv && source .venv/bin/activate && uv pip install -e ".[dev]"`
18
+ - Run tests:
19
+ - `make test` (all available backends)
20
+ - `make test-ocl` (OpenCL only)
21
+ - `make test-metal` (Metal only)
22
+ - `pytest -q` (direct pytest, example: `pytest tests/backend/test_smoke.py -q`)
23
+ - Run examples: `python examples/matplotlib_median_performance.py`.
24
+
25
+ ## Coding Style & Naming Conventions
26
+ - Python, 4‑space indentation, PEP 8. Use type hints where practical.
27
+ - Names: modules/files `snake_case.py`; functions/vars `snake_case`; classes `PascalCase`; constants `UPPER_SNAKE`.
28
+ - Keep functions small and documented; module/class/function docstrings use triple quotes with a one‑line summary.
29
+ - Prefer explicit imports within the `yapocis` namespace.
30
+
31
+ ## Testing Guidelines
32
+ - Framework: pytest. Place tests in `tests/` named `test_*.py` with clear arrange/act/assert sections.
33
+ - Include GPU/CPU expectations and deterministic assertions. Add a focused test for each new kernel or interface.
34
+ - Quick loop: `pytest -k <keyword> -q`.
35
+
36
+ ## Commit & Pull Request Guidelines
37
+ - Commits: concise, imperative subject (≤72 chars). Example: `Add CUDA tunecache path handling`.
38
+ - Reference issues: `Fixes #123` or `Refs #123` when applicable.
39
+ - PRs must include: summary, rationale, affected modules, how to test (commands), and backend/hardware tested (e.g., `OpenCL CPU`, `CUDA RTX 3060`). Add screenshots/SVGs if output changes; update docs/examples when behavior or APIs change.
40
+
41
+ ## Security & Configuration Tips
42
+ - Do not commit secrets or large artifacts. Prefer sample data in `examples/`.
43
+ - Useful env vars: `YAPOCIS_BACKEND` (`ocl`|`cuda`), `YAPOCIS_DEVICE` (device name/index), `YAPOCIS_CACHE` (kernel cache dir), `YAPOCIS_TUNECACHE` (autotune JSON path), `YAPOCIS_PROJECT` (extra asset root), `YAPOCIS_VIEWER` (image viewer).
44
+ - See `OVERVIEW.md` for architecture details and asset lookup behavior.
45
+