model-as-a-kernel / torch-ext /torch_binding.h
phanerozoic's picture
batched decode; batch-invariance gates
2035283 verified
Raw
History Blame
928 Bytes
#pragma once
#include <torch/torch.h>
void mak_run(at::Tensor prog, at::Tensor barrier, int64_t pos,
int64_t step_slot, int64_t max_k);
void mak_run_steps(at::Tensor prog, at::Tensor barrier, int64_t pos0,
int64_t steps, int64_t slot0, int64_t max_k);
void mak_run_seq(at::Tensor prog, at::Tensor barrier, int64_t pos0,
int64_t steps, int64_t slot0, int64_t prompt_len,
int64_t max_k, int64_t chunk_m);
at::Tensor mak_run_phased(at::Tensor prog, int64_t pos, int64_t step_slot,
bool timed, int64_t max_k);
void mak_run_batch(at::Tensor prog, at::Tensor barrier, at::Tensor pos_b,
int64_t steps, int64_t slot0, int64_t max_k,
int64_t kv_bstride, int64_t stage_elems);
int64_t mak_num_blocks(at::Tensor prog, int64_t max_k);
int64_t mak_batch_maxb();
double mak_bw_per_sm(at::Tensor probe);