Commit Graph

10 Commits

Author SHA1 Message Date
yutianyu c8ad11c277 refactor: unify elementwise runtime helpers 2026-05-12 16:23:06 +08:00
yutianyu 9271fed062 feat: add reusable elementwise relu support 2026-05-12 11:30:19 +08:00
yutianyu 757dbbec74 refactor: split operator headers into public and detail layers 2026-05-08 11:18:47 +08:00
yutianyu 6e02c3eb55 feat: add MACA-based MetaX backend support
Co-authored-by: wawahejun <hejunlbbc@gmail.com>
2026-05-08 09:49:13 +08:00
yutianyu 9147a4821d feat: add kernel-focused benchmark timing harness
Co-authored-by: wawahejun <hejunlbbc@gmail.com>
2026-05-05 16:50:18 +08:00
yutianyu dcf4d25896 refactor: split runtime internals and testing package
Co-authored-by: wawahejun <hejunlbbc@gmail.com>
2026-05-05 16:50:18 +08:00
yutianyu aec1073394 refactor: restructure Python package layout
Group modules by responsibility:

- _runtime/: internal C ABI layer (loader, ctypes_bindings,
  prepared, tensor_view); underscore prefix signals non-public API
- testing/: test utilities split by concern (assertions, benchmark,
  profiler) instead of mixed in top-level files
- ops/__init__.py: per-operator registration; adding a new operator
  only requires one line here, not touching the top-level __init__
- operator_runtime/__init__.py: thin gateway that re-exports from ops/

External import paths for tests are unchanged:
operator_runtime.testing still exports require_cuda, assert_close,
cuda_time_ms, PerformanceResult

Co-authored-by: wawahejun <hejunlbbc@gmail.com>
2026-05-05 16:50:18 +08:00
yutianyu fa2608e9b6 build: remove YAML-driven operator registration
Replace the YAML manifest + Python code-generation pipeline with
CMake file(GLOB_RECURSE) auto-discovery. Operators are now registered
by directory convention (ops/<name>/nvidia/*.cu) rather than by
declaring sources and symbols in operator.yaml.

Deleted: ops/*/operator.yaml, cmake/GenerateOperators.cmake,
tools/generate_operator_artifacts.py, tools/operator_schema.yaml,
tools/validate_operator_manifest.py, operator_registry.py,
tests/test_manifest_contract.py

Modified: ops/CMakeLists.txt uses GLOB_RECURSE, requirements.txt
drops pyyaml

Co-authored-by: wawahejun <hejunlbbc@gmail.com>
2026-05-05 16:50:18 +08:00
yutianyu 347421d28b refactor: reorganize operator benchmarks
Co-authored-by: wawahejun <hejunlbbc@gmail.com>
2026-05-05 16:50:18 +08:00
yutianyu ce30e4b195 feat: scaffold operator runtime backends
Co-authored-by: wawahejun <hejunlbbc@gmail.com>
2026-05-05 16:50:18 +08:00