Skip to main content

Command Line Interface

Neutrino envisions Command-Line(CLI) as the user entry with interfaces similar to strace, bpftrace, valgrind, etc.

Fundamental CLI of Neutrino is neutrino -p [probe] <program>, like:

  • neutrino -p <probe> python train.py for PyTorch/Triton/JAX codes
  • neutrino -p <probe> ./main for compiled CUDA C++ code.

<probe> shall be the path to probes in .toml or .py of DSL. Relative path will be resovled by taking Neutrino installation directory as root.

Moreover, neutrino provide more CLI options:

  • --tracedir TRACEDIR: specifying parent folder of traces (default: ./trace)
  • --driver DRIVER: path to the real cuda/hip driver shared library. The default value will be dynamically resolved in installing neutrino.
  • --python PYTHON: path to python executable used. The default value will be dynamically resolved in installing neutrino.
  • --filter FILTER: filter OUT buggy kernels by (part of) name, split by : (default: None)
  • --kernel KERNEL: filter the kernel by (part of) name, split by : (default: None)
  • --memusage: prevent the profiling and only measure the memory usage, helpful to prevent OOM in profiling (default: False)
  • --benchmark: enable benchmark mode to evaluate overhead w.r.t. the original kernel (default: False)