bench.c (7df4e597ea2cfd677e65730948153d5544986a10) | bench.c (208c4391204d25d9178fbc87f216daffad00cd15) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* Copyright (c) 2020 Facebook */ 3#define _GNU_SOURCE 4#include <argp.h> 5#include <linux/compiler.h> 6#include <sys/time.h> 7#include <sched.h> 8#include <fcntl.h> --- 482 unchanged lines hidden (view full) --- 491extern const struct bench bench_rename_kprobe; 492extern const struct bench bench_rename_kretprobe; 493extern const struct bench bench_rename_rawtp; 494extern const struct bench bench_rename_fentry; 495extern const struct bench bench_rename_fexit; 496 497/* pure counting benchmarks to establish theoretical lmits */ 498extern const struct bench bench_trig_usermode_count; | 1// SPDX-License-Identifier: GPL-2.0 2/* Copyright (c) 2020 Facebook */ 3#define _GNU_SOURCE 4#include <argp.h> 5#include <linux/compiler.h> 6#include <sys/time.h> 7#include <sched.h> 8#include <fcntl.h> --- 482 unchanged lines hidden (view full) --- 491extern const struct bench bench_rename_kprobe; 492extern const struct bench bench_rename_kretprobe; 493extern const struct bench bench_rename_rawtp; 494extern const struct bench bench_rename_fentry; 495extern const struct bench bench_rename_fexit; 496 497/* pure counting benchmarks to establish theoretical lmits */ 498extern const struct bench bench_trig_usermode_count; |
499extern const struct bench bench_trig_base; | 499extern const struct bench bench_trig_syscall_count; 500extern const struct bench bench_trig_kernel_count; |
500 | 501 |
501/* kernel-side syscall-triggered benchmarks */ 502extern const struct bench bench_trig_tp; 503extern const struct bench bench_trig_rawtp; | 502/* batched, staying mostly in-kernel benchmarks */ |
504extern const struct bench bench_trig_kprobe; 505extern const struct bench bench_trig_kretprobe; 506extern const struct bench bench_trig_kprobe_multi; 507extern const struct bench bench_trig_kretprobe_multi; 508extern const struct bench bench_trig_fentry; 509extern const struct bench bench_trig_fexit; | 503extern const struct bench bench_trig_kprobe; 504extern const struct bench bench_trig_kretprobe; 505extern const struct bench bench_trig_kprobe_multi; 506extern const struct bench bench_trig_kretprobe_multi; 507extern const struct bench bench_trig_fentry; 508extern const struct bench bench_trig_fexit; |
510extern const struct bench bench_trig_fentry_sleep; 511extern const struct bench bench_trig_fmodret; | |
512 | 509 |
513/* batched, staying mostly in-kernel benchmarks */ 514extern const struct bench bench_trig_kernel_count; 515extern const struct bench bench_trig_kprobe_batch; 516extern const struct bench bench_trig_kretprobe_batch; 517extern const struct bench bench_trig_kprobe_multi_batch; 518extern const struct bench bench_trig_kretprobe_multi_batch; 519extern const struct bench bench_trig_fentry_batch; 520extern const struct bench bench_trig_fexit_batch; 521 | |
522/* uprobe/uretprobe benchmarks */ 523extern const struct bench bench_trig_uprobe_nop; 524extern const struct bench bench_trig_uretprobe_nop; 525extern const struct bench bench_trig_uprobe_push; 526extern const struct bench bench_trig_uretprobe_push; 527extern const struct bench bench_trig_uprobe_ret; 528extern const struct bench bench_trig_uretprobe_ret; 529 --- 25 unchanged lines hidden (view full) --- 555 &bench_rename_kprobe, 556 &bench_rename_kretprobe, 557 &bench_rename_rawtp, 558 &bench_rename_fentry, 559 &bench_rename_fexit, 560 /* pure counting benchmarks for establishing theoretical limits */ 561 &bench_trig_usermode_count, 562 &bench_trig_kernel_count, | 510/* uprobe/uretprobe benchmarks */ 511extern const struct bench bench_trig_uprobe_nop; 512extern const struct bench bench_trig_uretprobe_nop; 513extern const struct bench bench_trig_uprobe_push; 514extern const struct bench bench_trig_uretprobe_push; 515extern const struct bench bench_trig_uprobe_ret; 516extern const struct bench bench_trig_uretprobe_ret; 517 --- 25 unchanged lines hidden (view full) --- 543 &bench_rename_kprobe, 544 &bench_rename_kretprobe, 545 &bench_rename_rawtp, 546 &bench_rename_fentry, 547 &bench_rename_fexit, 548 /* pure counting benchmarks for establishing theoretical limits */ 549 &bench_trig_usermode_count, 550 &bench_trig_kernel_count, |
563 /* syscall-driven triggering benchmarks */ 564 &bench_trig_tp, 565 &bench_trig_rawtp, | 551 &bench_trig_syscall_count, 552 /* batched, staying mostly in-kernel triggers */ |
566 &bench_trig_kprobe, 567 &bench_trig_kretprobe, 568 &bench_trig_kprobe_multi, 569 &bench_trig_kretprobe_multi, 570 &bench_trig_fentry, 571 &bench_trig_fexit, | 553 &bench_trig_kprobe, 554 &bench_trig_kretprobe, 555 &bench_trig_kprobe_multi, 556 &bench_trig_kretprobe_multi, 557 &bench_trig_fentry, 558 &bench_trig_fexit, |
572 &bench_trig_fentry_sleep, 573 &bench_trig_fmodret, 574 /* batched, staying mostly in-kernel triggers */ 575 &bench_trig_kprobe_batch, 576 &bench_trig_kretprobe_batch, 577 &bench_trig_kprobe_multi_batch, 578 &bench_trig_kretprobe_multi_batch, 579 &bench_trig_fentry_batch, 580 &bench_trig_fexit_batch, | |
581 /* uprobes */ 582 &bench_trig_uprobe_nop, 583 &bench_trig_uretprobe_nop, 584 &bench_trig_uprobe_push, 585 &bench_trig_uretprobe_push, 586 &bench_trig_uprobe_ret, 587 &bench_trig_uretprobe_ret, 588 /* ringbuf/perfbuf benchmarks */ --- 157 unchanged lines hidden --- | 559 /* uprobes */ 560 &bench_trig_uprobe_nop, 561 &bench_trig_uretprobe_nop, 562 &bench_trig_uprobe_push, 563 &bench_trig_uretprobe_push, 564 &bench_trig_uprobe_ret, 565 &bench_trig_uretprobe_ret, 566 /* ringbuf/perfbuf benchmarks */ --- 157 unchanged lines hidden --- |