SlideShare a Scribd company logo
COSCUP 2016 –
Linux Kernel Tracing
Viller Hsiao <villerhsiao@gmail.com>
Aug. 21, 2016
02/09/2016 2
Who am I ?
Viller Hsiao
Embedded Linux / RTOS engineer
   http://image.dfdaily.com/
2012/5/4/6347169311287512
50504b050c1_nEO_IMG.jpg
02/09/2016 3
What's Tracing
https://www.tnooz.com/wp-content/uploads/2010/12/tripadvisor-facebook-rampup1.jpg
02/09/2016 4
What's Tracing
●
Famous way in C: printf()
   
    void myfunc(int type)
    {
            if (type > 20) {
                 /* do some things */
                 printf (“I like it goes here!n”);
            } else if (type < 100) {
                /* do other things */
                 printf (“But it goes here!n”);
           } else {
                /* error handling */
                 printf (“Oh! I hate it's here! Wrong type is %dn”, type);
           }        
    }
02/09/2016 5
What's tracing data used for?
Observe program behavior
02/09/2016 6
What's tracing data used for?
Observe program behavior
Debug program
02/09/2016 7
What's tracing data used for?
Observe program behavior
Debug program
Profile and get statistics
and so on
02/09/2016 8
Well­known tool in kernel: 
printk()
printk() is intuitive, but 
02/09/2016 9
Issue of printk()
High overhead
“using printk(), especially when writing to the serial 
console, may take several milliseconds per write.” ~ [1]
02/09/2016 10
Issue of printk()
High overhead
Lack of flexibility
02/09/2016 11
Topic today
Systematic tracing mechanisms in Linux kernel
How kernel exhausts compiler and CPU tricks to implement 
flexible and low overhead system tracing
02/09/2016 12
Tracing in Linux
Tracing Implementations
Tracing Frameworks
Frontend Toolsuser
Interface for userspace
kernel
02/09/2016 13
ftrace
02/09/2016 14
ftrace
●
Linux­2.6.27
●
Linux kernel internal tracer framework
– Function tracer
– Tracing data output
– Tracepoint
– hist triggers
02/09/2016 15
Function Tracer
  void Func ( … )
  {
      Line 1;
      Line 2;
      …
  }
  
  void Func ( … )
  {
      mcount (pc, ra);
      Line 1;
      Line 2;
      …
  }
gcc ­pg
Re­use gprof mechanism, then re­implement mcount()
02/09/2016 16
Function Tracer
  void Func ( … )
  {
      Line 1;
      Line 2;
      …
  }
  
  void Func ( … )
  {
      mcount (pc, ra);
      Line 1;
      Line 2;
      …
  }
gcc ­pg
Data recorded: function and its caller
02/09/2016 17
Dynamic Function Tracer
  
  void Func ( … )
  {
      nop;
      Line 1;
      Line 2;
      …
  }
  
  void Func ( … )
  {
      mcount (pc, ra);
      Line 1;
      Line 2;
      …
  }
Enabled
Disabled
02/09/2016 18
Tracing Data Output
●
trace_printk()
●
/sys/kernel/debug/tracing/
– tracefs (debugfs in the beginning)
“Writing into the ring buffer with trace_printk() only takes around a 
tenth of a microsecond or so” ~ [1]
02/09/2016 19
Example: Function Tracer
02/09/2016 20
Example: Function Graph Tracer
02/09/2016 21
Tracepoint
02/09/2016 22
Tracepoint
●
Linux­2.6.32
●
Define and insert hook in static point like 
printk()
02/09/2016 23
Tracepoint – Declare Event
   #include <linux/tracepoint.h>
  
    TRACE_EVENT(mm_page_allocation,
TP_PROTO(unsigned long pfn, unsigned long free),
TP_ARGS(pfn, free),
TP_STRUCT__entry(
__field(unsigned long, pfn)
__field(unsigned long, free)
),
TP_fast_assign(
__entry­>pfn = pfn;
__entry­>free = free;
),
TP_printk("pfn=%lx zone_free=%ld", __entry­>pfn, __entry­>free)
);
02/09/2016 24
Tracepoint – Probe Event
       . . .
        trace_mm_page_allocation(page_to_pfn(page),
     zone_page_state(zone, NR_FREE_PAGES));
        . . .
Data recorded: custom defined data
02/09/2016 25
Example: Tracepoint
02/09/2016 26
trace­cmd
  # trace­cmd record ­e 'sched_wakeup*' ­e sched_switch your­application
  
  # kernelshark
02/09/2016 27
Kernelshark
https://static.lwn.net/images/2011/ks-fail1-open.png
02/09/2016 28
hist triggers
●
Introduced in Linux­4.7
●
Create custom, efficient, in­kernel histograms
# echo 'hist:key=common_pid.execname:values=ret:sort=ret if ret >= 0' 
    > /sys/kernel/tracing/events/syscalls/sys_exit_read/trigger
02/09/2016 29
Example hist triggers Logs
# cat /sys/kernel/tracing/events/syscalls/sys_exit_read/hist
[...]
{ common_pid: bash [ 16608] } hitcount: 4 ret: 11722
{ common_pid: bash [ 16616] } hitcount: 4 ret: 12386
{ common_pid: bash [ 16617] } hitcount: 4 ret: 12469
{ common_pid: irqbalance [ 1189] } hitcount: 36 ret: 21702
{ common_pid: snmpd [ 1617] } hitcount: 75 ret: 22078
{ common_pid: sshd [ 32745] } hitcount: 329 ret: 165710
[...]
http://www.brendangregg.com/blog/2016-06-08/linux-hist-triggers.html
02/09/2016 30
Kprobe Family
02/09/2016 31
Kprobe
●
Linux­2.6.9
●
Write probe hooks in kernel module
kernel
user
register_kprobe()
Insert
kprobe module
pre()
post()
addr
02/09/2016 32
Kprobe
INST BREAK
register_kprobe()
address
sym + offset
02/09/2016 33
Kprobe
BREAKBREAK INST
pre_handler()
post_handler()
exception
address
save regs
restore regs
02/09/2016 34
Kprobe
BREAKBREAK INST
pre_handler(pt_regs)
post_handler(pt_regs)
exception
address
save regs
restore regs
Data recorded: CPU register values
02/09/2016 35
Kprobe Variants
Kernel
user
Kprobe
Kretprobe
Jprobe
Uprobe
02/09/2016 36
Uprobe
 echo 'p:myapp /bin/bash:0x4245c0' > /sys/kernel/tracing/uprobe_events
●
Linux­3.5
●
userspace breakpoints in kernel
02/09/2016 37
jprobe
data: probed function
arguments
02/09/2016 38
jprobe
http://pds19.egloos.com/pds/201008/02/35/c0098335_4c55a764e1689.png
02/09/2016 39
kretprobe
02/09/2016 40
kretprobe
http://cfile26.uf.tistory.com/image/1311D5455136D6AF3B7251
02/09/2016 41
Kprobe Overhead [7]
cycles per iteration
                AMD Athlon 1.7GH         Pentium III 860MHz
kprobe     0.99 us                            0.95 us
jprobe      0.82 us                            1.61 us
02/09/2016 42
Kprobe­based Event Tracing
# echo 'r:myretprobe do_sys_open $retval' >> /sys/kernel/tracing/kprobe_events
# echo 1 > /sys/kernel/tracing/events/kprobes/myretprobe/enable
# cat /sys/kernel/tracing/trace
# tracer: nop
#
#           TASK­PID   CPU#  ||||    TIMESTAMP  FUNCTION
#              | |       |   ||||       |         |
              sh­746   [000] d...   40.96: myretprobe: (SyS_open+0x2c/0x30 <­ do_sys_open) arg1=0x3
              sh­746   [000] d...   42.19: myretprobe: (SyS_open+0x2c/0x30 <­ do_sys_open) arg1=0x3
…..
02/09/2016 43
Utilities for Kprobe
●
tracefs files
– perf probe
●
systemtap
– debuted in 2005 in Red Hat Enterprise Linux 4
– Probe by DSL script based on kprobe
02/09/2016 44
Userspace Scripts: systemtap
kernel
user
kprobe, ...
foo.stp systemtap
debuginfo
foo.ko
relayfs
output
kprobe
tracepoint
syscall
...
02/09/2016 45
perf + Tracing
02/09/2016 46
perf
●
Linux­2.6.31
●
Statistics data
# perf stat my­app args
●
Sampling record
# perf record my­app args
●
Other sub cmds of perf tool 
perf­tool
perf framework
kernel
user
perf_event
PMU
CPU
Performance Monitors
02/09/2016 47
perf Events
perf­tool
perf framework
kernel
user
HW event
perf_event syscall
SW event
PMU
trace
event
trace
point
dynamic
event
kprobe
uprobe
CPU
Counters
02/09/2016 48
perf Events
# perf record ­e 'syscalls:sys_enter_*' ­a ­g ­­ sleep 60
02/09/2016 49
Flame Graph
http://deliveryimages.acm.org/10.1145/2930000/2927301/gregg6.png
02/09/2016 50
Flame Graph
http://www.brendangregg.com/FlameGraphs/cpu-bash-flamegraph.png
02/09/2016 51
Flame Graph Tools
for perf Data
# perf record ­F 99 ­a ­g ­­ sleep 60
# perf script > out.perf
# /path/to/flamegraph/stackcollapse­perf.pl out.perf > out.folded
# /path/to/flamegraph/flamegraph.pl out.kern_folded > kernel.svg
02/09/2016 52
LTTng
02/09/2016 53
LTTng
http://lttng.org/images/docs27/plumbing-27.png
02/09/2016 54
Eclipse LTTng Support
https://wiki.eclipse.org/images/e/ec/LTTngPerspective.png
02/09/2016 55
Disadvantage of
Previous Kernel Tracing
●
Components are isolated
●
Complex filters and scripts can be expensive
●
Need more comprehensive tools. Some solutions
– systemtap
– LTTng
– Dtrace
– ktap
02/09/2016 56
Tracing + eBPF
02/09/2016 57
network
stack
sniffer
kernel
user
net if
Applications
tcpdump ­nnnX  port 3000
port 3000
VM filter
(BPF) http://www.ic
onsdb.com/ico
ns/download/g
ray/empty-fil
ter-512.png
BPF – In­kernel Packet Filter
02/09/2016 58
eBPF
●
(Linux­3.15) Re­designed by Alexei Starovoitov
– Write programs in restricted C
●
compile to BPF with LLVM
– Just­in­time map to modern 64­bit CPU with 
minimal performance overhead
02/09/2016 59
Areas Use eBPF
more than a filter today
●
Seccomp filters of syscalls (chrome sandboxing)
●
Packet classifier for traffic contol
●
Actions for traffic control
●
Xtables packet filtering
●
Tracing
– (Linux­4.1) attach to kprobe
– (Linux­4.7) attach to tracepoint 
02/09/2016 60
eBPF  Architecture
BPF
binary
MAP
helper
subsys
Other
subsys
BPF_PROG_RUN
BPF
binary
kernel
user
BPF Interpreter/JIT
bpf syscall
verifier
    Tracer
02/09/2016 61
Write Customized Tracing Script
Is Possible Now!
02/09/2016 62
eBPF Utilitiy – IO Visor BCC
Frontend
python, lua
llvm library
BPF bytecode
libbcc.so
BPF C text/code
BCC module
BCC
bpf syscallperf event / trace_fs
User
program
02/09/2016 63
Current Tracing Scripts
in BCC
https://raw.githubusercontent.com/iovisor/bcc/master/images/bcc_tracing_tools_2016.png
Tools for BPF­based Linux IO analysis, networking, monitoring, and 
more
02/09/2016 64
perf + eBPF [8]
●
Linux­4.8­rc (?) by Wang Nan in Huawei
●
On­goning staff and future plans
– Load BPF
– Tracing rare outliner
– Integrate LLVM and other frontend
02/09/2016 65
Summary
02/09/2016 66
Linux Kernel Tracing
kprobe
uprobe
function
tracer
tracepoint
ftrace, hist trigger, perf, eBPF
systemtap
perf­tool
BCC
LTTng
Flamegraph
trace­cmd
Kernelshark
eBPF
library
02/09/2016 67
Q & A
9/2/16 68/70
Reference
[1] Steven Rostedt (Dec. 2009), “Debugging the kernel using Ftrace ­ part 1”, LWN
[2] Steven Rostedt (Feb. 2011), “Using KernelShark to analyze the real­time scheduler”, LWN
[3] 章亦春 , “ 动态追踪技术漫谈”
[4] Brendan Gregg, (Feb. 2016), "Linux  4.x  Performance   Using  BPF  Superpowers", 
presented at Performance@ scale 2016
[5] Gary Lin (Mar. 2016), “eBPF: Trace from Kernel to Userspace ”, presented at OpenSUSE 
Technology Sharing Day 2016
[6] Kernel documentation, “Using the Linux Kernel Tracepoints”
[7] William Cohen (Feb. 2005), “cost of kprobe and jprobe operations”, systemtap mailing list
[8] Wang Nan (Aug. 2016), “Performance Monitoring and AnalysisUsing perf+BPF” , 
LinuxCon North America 2016
9/2/16 69/70
● COSCUP is the Conference for Open Source Coders, Users and Promoters in Taiwan.
● iovisor is a project of Linux Foundation
● ARM are trademarks or registered trademarks of ARM Holdings.
● Linux Foundation is a registered trademark of The Linux Foundation.
● Linux is a registered trademark of Linus Torvalds.
● Other company, product, and service names may be trademarks or service marks
of others.
● The license of each graph belongs to each website listed individually.
● The others of my work in the slide is licensed under a CC-BY-SA License.
● License text: http://creativecommons.org/licenses/by-sa/4.0/legalcode
Rights to Copy
copyright © 2016 Viller Hsiao
9/2/16 Viller Hsiao
THE END

More Related Content

What's hot

LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking Walkthrough
Thomas Graf
 
Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!
Ray Jenkins
 
Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)
Brendan Gregg
 
