tensorstudio 1.16.0__tar.gz → 2.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 (247) hide show
  1. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/CHANGELOG.md +15 -0
  2. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/CMakeLists.txt +1 -1
  3. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/PKG-INFO +34 -16
  4. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/README.md +33 -15
  5. tensorstudio-2.0.0/benchmarks/results.md +351 -0
  6. tensorstudio-2.0.0/benchmarks/results_matmul.md +49 -0
  7. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/core/api-reference.md +31 -7
  8. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/ecosystem/datasets.md +21 -0
  9. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/ecosystem/model-zoo-and-language.md +14 -1
  10. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/ecosystem/quantization-and-kernels.md +5 -1
  11. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/ecosystem/sparse.md +9 -1
  12. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/index.md +11 -7
  13. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/model-formats.md +1 -1
  14. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/numpy-interop.md +13 -0
  15. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/onnx.md +3 -1
  16. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/release/publishing.md +4 -4
  17. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/release/versioning.md +2 -2
  18. tensorstudio-2.0.0/docs/roadmap/roadmap.md +138 -0
  19. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/version.hpp +1 -1
  20. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/pyproject.toml +1 -1
  21. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/__init__.py +22 -1
  22. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/_version.py +1 -1
  23. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/data/__init__.py +20 -0
  24. tensorstudio-2.0.0/python/tensorstudio/data/manifest.py +225 -0
  25. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/distributed.py +1 -1
  26. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/interchange/__init__.py +4 -0
  27. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/interchange/onnx.py +64 -7
  28. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/nn/__init__.py +8 -0
  29. tensorstudio-2.0.0/python/tensorstudio/nn/attention.py +156 -0
  30. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/quantization.py +88 -0
  31. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/sparse.py +181 -0
  32. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/tensor.py +14 -0
  33. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_import.py +1 -1
  34. tensorstudio-2.0.0/tests/test_v2_foundation.py +97 -0
  35. tensorstudio-1.16.0/benchmarks/results.md +0 -351
  36. tensorstudio-1.16.0/benchmarks/results_matmul.md +0 -49
  37. tensorstudio-1.16.0/docs/roadmap/roadmap.md +0 -253
  38. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.gitattributes +0 -0
  39. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.github/workflows/ci.yml +0 -0
  40. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.github/workflows/docs.yml +0 -0
  41. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.github/workflows/publish-testpypi.yml +0 -0
  42. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.github/workflows/publish.yml +0 -0
  43. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.github/workflows/wheels.yml +0 -0
  44. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.gitignore +0 -0
  45. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/.pre-commit-config.yaml +0 -0
  46. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/CONTRIBUTING.md +0 -0
  47. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/LICENSE +0 -0
  48. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/SECURITY.md +0 -0
  49. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmark_all.py +0 -0
  50. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/__init__.py +0 -0
  51. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_activations.py +0 -0
  52. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_autograd.py +0 -0
  53. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_conv2d.py +0 -0
  54. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_elementwise.py +0 -0
  55. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_matmul.py +0 -0
  56. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_pooling.py +0 -0
  57. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_reductions.py +0 -0
  58. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_tensor_ops.py +0 -0
  59. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/bench_training_loop.py +0 -0
  60. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/benchmark_report.py +0 -0
  61. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/results_conv2d.md +0 -0
  62. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/results_pooling.md +0 -0
  63. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/results_reductions.md +0 -0
  64. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/results_tensor_ops.md +0 -0
  65. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/benchmarks/thresholds.json +0 -0
  66. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/autograd/coverage.md +0 -0
  67. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/autograd/gradient-notes.md +0 -0
  68. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/autograd/overview.md +0 -0
  69. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/core/broadcasting.md +0 -0
  70. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/core/math-and-statistics.md +0 -0
  71. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/core/native-cpp-core.md +0 -0
  72. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/core/tensors.md +0 -0
  73. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/data/dataloader-patterns.md +0 -0
  74. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/data/dataset-creation.md +0 -0
  75. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/data/datasets-and-dataloaders.md +0 -0
  76. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/data/tensor-datasets.md +0 -0
  77. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/development/contributing.md +0 -0
  78. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/development/cpp-first.md +0 -0
  79. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/ecosystem/distributed-and-onnx-runtime.md +0 -0
  80. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/getting-started/installation.md +0 -0
  81. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/getting-started/quickstart.md +0 -0
  82. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/getting-started/source-build.md +0 -0
  83. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/graph/profiling-and-memory.md +0 -0
  84. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/graph/serialization-and-optimization.md +0 -0
  85. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/graph/tracing.md +0 -0
  86. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/backend-benchmarks.md +0 -0
  87. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/cpu-backend.md +0 -0
  88. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/cuda.md +0 -0
  89. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/device-api.md +0 -0
  90. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/linux.md +0 -0
  91. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/macos.md +0 -0
  92. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/metal.md +0 -0
  93. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/hardware/windows.md +0 -0
  94. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/metadata.md +0 -0
  95. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/onnx-import.md +0 -0
  96. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/safetensors.md +0 -0
  97. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/serialization.md +0 -0
  98. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/interchange/trusted-serialization.md +0 -0
  99. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/nn/initializers.md +0 -0
  100. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/nn/losses-and-summary.md +0 -0
  101. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/nn/modules.md +0 -0
  102. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/nn/optimizers.md +0 -0
  103. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/nn/overview.md +0 -0
  104. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/nn/training.md +0 -0
  105. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/performance/benchmarks.md +0 -0
  106. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/performance/optimization.md +0 -0
  107. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/performance/profiling.md +0 -0
  108. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/project/checkpoints.md +0 -0
  109. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/project/configs-and-templates.md +0 -0
  110. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/project/metrics.md +0 -0
  111. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/project/project-layout.md +0 -0
  112. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/project/trainer-and-callbacks.md +0 -0
  113. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/project/workflows.md +0 -0
  114. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/release/checklist.md +0 -0
  115. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/release/platform-compatibility.md +0 -0
  116. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/roadmap/milestones.md +0 -0
  117. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/roadmap/priorities.md +0 -0
  118. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/vision/dataset-creation.md +0 -0
  119. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/vision/detection.md +0 -0
  120. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/vision/models-and-visualization.md +0 -0
  121. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/vision/overview.md +0 -0
  122. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/vision/segmentation.md +0 -0
  123. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/docs/vision/transforms.md +0 -0
  124. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/basic_tensor_ops.py +0 -0
  125. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/ecosystem_features.py +0 -0
  126. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/export_onnx.py +0 -0
  127. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/graph_runtime.py +0 -0
  128. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/image_folder_classification.py +0 -0
  129. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/linear_regression.py +0 -0
  130. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/project_training.py +0 -0
  131. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/save_load_model.py +0 -0
  132. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/tiny_mlp.py +0 -0
  133. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/examples/vision_classifier.py +0 -0
  134. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/autograd.hpp +0 -0
  135. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/device.hpp +0 -0
  136. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/dtype.hpp +0 -0
  137. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/errors.hpp +0 -0
  138. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/module.hpp +0 -0
  139. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/ops.hpp +0 -0
  140. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/optim.hpp +0 -0
  141. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/perf.hpp +0 -0
  142. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/random.hpp +0 -0
  143. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/serialization.hpp +0 -0
  144. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/shape.hpp +0 -0
  145. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/storage.hpp +0 -0
  146. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/include/tensorstudio/tensor.hpp +0 -0
  147. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/mkdocs.yml +0 -0
  148. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/_C.pyi +0 -0
  149. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/autograd.py +0 -0
  150. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/data/dataloader.py +0 -0
  151. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/data/dataset.py +0 -0
  152. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/data/factories.py +0 -0
  153. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/data/public_formats.py +0 -0
  154. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/data/splitting.py +0 -0
  155. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/dtypes.py +0 -0
  156. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/errors.py +0 -0
  157. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/grad_mode.py +0 -0
  158. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/graph/__init__.py +0 -0
  159. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/graph/core.py +0 -0
  160. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/hardware.py +0 -0
  161. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/kernels.py +0 -0
  162. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/math.py +0 -0
  163. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/metrics/__init__.py +0 -0
  164. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/metrics/classification.py +0 -0
  165. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/metrics/multilabel.py +0 -0
  166. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/metrics/regression.py +0 -0
  167. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/model_zoo.py +0 -0
  168. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/nn/functional.py +0 -0
  169. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/nn/init.py +0 -0
  170. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/nn/language.py +0 -0
  171. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/nn/losses.py +0 -0
  172. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/nn/modules.py +0 -0
  173. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/nn/summary.py +0 -0
  174. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/ops.py +0 -0
  175. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/optim/__init__.py +0 -0
  176. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/optim/adam.py +0 -0
  177. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/optim/adamw.py +0 -0
  178. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/optim/lr_scheduler.py +0 -0
  179. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/optim/sgd.py +0 -0
  180. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/optim/utils.py +0 -0
  181. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/performance.py +0 -0
  182. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/project/__init__.py +0 -0
  183. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/project/callbacks.py +0 -0
  184. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/project/checkpoint.py +0 -0
  185. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/project/config.py +0 -0
  186. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/project/seed.py +0 -0
  187. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/project/templates.py +0 -0
  188. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/project/trainer.py +0 -0
  189. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/py.typed +0 -0
  190. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/serialization.py +0 -0
  191. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/typing.py +0 -0
  192. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/__init__.py +0 -0
  193. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/datasets.py +0 -0
  194. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/detection.py +0 -0
  195. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/io.py +0 -0
  196. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/metrics.py +0 -0
  197. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/models.py +0 -0
  198. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/segmentation.py +0 -0
  199. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/transforms.py +0 -0
  200. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/python/tensorstudio/vision/visualization.py +0 -0
  201. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/bindings/bind_autograd.cpp +0 -0
  202. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/bindings/bind_nn.cpp +0 -0
  203. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/bindings/bind_ops.cpp +0 -0
  204. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/bindings/bind_optim.cpp +0 -0
  205. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/bindings/bind_tensor.cpp +0 -0
  206. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/bindings/bindings.cpp +0 -0
  207. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/bindings/bindings.hpp +0 -0
  208. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/autograd.cpp +0 -0
  209. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/device.cpp +0 -0
  210. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/dtype.cpp +0 -0
  211. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/errors.cpp +0 -0
  212. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/module.cpp +0 -0
  213. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/ops.cpp +0 -0
  214. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/optim.cpp +0 -0
  215. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/perf.cpp +0 -0
  216. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/random.cpp +0 -0
  217. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/serialization.cpp +0 -0
  218. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/shape.cpp +0 -0
  219. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/storage.cpp +0 -0
  220. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/src/core/tensor.cpp +0 -0
  221. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/test_all.py +0 -0
  222. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_autograd.py +0 -0
  223. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_autograd_hardening.py +0 -0
  224. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_benchmark_report.py +0 -0
  225. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_broadcasting.py +0 -0
  226. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_core_math_expansion.py +0 -0
  227. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_data.py +0 -0
  228. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_ecosystem.py +0 -0
  229. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_errors.py +0 -0
  230. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_graph.py +0 -0
  231. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_hardware.py +0 -0
  232. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_indexing.py +0 -0
  233. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_interchange.py +0 -0
  234. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_nn.py +0 -0
  235. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_nn_building_blocks.py +0 -0
  236. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_numpy_interop.py +0 -0
  237. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_ops.py +0 -0
  238. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_optim.py +0 -0
  239. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_performance.py +0 -0
  240. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_project.py +0 -0
  241. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_serialization.py +0 -0
  242. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_tensor.py +0 -0
  243. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_training_workflows.py +0 -0
  244. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_views.py +0 -0
  245. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_vision.py +0 -0
  246. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tests/test_vision_depth.py +0 -0
  247. {tensorstudio-1.16.0 → tensorstudio-2.0.0}/tools/verify_artifacts.py +0 -0
