MCPcopy Create free account
hub / github.com/evilsocket/cake / cache_process_kv

Function cache_process_kv

cake-core/benches/bench_cache.rs:35–46  ·  view source on GitHub ↗
(bencher: divan::Bencher, seq_len: usize)

Source from the content-addressed store, hash-verified

33
34#[divan::bench(args = [1, 8, 32])]
35fn cache_process_kv(bencher: divan::Bencher, seq_len: usize) {
36 let cfg = test_config();
37 let head_dim = cfg.hidden_size / cfg.num_attention_heads;
38 // k, v shape: (batch=1, num_kv_heads, seq_len, head_dim)
39 let k = make_tensor(&[1, cfg.num_key_value_heads, seq_len, head_dim], 10);
40 let v = make_tensor(&[1, cfg.num_key_value_heads, seq_len, head_dim], 11);
41
42 bencher.bench_local(move || {
43 let mut cache = make_cache(&cfg);
44 cache.process_kv(0, k.clone(), v.clone()).unwrap()
45 });
46}
47
48#[divan::bench(args = [1, 8, 32])]
49fn cache_process_kv_windowed(bencher: divan::Bencher, seq_len: usize) {

Callers

nothing calls this directly

Calls 5

process_kvMethod · 0.80
test_configFunction · 0.70
make_tensorFunction · 0.70
make_cacheFunction · 0.70
cloneMethod · 0.45

Tested by

no test coverage detected