Skip to content

Commit f131edd

Browse files
author
yimingx
committed
feat: bst impl
1 parent fa6809b commit f131edd

6 files changed

Lines changed: 150687 additions & 42 deletions

File tree

test/evaluation/km/call.h

Lines changed: 0 additions & 1 deletion
This file was deleted.

test/evaluation/km/llbench_bpf.c

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -131,47 +131,6 @@ int init_ll(void *ctx) {
131131
bpf_printk("insert: %ld\n", endtime - starttime);
132132
bpf_printk("head: %u\n", head);
133133

134-
// Lookup
135-
136-
// __u64 curr = head;
137-
// // long iter = 0;
138-
// starttime = bpf_ktime_get_ns();
139-
// for (int i = 0; i < 1024; ++i) {
140-
// // bpf_printk("curr: %u\n", curr);
141-
// if (curr > HEAP_SIZE - 100) {
142-
// break;
143-
// }
144-
// struct test_struct *ts = (struct test_struct *)(data_ptr + curr);
145-
// if (ts->a == 11111) {
146-
// // NOT POSSIBLE
147-
// return 0;
148-
// }
149-
// curr = ts->next;
150-
// // bpf_printk("value: %d\n", ts->a);
151-
// // iter++;
152-
// }
153-
// bpf_printk("last curr: %llu\n", curr);
154-
// endtime = bpf_ktime_get_ns();
155-
// bpf_printk("lookup: %ld\n", endtime - starttime);
156-
157-
// Delete
158-
159-
// curr = head;
160-
// long iter = 0;
161-
// starttime = bpf_ktime_get_ns();
162-
// for (int i = 0; i < 1024; ++i) {
163-
// if (curr > HEAP_SIZE - 100) {
164-
// break;
165-
// }
166-
// struct test_struct *ts = (struct test_struct *)(data_ptr + curr);
167-
// head = ts->next;
168-
// free(curr);
169-
// curr = head;
170-
// }
171-
// endtime = bpf_ktime_get_ns();
172-
// bpf_printk("tottime3: %ld\n", endtime - starttime);
173-
// bpf_printk("last curr: %llu\n", curr);
174-
175134
return 0;
176135
}
177136

test/evaluation/kmbst/Makefile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
2+
bst.o: bst_bpf.c
3+
clang -O2 -I/usr/include/$(shell uname -m)-linux-gnu -target bpf -g -c $< -o bst.o
4+
5+
cleanobj:
6+
rm -f bst.o
7+
sudo rm -f /sys/fs/bpf/bst
8+
9+
autoattach: cleanobj bst.o
10+
sudo bpftool prog load bst.o /sys/fs/bpf/bst autoattach
11+
12+
clean:
13+
$(MAKE) -C $(KDIR) M=$(PWD) clean
14+
15+
log:
16+
sudo cat /sys/kernel/debug/tracing/trace_pipe
17+
18+
loader: loader.c
19+
clang -O2 loader.c -lbpf -o loader
20+
21+
.PHONY: clean cleanobj log

0 commit comments

Comments
 (0)