Linux Network Stack
Linux Network StackLinux Network Stack
Linux Network Stack
Adrien Mahieux
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
Thomas Graf
 
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFLinux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Brendan Gregg
 
Linux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersLinux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF Superpowers
Brendan Gregg
 
UM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of SoftwareUM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of Software
Brendan Gregg
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at Netflix
Brendan Gregg
 
Slab Allocator in Linux Kernel
Slab Allocator in Linux KernelSlab Allocator in Linux Kernel
Slab Allocator in Linux Kernel
Adrian Huang
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)
Brendan Gregg
 
Memory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux KernelMemory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux Kernel
Adrian Huang
 
eBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux KerneleBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux Kernel
Thomas Graf
 
Building Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCCBuilding Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCC
Kernel TLV
 
Container Performance Analysis
Container Performance AnalysisContainer Performance Analysis
Container Performance Analysis
Brendan Gregg
 
Security Monitoring with eBPF
Security Monitoring with eBPFSecurity Monitoring with eBPF
Security Monitoring with eBPF
Alex Maestretti
 
DPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet ProcessingDPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet Processing
Michelle Holley
 
Introduction to eBPF
Introduction to eBPFIntroduction to eBPF
Introduction to eBPF
RogerColl2
 
Introduction to eBPF and XDP
Introduction to eBPF and XDPIntroduction to eBPF and XDP
Introduction to eBPF and XDP
lcplcp1
 
Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016
Brendan Gregg
 