@@ -2,6 +2,21 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 2.0.0 - 2026-07-08
6
+
7
+ - Added a tested v2 foundation slice from the remaining roadmap while keeping
8
+ accelerator and production-distributed limitations explicit.
9
+ - Added dataset manifests, SHA-256 file checksums, manifest validation, and a
10
+ small map-style dataset cache wrapper.
11
+ - Added compact attention APIs: `scaled_dot_product_attention`,
12
+ `MultiHeadSelfAttention`, and `TransformerEncoderBlock`.
13
+ - Added experimental CSR sparse tensors, dense/COO conversion helpers, and
14
+ CSR sparse-dense matmul.
15
+ - Added quantization calibration helpers and quantization error reporting.
16
+ - Added CPU `from_dlpack()` import for DLPack-compatible providers via NumPy.
17
+ - Added ONNX Runtime provider discovery and compatibility diagnostics.
18
+ - Reworked the roadmap to show remaining work only.
19
+
5
20
  ## 1.16.0 - 2026-07-07
6
21
 
7
22
  - Completed the Ecosystem And Advanced Features roadmap batch as supported
@@ -1,6 +1,6 @@
1
1
  cmake_minimum_required(VERSION 3.18)
2
2
 
3
- project(tensorstudio VERSION 1.16.0 LANGUAGES CXX)
3
+ project(tensorstudio VERSION 2.0.0 LANGUAGES CXX)
4
4
 
