Initial project scaffold

This commit is contained in:
2026-04-10 13:22:19 +00:00
commit 7fa69b1354
94 changed files with 3964 additions and 0 deletions

32
bench/compare_impls.py Normal file
View File

@@ -0,0 +1,32 @@
from __future__ import annotations
import argparse
import subprocess
import sys
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
TASK_TO_SCRIPT = {
"vector_add": ROOT / "bench" / "bench_vector_add.py",
"softmax": ROOT / "bench" / "bench_softmax.py",
"matmul": ROOT / "bench" / "bench_matmul.py",
"attention": ROOT / "bench" / "bench_attention.py",
}
def main() -> None:
parser = argparse.ArgumentParser()
parser.add_argument("--task", choices=sorted(TASK_TO_SCRIPT), required=True)
parser.add_argument("extra_args", nargs="*")
args = parser.parse_args()
cmd = [sys.executable, str(TASK_TO_SCRIPT[args.task]), *args.extra_args]
subprocess.run(cmd, check=True)
if __name__ == "__main__":
main()