 Understanding Ruby with BPF - rbperfoverhead - Continuous profiling - No modifications of the tracee rbperf rbperf - Profile Ruby programs rbperf - Profile Ruby programs - Trace complex Ruby programs execution rbperf – on-CPU profiling profiling - $ rbperf record --pid=124 cpu - $ rbperf report [...] rbperf – Rails on-CPU profile rbperf – tracing write(2) calls - $ rbperf record \ --pid=124 event \ --tracepoint=syscalls:sys_enter_write syscall, etc) BPF code (bpf/rbperf.c) Read frame Driver (rbperf.py) 1. Adds info (pid to profile, thread address) 3. Receives stacktrace 4. Serialisation and persistence BPF tail-calls Bounded0 码力 | 19 页 | 972.07 KB | 1 年前3 Understanding Ruby with BPF - rbperfoverhead - Continuous profiling - No modifications of the tracee rbperf rbperf - Profile Ruby programs rbperf - Profile Ruby programs - Trace complex Ruby programs execution rbperf – on-CPU profiling profiling - $ rbperf record --pid=124 cpu - $ rbperf report [...] rbperf – Rails on-CPU profile rbperf – tracing write(2) calls - $ rbperf record \ --pid=124 event \ --tracepoint=syscalls:sys_enter_write syscall, etc) BPF code (bpf/rbperf.c) Read frame Driver (rbperf.py) 1. Adds info (pid to profile, thread address) 3. Receives stacktrace 4. Serialisation and persistence BPF tail-calls Bounded0 码力 | 19 页 | 972.07 KB | 1 年前3
 How and When You
Should Measure CPU
Overhead of eBPF
ProgramsShould Measure CPU Overhead of eBPF Programs Bryce Kahle, Datadog October 28, 2020 Why should I profile eBPF programs? CI variance tracking Tools kernel.bpf_stats_enabled kernel.bpf_stats_enabled sysctl FD-based alternative to sysctl Handles multiple concurrent profilers bpftool prog profile bpftool prog profile – Added in kernel v5.7 – Uses hardware perf counters – Available metrics: – cycles0 码力 | 20 页 | 2.04 MB | 1 年前3 How and When You
Should Measure CPU
Overhead of eBPF
ProgramsShould Measure CPU Overhead of eBPF Programs Bryce Kahle, Datadog October 28, 2020 Why should I profile eBPF programs? CI variance tracking Tools kernel.bpf_stats_enabled kernel.bpf_stats_enabled sysctl FD-based alternative to sysctl Handles multiple concurrent profilers bpftool prog profile bpftool prog profile – Added in kernel v5.7 – Uses hardware perf counters – Available metrics: – cycles0 码力 | 20 页 | 2.04 MB | 1 年前3
 Cilium v1.11 DocumentationINFO Consuming Common Manifests from target directory INFO Credentials loaded from the "default" profile in file "/home/twp/.aws/credentials" INFO Creating infrastructure resources... INFO Waiting up to Istio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically that is, network-latency and network-throughput, for example. To enable the former, run: tuned-adm profile network-latency Set CPU governor to performance The CPU scaling up and down can impact latency0 码力 | 1373 页 | 19.37 MB | 1 年前3 Cilium v1.11 DocumentationINFO Consuming Common Manifests from target directory INFO Credentials loaded from the "default" profile in file "/home/twp/.aws/credentials" INFO Creating infrastructure resources... INFO Waiting up to Istio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically that is, network-latency and network-throughput, for example. To enable the former, run: tuned-adm profile network-latency Set CPU governor to performance The CPU scaling up and down can impact latency0 码力 | 1373 页 | 19.37 MB | 1 年前3
 bpfbox: Simple Precise