What's hot (20)

LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking Walkthrough
 
Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!
 
Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)
 
Linux Network Stack
Linux Network StackLinux Network Stack
Linux Network Stack
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
 
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFLinux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPF
 
Linux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersLinux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF Superpowers
 
UM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of SoftwareUM2019 Extended BPF: A New Type of Software
UM2019 Extended BPF: A New Type of Software
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at Netflix
 
Slab Allocator in Linux Kernel
Slab Allocator in Linux KernelSlab Allocator in Linux Kernel
Slab Allocator in Linux Kernel
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)
 
Memory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux KernelMemory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux Kernel
 
eBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux KerneleBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux Kernel
 
Building Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCCBuilding Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCC
 
Container Performance Analysis
Container Performance AnalysisContainer Performance Analysis
Container Performance Analysis
 
Security Monitoring with eBPF
Security Monitoring with eBPFSecurity Monitoring with eBPF
Security Monitoring with eBPF
 
DPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet ProcessingDPDK & Layer 4 Packet Processing
DPDK & Layer 4 Packet Processing
 
Introduction to eBPF
Introduction to eBPFIntroduction to eBPF
Introduction to eBPF
 
Introduction to eBPF and XDP
Introduction to eBPF and XDPIntroduction to eBPF and XDP
Introduction to eBPF and XDP
 
Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016
 