5
5
  find_package(Python COMPONENTS Interpreter Development.Module REQUIRED)
6
6
  set(PYBIND11_FINDPYTHON ON)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: tensorstudio
3
- Version: 1.16.0
3
+ Version: 2.0.0
4
4
  Summary: TensorStudio is a compact C++ tensor and autograd engine with a Python API for learning, experimentation, and lightweight ML workloads.
5
5
  Keywords: tensor,autograd,machine-learning,cpp,pybind11
6
6
  Author: TensorStudio contributors
@@ -84,7 +84,7 @@ Description-Content-Type: text/markdown
84
84
  TensorStudio is a compact C++ tensor and autograd engine with a Python API for
85
85
  learning, experimentation, and lightweight ML workloads.
86
86
 
87
- TensorStudio `1.16.0` is a CPU-only stable API foundation with native C++
87
+ TensorStudio `2.0.0` is a CPU-only stable API foundation with native C++
88
88
  threading, storage reuse, SIMD-friendly typed kernels, and optional
89
89
  CBLAS/Accelerate matrix multiplication when available. It adds native stable
90
90
  softmax/logsumexp, batched matrix multiplication, statistical reductions,
@@ -105,7 +105,10 @@ optimization, eager-backed graph execution, profiling hooks, and memory-plan
105
105
  metadata. The ecosystem layer adds experimental COO sparse tensors, public