Process Confinement
with eBPF and KRSIrules only within a call to foo() ▶ #[kfunc " foo" ] → Same thing, but for kernel functions #! [ profile "/sbin/mylogin"] #[ func " check_password "] #[ allow] { fs("/etc/passwd", read) fs("/etc/shadow"0 码力 | 8 页 | 528.12 KB | 1 年前3 bpfbox: Simple Precise
Process Confinement
with eBPF and KRSIrules only within a call to foo() ▶ #[kfunc " foo" ] → Same thing, but for kernel functions #! [ profile "/sbin/mylogin"] #[ func " check_password "] #[ allow] { fs("/etc/passwd", read) fs("/etc/shadow"0 码力 | 8 页 | 528.12 KB | 1 年前3
 Cilium v1.10 DocumentationINFO Consuming Common Manifests from target directory INFO Credentials loaded from the "default" profile in file "/home/twp/.aws/credentials" INFO Creating infrastructure resources... INFO Waiting up to Istio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically that is, network-latency and network-throughput, for example. To enable the former, run: tuned-adm profile network-latency Set CPU governor to performance The CPU scaling up and down can impact latency0 码力 | 1307 页 | 19.26 MB | 1 年前3 Cilium v1.10 DocumentationINFO Consuming Common Manifests from target directory INFO Credentials loaded from the "default" profile in file "/home/twp/.aws/credentials" INFO Creating infrastructure resources... INFO Waiting up to Istio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically that is, network-latency and network-throughput, for example. To enable the former, run: tuned-adm profile network-latency Set CPU governor to performance The CPU scaling up and down can impact latency0 码力 | 1307 页 | 19.26 MB | 1 年前3
 Cilium v1.7 Documentation17, and 1.18. Note that this does not work with K8s 1.13. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl manifest apply -y Add a namespace label to instruct Istio to directly from https://github.com/settings/tokens or by opening GitHub and then navigating to: User Profile -> Settings -> Developer Settings -> Personal access token -> Generate new token. 4. This guide .bash_profile cilium completion bash > ~/.cilium/completion.bash.inc printf " # Cilium shell completion source '$HOME/.cilium/completion.bash.inc' " >> $HOME/.bash_profile source0 码力 | 885 页 | 12.41 MB | 1 年前3 Cilium v1.7 Documentation17, and 1.18. Note that this does not work with K8s 1.13. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl manifest apply -y Add a namespace label to instruct Istio to directly from https://github.com/settings/tokens or by opening GitHub and then navigating to: User Profile -> Settings -> Developer Settings -> Personal access token -> Generate new token. 4. This guide .bash_profile cilium completion bash > ~/.cilium/completion.bash.inc printf " # Cilium shell completion source '$HOME/.cilium/completion.bash.inc' " >> $HOME/.bash_profile source0 码力 | 885 页 | 12.41 MB | 1 年前3
 Cilium v1.6 Documentation17, and 1.18. Note that this does not work with K8s 1.13. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl manifest apply -y Add a namespace label to instruct Istio to .bash_profile cilium completion bash > ~/.cilium/completion.bash.inc printf " # Cilium shell completion source '$HOME/.cilium/completion.bash.inc' " >> $HOME/.bash_profile source source $HOME/.bash_profile Options -h, --help help for completion Options inherited from parent commands --config string config file (default is $HOME/.cilium.yaml) -D, --debug Enable0 码力 | 734 页 | 11.45 MB | 1 年前3 Cilium v1.6 Documentation17, and 1.18. Note that this does not work with K8s 1.13. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl manifest apply -y Add a namespace label to instruct Istio to .bash_profile cilium completion bash > ~/.cilium/completion.bash.inc printf " # Cilium shell completion source '$HOME/.cilium/completion.bash.inc' " >> $HOME/.bash_profile source source $HOME/.bash_profile Options -h, --help help for completion Options inherited from parent commands --config string config file (default is $HOME/.cilium.yaml) -D, --debug Enable0 码力 | 734 页 | 11.45 MB | 1 年前3
 Cilium v1.8 DocumentationIstio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically CONFIG_PREEMPT_NONE=y dedicated to server workloads Use tuned [https://tuned-project.org/] with a network-latency profile Pin NIC interrupts to CPUs in a 1:1 mapping and stop irqbalance process This script [https://github directly from https://github.com/settings/tokens or by opening GitHub and then navigating to: User Profile -> Settings -> Developer Settings -> Personal access token -> Generate new token. 4. This guide0 码力 | 1124 页 | 21.33 MB | 1 年前3 Cilium v1.8 DocumentationIstio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically CONFIG_PREEMPT_NONE=y dedicated to server workloads Use tuned [https://tuned-project.org/] with a network-latency profile Pin NIC interrupts to CPUs in a 1:1 mapping and stop irqbalance process This script [https://github directly from https://github.com/settings/tokens or by opening GitHub and then navigating to: User Profile -> Settings -> Developer Settings -> Personal access token -> Generate new token. 4. This guide0 码力 | 1124 页 | 21.33 MB | 1 年前3
 Cilium v1.9 DocumentationIstio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically CONFIG_PREEMPT_NONE=y dedicated to server workloads Use tuned [https://tuned-project.org/] with a network-latency profile Pin NIC interrupts to CPUs in a 1:1 mapping and stop irqbalance process This script [https://github directly from https://github.com/settings/tokens or by opening GitHub and then navigating to: User Profile -> Settings -> Developer Settings -> Personal access token -> Generate new token. 2. The scripts0 码力 | 1263 页 | 18.62 MB | 1 年前3 Cilium v1.9 DocumentationIstio release does not work with Kubernetes 1.16 or older. Deploy the default Istio configuration profile onto Kubernetes: ./cilium-istioctl install -y Add a namespace label to instruct Istio to automatically CONFIG_PREEMPT_NONE=y dedicated to server workloads Use tuned [https://tuned-project.org/] with a network-latency profile Pin NIC interrupts to CPUs in a 1:1 mapping and stop irqbalance process This script [https://github directly from https://github.com/settings/tokens or by opening GitHub and then navigating to: User Profile -> Settings -> Developer Settings -> Personal access token -> Generate new token. 2. The scripts0 码力 | 1263 页 | 18.62 MB | 1 年前3
 Cilium v1.5 Documentationbash_profile cilium completion bash > ~/.cilium/completion.bash.inc printf " # Cilium shell completion source '$HOME/.cilium/completion.bash.inc' " >> $HOME/.bash_profile source $HOME/.bash_profile Options -h, --help help for completion Options inherited from parent commands --config string config file (default is $HOME/.cilium.yaml) -D, --debug0 码力 | 740 页 | 12.52 MB | 1 年前3 Cilium v1.5 Documentationbash_profile cilium completion bash > ~/.cilium/completion.bash.inc printf " # Cilium shell completion source '$HOME/.cilium/completion.bash.inc' " >> $HOME/.bash_profile source $HOME/.bash_profile Options -h, --help help for completion Options inherited from parent commands --config string config file (default is $HOME/.cilium.yaml) -D, --debug0 码力 | 740 页 | 12.52 MB | 1 年前3
共 10 条
- 1