More from Viller Hsiao

Bpf performance tools chapter 4 bcc
Bpf performance tools chapter 4   bccBpf performance tools chapter 4   bcc
Bpf performance tools chapter 4 bcc
Viller Hsiao
 
Prerequisite knowledge for shared memory concurrency
Prerequisite knowledge for shared memory concurrencyPrerequisite knowledge for shared memory concurrency
Prerequisite knowledge for shared memory concurrency
Viller Hsiao
 
twlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdsotwlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdso
Viller Hsiao
 
mbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graphmbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graph
Viller Hsiao
 
Introduction to ARM mbed-OS 3.0 uvisor
Introduction to ARM mbed-OS 3.0 uvisorIntroduction to ARM mbed-OS 3.0 uvisor
Introduction to ARM mbed-OS 3.0 uvisor
Viller Hsiao
 
My first-crawler-in-python
My first-crawler-in-pythonMy first-crawler-in-python
My first-crawler-in-pythonViller Hsiao
 
Yet another introduction to Linux RCU
Yet another introduction to Linux RCUYet another introduction to Linux RCU
Yet another introduction to Linux RCU
Viller Hsiao
 
Trace kernel code tips
Trace kernel code tipsTrace kernel code tips
Trace kernel code tips
Viller Hsiao
 
f9-microkernel-ktimer
f9-microkernel-ktimerf9-microkernel-ktimer
f9-microkernel-ktimer
Viller Hsiao
 

