Conference Guide

Parallelisation in the Linux Kernel
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
V Revert filter to original state Y Select link (requires manual Ctrl-c)

Menu toggling

q Quotes r References f Filter y Link c Credits

In-Menu Movement

a
w
s
d
h j k l


Quotes and References Menus

Enter Jump to timecode

Quotes, References and Credits Menus

o Open URL (in new tab)

Filter Menu

x, Space Toggle category and focus next
X, ShiftSpace Toggle category and focus previous
v Invert topics / media as per focus

Filter and Link Menus

z Toggle filter / linking mode

Credits Menu

Enter Open URL (in new tab)
0:01Welcome to the talk
0:01Welcome to the talk
0:01Welcome to the talk
0:35Outline
0:35Outline
0:35Outline
1:18Background: Working on Ksplice at Oracle1
1:18Background: Working on Ksplice at Oracle1
1:18Background: Working on Ksplice at Oracle1
1:47Background: Security, C and low-level machine programming
1:47Background: Security, C and low-level machine programming
1:47Background: Security, C and low-level machine programming
2:12Background: GPU driver bug
2:12Background: GPU driver bug
2:12Background: GPU driver bug
2:47Why Linux?
2:47Why Linux?
2:47Why Linux?
4:13How parallel?
4:13How parallel?
4:13How parallel?
5:19How parallel?: SGI Supercomputer with 6144 cores, running Linux
5:19How parallel?: SGI Supercomputer with 6144 cores, running Linux
5:19How parallel?: SGI Supercomputer with 6144 cores, running Linux
6:25Contention: 2-cores
6:25Contention: 2-cores
6:25Contention: 2-cores
7:32Contention: 4-cores
7:32Contention: 4-cores
7:32Contention: 4-cores
8:35The bathroom analogy
8:35The bathroom analogy
8:35The bathroom analogy
10:02Locking does not scale
10:02Locking does not scale
10:02Locking does not scale
10:43Real world example: Compiling the kernel
10:43Real world example: Compiling the kernel
10:43Real world example: Compiling the kernel
13:24Cache lines
13:24Cache lines
13:24Cache lines
14:18Cache hierarchy – MESI protocol2
14:18Cache hierarchy – MESI protocol2
14:18Cache hierarchy – MESI protocol2
15:22Cacheline bouncing – false sharing
15:22Cacheline bouncing – false sharing
15:22Cacheline bouncing – false sharing
17:00Atomic operations
17:00Atomic operations
17:00Atomic operations
19:04Spinlocks
19:04Spinlocks
19:04Spinlocks
20:39Spinlocks – Optimizations
20:39Spinlocks – Optimizations
20:39Spinlocks – Optimizations
22:59Queued spinlocks
22:59Queued spinlocks
22:59Queued spinlocks
23:37NUMA (Non-Uniform Memory Access)
23:37NUMA (Non-Uniform Memory Access)
23:37NUMA (Non-Uniform Memory Access)
24:36Queued spinlocks: Global spinning avoidance
24:36Queued spinlocks: Global spinning avoidance
24:36Queued spinlocks: Global spinning avoidance
26:51Queued spinlocks: Compact NUMA-Aware Locks3
26:51Queued spinlocks: Compact NUMA-Aware Locks3
26:51Queued spinlocks: Compact NUMA-Aware Locks3
27:48Reader–writer spinlocks
27:48Reader–writer spinlocks
27:48Reader–writer spinlocks
28:59RCU: Read–Copy–Update
28:59RCU: Read–Copy–Update
28:59RCU: Read–Copy–Update
30:10RCU linked lists
30:10RCU linked lists
30:10RCU linked lists
32:39RCU: grace period
32:39RCU: grace period
32:39RCU: grace period
34:30RCU: summary
34:30RCU: summary
34:30RCU: summary
35:26Seqlock
35:26Seqlock
35:26Seqlock
37:46VFS – Virtual File System
37:46VFS – Virtual File System
37:46VFS – Virtual File System
39:11Pathname lookup
39:11Pathname lookup
39:11Pathname lookup
40:00Pathname lookup: complications
40:00Pathname lookup: complications
40:00Pathname lookup: complications
43:52Conclusion
43:52Conclusion
43:52Conclusion
44:00Conclusion: Think in terms of cache lines
44:00Conclusion: Think in terms of cache lines
44:00Conclusion: Think in terms of cache lines
44:27Conclusion: Optimise for the common case and fall back
44:27Conclusion: Optimise for the common case and fall back
44:27Conclusion: Optimise for the common case and fall back
44:58Conclusion: Explore other ideas
44:58Conclusion: Explore other ideas
44:58Conclusion: Explore other ideas
45:39Conclusion: Linux parallelisation is state-of-the-art4
45:39Conclusion: Linux parallelisation is state-of-the-art4
45:39Conclusion: Linux parallelisation is state-of-the-art4
46:18Thank you
46:18Thank you
46:18Thank you