106
106
  dataset format readers, tiny model-zoo factories, language-model helpers,
107
107
  quantization research utilities, a custom-kernel registry, single-process
108
- distributed planning helpers, and an optional ONNX Runtime adapter.
108
+ distributed planning helpers, and an optional ONNX Runtime adapter. The v2
109
+ foundation adds dataset manifests/checksums, a small dataset cache wrapper, CSR
110
+ sparse matrices, compact attention/Transformer encoder blocks, quantization
111
+ calibration, CPU DLPack import, and ONNX Runtime provider diagnostics.
109
112
  It is eager-first, intentionally compact, and not a replacement for mature ML
110
113
  frameworks.
111
114
 
@@ -492,7 +495,7 @@ print(loaded.run(x).item())
492
495
 
493
496
  ## Ecosystem Utilities
494
497
 
495
- TensorStudio `1.16.0` rounds out the late-roadmap ecosystem layer without
498
+ TensorStudio `2.0.0` expands the late-roadmap ecosystem layer without
496
499
  pretending to be a production-scale distributed or accelerator runtime.
497
500
 
498
501
  ```python
@@ -521,6 +524,20 @@ ts.unregister_kernel("double")
521
524
  print(ts.distributed.data_parallel_plan(dataset_size=10, batch_size=4))
522
525
  ```
523
526
 
527
+ ```python
528
+ manifest = ts.data.build_dataset_manifest("data")
529
+ print(manifest.validate())
530
+
531
+ csr = ts.csr_from_dense(ts.tensor([[0.0, 2.0], [3.0, 0.0]]))
532
+ print((csr @ ts.ones((2, 1))).tolist())
533
+
534
+ attention = nn.MultiHeadSelfAttention(embed_dim=4, num_heads=2)
535
+ print(attention(ts.randn((1, 3, 4), seed=7), causal=True).shape)
536
+
537
+ stats = ts.quantization.calibrate_tensor(ts.tensor([-1.0, 0.0, 2.0]))
538
+ print(stats.to_dict())
539
+ ```
540
+
524
541
  For ONNX files, TensorStudio has two paths:
525
542
 
526
543
  - `ts.import_onnx()` imports and executes a constrained static subset through
@@ -528,6 +545,8 @@ For ONNX files, TensorStudio has two paths:
528
545
  - `ts.run_onnx()` can delegate to the optional `onnxruntime` package when
529
546
  installed with `tensorstudio[onnxruntime]`; otherwise it can fall back to the
530
547
  supported TensorStudio importer for compatible graphs.
548
+ - `ts.check_onnxruntime_compatibility()` and
549
+ `ts.onnxruntime_available_providers()` report runtime/provider availability.
531
550
 
532
551
  ## Performance
533
552
 
@@ -559,12 +578,11 @@ Run the loose local regression thresholds with:
559
578
  python benchmark_all.py --check-thresholds
560
579
  ```
561
580
 
562
- On one Windows CPython 3.10 development run reporting `1.16.0`, with
581
+ On one Windows CPython 3.10 development run reporting `2.0.0`, with
563
582
  TensorStudio threads enabled, storage pooling enabled, SSE2 autovectorization
564
- reported, and no BLAS provider found, TensorStudio beat NumPy on 6 local
565
583
  reported, and no BLAS provider found, TensorStudio beat NumPy on 7 local
566
584
  benchmark cases and lost on 96 NumPy-comparable cases. JAX CPU dispatch was
567
- available on that machine; TensorStudio won 48 local cases and lost 50. The
585
+ available on that machine; TensorStudio won 45 local cases and lost 53. The
568
586
  strongest local wins were the simple NumPy convolution/pooling reference loops
569
587
  and some small JAX-dispatch-heavy eager cases. NumPy and JAX were faster for
570
588
  many elementwise, reduction, matrix multiplication, larger activation, and
@@ -576,15 +594,15 @@ Snapshot from that local run:
576
594
 
577
595
  | operation | shape | TensorStudio | NumPy | JAX CPU dispatch | TS vs NumPy | TS vs JAX |
578
596
  |---|---:|---:|---:|---:|---:|---:|
579
- | `sigmoid` | `(32,)` | 0.0154 ms | 0.0044 ms | 0.0742 ms | 0.2895x | 4.8297x |
580
- | `mean` | `(32,)` | 0.0155 ms | 0.0082 ms | 0.0116 ms | 0.5273x | 0.7478x |
581
- | `sum_axis1` | `(16, 16)` | 0.0158 ms | 0.0030 ms | 0.0126 ms | 0.1928x | 0.7955x |
582
- | `chain_relu` | `(128,)` | 0.0852 ms | 0.0056 ms | 0.0926 ms | 0.0662x | 1.0874x |
583
- | `matmul` | `(256, 256)` | 2.7970 ms | 0.4668 ms | 0.2540 ms | 0.1669x | 0.0908x |
584
- | `conv2d_3x3_padding1` | `(1, 1, 8, 8)` | 0.1938 ms | 1.2695 ms | 0.1002 ms | 6.5522x | 0.5171x |
585
- | `max_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0282 ms | 0.1632 ms | n/a | 5.7866x | n/a |
586
- | `avg_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0277 ms | 0.5474 ms | n/a | 19.7400x | n/a |
587
- | `elementwise_backward` | `(1024,)` | 2.7217 ms | n/a | n/a | n/a | n/a |
597
+ | `sigmoid` | `(32,)` | 0.0221 ms | 0.0068 ms | 0.1092 ms | 0.3106x | 4.9529x |
598
+ | `mean` | `(32,)` | 0.0256 ms | 0.0129 ms | 0.0210 ms | 0.5052x | 0.8221x |
599
+ | `sum_axis1` | `(16, 16)` | 0.0290 ms | 0.0034 ms | 0.0187 ms | 0.1170x | 0.6453x |
600
+ | `chain_relu` | `(128,)` | 0.1596 ms | 0.0099 ms | 0.1898 ms | 0.0621x | 1.1892x |
601
+ | `matmul` | `(256, 256)` | 3.6061 ms | 0.5097 ms | 0.3583 ms | 0.1413x | 0.0994x |
602
+ | `conv2d_3x3_padding1` | `(1, 1, 8, 8)` | 0.2448 ms | 1.9636 ms | 0.1606 ms | 8.0224x | 0.6561x |
603
+ | `max_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0392 ms | 0.3468 ms | n/a | 8.8440x | n/a |
604
+ | `avg_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0460 ms | 1.0295 ms | n/a | 22.4030x | n/a |
605
+ | `elementwise_backward` | `(1024,)` | 4.1790 ms | n/a | n/a | n/a | n/a |
588
606
 
589
607
  Speedup is `competitor median / TensorStudio median`, so values above `1.0x`
590
608
  favor TensorStudio.
@@ -7,7 +7,7 @@
7
7
  TensorStudio is a compact C++ tensor and autograd engine with a Python API for
8
8
  learning, experimentation, and lightweight ML workloads.
9
9
 
10
- TensorStudio `1.16.0` is a CPU-only stable API foundation with native C++
10
+ TensorStudio `2.0.0` is a CPU-only stable API foundation with native C++
11
11
  threading, storage reuse, SIMD-friendly typed kernels, and optional
12
12
  CBLAS/Accelerate matrix multiplication when available. It adds native stable
13
13
  softmax/logsumexp, batched matrix multiplication, statistical reductions,
@@ -28,7 +28,10 @@ optimization, eager-backed graph execution, profiling hooks, and memory-plan
28
28
  metadata. The ecosystem layer adds experimental COO sparse tensors, public
29
29
  dataset format readers, tiny model-zoo factories, language-model helpers,
30
30
  quantization research utilities, a custom-kernel registry, single-process
31
- distributed planning helpers, and an optional ONNX Runtime adapter.
31
+ distributed planning helpers, and an optional ONNX Runtime adapter. The v2
32
+ foundation adds dataset manifests/checksums, a small dataset cache wrapper, CSR
33
+ sparse matrices, compact attention/Transformer encoder blocks, quantization
34
+ calibration, CPU DLPack import, and ONNX Runtime provider diagnostics.
32
35
  It is eager-first, intentionally compact, and not a replacement for mature ML
33
36
  frameworks.
34
37
 
@@ -415,7 +418,7 @@ print(loaded.run(x).item())
415
418
 
416
419
  ## Ecosystem Utilities
417
420
 
418
- TensorStudio `1.16.0` rounds out the late-roadmap ecosystem layer without
421
+ TensorStudio `2.0.0` expands the late-roadmap ecosystem layer without
419
422
  pretending to be a production-scale distributed or accelerator runtime.
420
423
 
421
424
  ```python