More from Viller Hsiao (9)

Bpf performance tools chapter 4 bcc
Bpf performance tools chapter 4   bccBpf performance tools chapter 4   bcc
Bpf performance tools chapter 4 bcc
 
Prerequisite knowledge for shared memory concurrency
Prerequisite knowledge for shared memory concurrencyPrerequisite knowledge for shared memory concurrency
Prerequisite knowledge for shared memory concurrency
 
twlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdsotwlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdso
 
mbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graphmbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graph
 
Introduction to ARM mbed-OS 3.0 uvisor
Introduction to ARM mbed-OS 3.0 uvisorIntroduction to ARM mbed-OS 3.0 uvisor
Introduction to ARM mbed-OS 3.0 uvisor
 
My first-crawler-in-python
My first-crawler-in-pythonMy first-crawler-in-python
My first-crawler-in-python
 
Yet another introduction to Linux RCU
Yet another introduction to Linux RCUYet another introduction to Linux RCU
Yet another introduction to Linux RCU
 
Trace kernel code tips
Trace kernel code tipsTrace kernel code tips
Trace kernel code tips
 
f9-microkernel-ktimer
f9-microkernel-ktimerf9-microkernel-ktimer
f9-microkernel-ktimer
 

Recently uploaded

ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
Vijay Dialani, PhD
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
thanhdowork
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
ongomchris
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
AmarGB2
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
English lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdfEnglish lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdf
BrazilAccount1
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
Kerry Sado
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
Jayaprasanna4
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 

Recently uploaded (20)

ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
 
English lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdfEnglish lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdf
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 

Linux kernel tracing