@@ -444,6 +447,20 @@ ts.unregister_kernel("double")
444
447
  print(ts.distributed.data_parallel_plan(dataset_size=10, batch_size=4))
445
448
  ```
446
449
 
450
+ ```python
451
+ manifest = ts.data.build_dataset_manifest("data")
452
+ print(manifest.validate())
453
+
454
+ csr = ts.csr_from_dense(ts.tensor([[0.0, 2.0], [3.0, 0.0]]))
455
+ print((csr @ ts.ones((2, 1))).tolist())
456
+
457
+ attention = nn.MultiHeadSelfAttention(embed_dim=4, num_heads=2)
458
+ print(attention(ts.randn((1, 3, 4), seed=7), causal=True).shape)
459
+
460
+ stats = ts.quantization.calibrate_tensor(ts.tensor([-1.0, 0.0, 2.0]))
461
+ print(stats.to_dict())
462
+ ```
463
+
447
464
  For ONNX files, TensorStudio has two paths:
448
465
 
449
466
  - `ts.import_onnx()` imports and executes a constrained static subset through
@@ -451,6 +468,8 @@ For ONNX files, TensorStudio has two paths:
451
468
  - `ts.run_onnx()` can delegate to the optional `onnxruntime` package when
452
469
  installed with `tensorstudio[onnxruntime]`; otherwise it can fall back to the
453
470
  supported TensorStudio importer for compatible graphs.
471
+ - `ts.check_onnxruntime_compatibility()` and
472
+ `ts.onnxruntime_available_providers()` report runtime/provider availability.
454
473
 
455
474
  ## Performance
456
475
 
@@ -482,12 +501,11 @@ Run the loose local regression thresholds with:
482
501
  python benchmark_all.py --check-thresholds
483
502
  ```
484
503
 
485
- On one Windows CPython 3.10 development run reporting `1.16.0`, with
504
+ On one Windows CPython 3.10 development run reporting `2.0.0`, with
486
505
  TensorStudio threads enabled, storage pooling enabled, SSE2 autovectorization
487
- reported, and no BLAS provider found, TensorStudio beat NumPy on 6 local
488
506
  reported, and no BLAS provider found, TensorStudio beat NumPy on 7 local
489
507
  benchmark cases and lost on 96 NumPy-comparable cases. JAX CPU dispatch was
490
- available on that machine; TensorStudio won 48 local cases and lost 50. The
508
+ available on that machine; TensorStudio won 45 local cases and lost 53. The
491
509
  strongest local wins were the simple NumPy convolution/pooling reference loops
492
510
  and some small JAX-dispatch-heavy eager cases. NumPy and JAX were faster for
493
511
  many elementwise, reduction, matrix multiplication, larger activation, and
@@ -499,15 +517,15 @@ Snapshot from that local run:
499
517
 
500
518
  | operation | shape | TensorStudio | NumPy | JAX CPU dispatch | TS vs NumPy | TS vs JAX |
501
519
  |---|---:|---:|---:|---:|---:|---:|
502
- | `sigmoid` | `(32,)` | 0.0154 ms | 0.0044 ms | 0.0742 ms | 0.2895x | 4.8297x |
503
- | `mean` | `(32,)` | 0.0155 ms | 0.0082 ms | 0.0116 ms | 0.5273x | 0.7478x |
504
- | `sum_axis1` | `(16, 16)` | 0.0158 ms | 0.0030 ms | 0.0126 ms | 0.1928x | 0.7955x |
505
- | `chain_relu` | `(128,)` | 0.0852 ms | 0.0056 ms | 0.0926 ms | 0.0662x | 1.0874x |
506
- | `matmul` | `(256, 256)` | 2.7970 ms | 0.4668 ms | 0.2540 ms | 0.1669x | 0.0908x |
507
- | `conv2d_3x3_padding1` | `(1, 1, 8, 8)` | 0.1938 ms | 1.2695 ms | 0.1002 ms | 6.5522x | 0.5171x |
508
- | `max_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0282 ms | 0.1632 ms | n/a | 5.7866x | n/a |
509
- | `avg_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0277 ms | 0.5474 ms | n/a | 19.7400x | n/a |
510
- | `elementwise_backward` | `(1024,)` | 2.7217 ms | n/a | n/a | n/a | n/a |
520
+ | `sigmoid` | `(32,)` | 0.0221 ms | 0.0068 ms | 0.1092 ms | 0.3106x | 4.9529x |
521
+ | `mean` | `(32,)` | 0.0256 ms | 0.0129 ms | 0.0210 ms | 0.5052x | 0.8221x |
522
+ | `sum_axis1` | `(16, 16)` | 0.0290 ms | 0.0034 ms | 0.0187 ms | 0.1170x | 0.6453x |
523
+ | `chain_relu` | `(128,)` | 0.1596 ms | 0.0099 ms | 0.1898 ms | 0.0621x | 1.1892x |
524
+ | `matmul` | `(256, 256)` | 3.6061 ms | 0.5097 ms | 0.3583 ms | 0.1413x | 0.0994x |
525
+ | `conv2d_3x3_padding1` | `(1, 1, 8, 8)` | 0.2448 ms | 1.9636 ms | 0.1606 ms | 8.0224x | 0.6561x |
526
+ | `max_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0392 ms | 0.3468 ms | n/a | 8.8440x | n/a |
527
+ | `avg_pool2d_2x2` | `(1, 1, 16, 16)` | 0.0460 ms | 1.0295 ms | n/a | 22.4030x | n/a |
528
+ | `elementwise_backward` | `(1024,)` | 4.1790 ms | n/a | n/a | n/a | n/a |
511
529
 
512
530
  Speedup is `competitor median / TensorStudio median`, so values above `1.0x`
513
531
  favor TensorStudio.