Pay Migration Tax to Homeland: Anchor-based Scalable Reference Counting for Multicores
|
|
- Cameron Jennings
- 5 years ago
- Views:
Transcription
1 Pay Migration Tax to Homeland: Anchor-based Scalable Reference Counting for Multicores Seokyong Jung, Jongbin Kim, Minsoo Ryu, Sooyong Kang, Hyungsoo Jung Hanyang University 1
2 Reference counting It is a general technique to manage the number of references for resources mainly used to reclaim resources in timely manner Scalability is the most important challenge in multicore environment 1. REF (increase counter) 2. Use resource 3. UNREF (decrease counter) 2
3 Known scalability issues of reference counting in Linux Thread Atomic counter Counter Increment: CAS(counter,v,v+1) Decrement: CAS(counter,v,v-1) Traditional Counting in Linux Read throughput for a same page in a single file (Min et al. ATC 16) 3
4 Four performance metrics we established Space Ideal Query Time Counting Counting Overhead Cost for updating a reference counter Query Overhead Cost for checking if a reference counter is zero Space Overhead Space required for reference counter itself Time Overhead Time for synchronizing between internal structures for reference counting 4
5 Overhead analysis of prior proposals Query Thread Atomic counter Counter Traditional Counting Space Counting Reference Time Low query Low space Low time High counting 5
6 Overhead analysis of prior proposals (cont.) Query Thread Atomic counter Counter Contention Distribution Space Counting Reference Time Better counting Worse space Worse query 6
7 Overhead analysis of prior proposals (cont.) Query Thread Atomic counter Counter Contention Distribution Space Counting Reference Time Prior proposals: SNZI (Ellen et al., SOSP 07) Carrefour (Dashti et al., SIGPLAN Notices (2013)) Doppel (Nurula et al., OSDI 14) Dynamic SNZI (Acar et al., PPoPP 17) Better counting Worse space Worse query 7
8 Overhead analysis of prior proposals (cont.) Query Thread Atomic counter Cache Affinity Counter Space Counting Reference core core core core Time Better counting Worse space Worse query 8
9 Overhead analysis of prior proposals (cont.) Query Thread Atomic counter Cache Affinity Counter Space Counting Reference Time Prior proposals: percpu_counter structure in Linux (2006) Sloppy counter (Boyd-Wickizer et al., OSDI 10) percpu_ref structure in Linux (2013) core core core core Better counting Worse space Worse query 9
10 Overhead analysis of prior proposals (cont.) Query Thread Obj A Per-core Hash Central counter Atomic counter Obj B Central counter Obj C Central counter Counter Space Counting Obj A Obj A Obj B Obj C Reference Time core core core core Better counting Worse query Worse time 10
11 Overhead analysis of prior proposals (cont.) Query Thread Obj A Per-core Hash Central counter Atomic counter Obj B Central counter Obj C Central counter Counter Space Counting Obj A Obj A Obj B Obj C Reference Time Prior proposals: Reference counting using Linux RCU (Mckenny et al., TR (2013)) RadixVM (Clements et al., EuroSys 13) OpLog (Boyd-Wickizer, PhD thesis (2014)) ScaleFS (Bhat et al., SOSP 17) core core core core Better counting Worse query Worse time 11
12 Overhead analysis of prior proposals (cont.) Query Per-core Hash Obj A Obj B Obj C Obj D Obj X Space Counting Central counter 10 Central counter 0... Obj D +1 Time Obj A X +1 Obj C +1 Obj B +1 Evict... core 12
13 Overhead analysis of prior proposals (cont.) Query Per-core Hash Obj A Obj B Obj C Obj D Obj X Space Counting Central counter 10 Central counter 0... Obj D +1 Time Obj X +1 Obj C +1 Obj B core 13
14 Throughput (Mops/sec) Overhead analysis of prior proposals (cont.) Query Per-core Hash (RefCache) Space Counting Time Number of Shared Objects (Pages) 14
15 Summarizing all these... 15
16 Summarizing all these... 16
17 Challenges for the space-time tradeoff Obj A Obj B Obj C Obj D Obj E Obj F Obj G Obj H Obj A Obj B Obj C Obj D Obj E Obj F Obj G Obj H Central counter 0 core core core core Cache Affinity Per-core Hash 17
18 Challenges for the space-time tradeoff (cont.) Obj A Obj B Obj C Obj D Obj E Obj F Obj G Obj H Central counter 0 Obj A +1 Obj A -1 core core 18
19 Our solution to this issue... Obj A Central counter 0 Anchoring Core 0 Obj A +1 0 core core REF A UNREF A 19
20 Our solution to this issue... PayGo Pay Migration Tax to Homeland Obj A Central counter 0 Nonatomic Local Atomic Anchor Obj A +1-1 REF A core Core 0 UNREF A core 20
21 Issue for a single local counter : local counter : lock;addl (atomic op.) : lock;subl (atomic op.) core core core 2 migrate core 3 migrate 21
22 Anchoring in action : addl/subl : local counter / : anchor counter : lock;subl (atomic op.) core core core 2 migrate core 3 migrate 22
23 Paygo (Pay migration tax as you go to other core) Low counting Scalable for local counters Low space (per core hash) Proportional to the number of CPU cores Query is still high Escaping the counting-query tradeoff is beyond the scope of this work. 23
24 Overhead Analysis for a Reference Counter 24
25 Data structures in PayGo (per-core) PAYGO (per-process) task struct anchor info anchor core IDs PAYGO entry object local anchor pointer counter counter cache line size (byte) core core Local counter increases the local count by REF operation A process records core IDs along with object pointer when REF operation is performed 25
26 Extending PayGo design to support user-level objects user threads object user mode sys_ref(void* obj) or sys_unref(void* obj) REF(obj, pid) UNREF(obj, pid) kernel mode preempt_disable() preempt_enable() referencing or unreferencing 26
27 Experimental Setup Kernel: Linux CPU: four 24-core Intel Xeon E v4 CPUs RAM: 1 TiB DDR4 DRAM Storage: Samsung SM1725 NVMe SSD 27
28 Scalability Comparison of the Linux Page Cache Strongly contending workloads: FxMark DRBH workload Weakly contending workloads: filebench modified fileserver workload 28
29 Performance Spectrum on Varying Contention Levels 29
30 Scalability of User-level Paygo (at 96 threads) 30
31 Conclusion Designing scalable reference counting techniques should consider space-time tradeoff as well as counting-query tradeoff. PayGo escapes the space-time tradeoff by using anchoring technique. PayGo provides scalable counting and space efficiency with negligible time delay for reclaiming obsolete hash entries. 31
A Scalable Lock Manager for Multicores
A Scalable Lock Manager for Multicores Hyungsoo Jung Hyuck Han Alan Fekete NICTA Samsung Electronics University of Sydney Gernot Heiser NICTA Heon Y. Yeom Seoul National University @University of Sydney
More informationAn Analysis of Linux Scalability to Many Cores
An Analysis of Linux Scalability to Many Cores 1 What are we going to talk about? Scalability analysis of 7 system applications running on Linux on a 48 core computer Exim, memcached, Apache, PostgreSQL,
More informationCSE 120 Principles of Operating Systems
CSE 120 Principles of Operating Systems Spring 2018 Lecture 15: Multicore Geoffrey M. Voelker Multicore Operating Systems We have generally discussed operating systems concepts independent of the number
More informationScalable Correct Memory Ordering via Relativistic Programming
Scalable Correct Memory Ordering via Relativistic Programming Josh Triplett Portland State University josh@joshtriplett.org Philip W. Howard Portland State University pwh@cs.pdx.edu Paul E. McKenney IBM
More informationHigh-Performance Transaction Processing in Journaling File Systems Y. Son, S. Kim, H. Y. Yeom, and H. Han
High-Performance Transaction Processing in Journaling File Systems Y. Son, S. Kim, H. Y. Yeom, and H. Han Seoul National University, Korea Dongduk Women s University, Korea Contents Motivation and Background
More informationOpLog: a library for scaling update-heavy data structures
OpLog: a library for scaling update-heavy data structures Silas Boyd-Wickizer, M. Frans Kaashoek, Robert Morris, and Nickolai Zeldovich MIT CSAIL Abstract Existing techniques (e.g., RCU) can achieve good
More informationClosing the Performance Gap Between Volatile and Persistent K-V Stores
Closing the Performance Gap Between Volatile and Persistent K-V Stores Yihe Huang, Harvard University Matej Pavlovic, EPFL Virendra Marathe, Oracle Labs Margo Seltzer, Oracle Labs Tim Harris, Oracle Labs
More informationStrata: A Cross Media File System. Youngjin Kwon, Henrique Fingler, Tyler Hunt, Simon Peter, Emmett Witchel, Thomas Anderson
A Cross Media File System Youngjin Kwon, Henrique Fingler, Tyler Hunt, Simon Peter, Emmett Witchel, Thomas Anderson 1 Let s build a fast server NoSQL store, Database, File server, Mail server Requirements
More informationRadixVM: Scalable address spaces for multithreaded applications (revised )
RadixVM: Scalable address spaces for multithreaded applications (revised 24-8-5) Austin T. Clements, M. Frans Kaashoek, and Nickolai Zeldovich MIT CSAIL ABSTRACT RadixVM is a new virtual memory system
More informationRethink the Sync 황인중, 강윤지, 곽현호. Embedded Software Lab. Embedded Software Lab.
1 Rethink the Sync 황인중, 강윤지, 곽현호 Authors 2 USENIX Symposium on Operating System Design and Implementation (OSDI 06) System Structure Overview 3 User Level Application Layer Kernel Level Virtual File System
More informationPerformance of Multicore LUP Decomposition
Performance of Multicore LUP Decomposition Nathan Beckmann Silas Boyd-Wickizer May 3, 00 ABSTRACT This paper evaluates the performance of four parallel LUP decomposition implementations. The implementations
More informationBe Fast, Cheap and in Control with SwitchKV. Xiaozhou Li
Be Fast, Cheap and in Control with SwitchKV Xiaozhou Li Goal: fast and cost-efficient key-value store Store, retrieve, manage key-value objects Get(key)/Put(key,value)/Delete(key) Target: cluster-level
More informationSolros: A Data-Centric Operating System Architecture for Heterogeneous Computing
Solros: A Data-Centric Operating System Architecture for Heterogeneous Computing Changwoo Min, Woonhak Kang, Mohan Kumar, Sanidhya Kashyap, Steffen Maass, Heeseung Jo, Taesoo Kim Virginia Tech, ebay, Georgia
More informationMemC3: MemCache with CLOCK and Concurrent Cuckoo Hashing
MemC3: MemCache with CLOCK and Concurrent Cuckoo Hashing Bin Fan (CMU), Dave Andersen (CMU), Michael Kaminsky (Intel Labs) NSDI 2013 http://www.pdl.cmu.edu/ 1 Goal: Improve Memcached 1. Reduce space overhead
More informationRead-Copy Update (RCU) Don Porter CSE 506
Read-Copy Update (RCU) Don Porter CSE 506 RCU in a nutshell ò Think about data structures that are mostly read, occasionally written ò Like the Linux dcache ò RW locks allow concurrent reads ò Still require
More informationRead-Copy Update (RCU) Don Porter CSE 506
Read-Copy Update (RCU) Don Porter CSE 506 Logical Diagram Binary Formats Memory Allocators Today s Lecture System Calls Threads User Kernel RCU File System Networking Sync Memory Management Device Drivers
More informationA Scalable Ordering Primitive for Multicore Machines. Sanidhya Kashyap Changwoo Min Kangnyeon Kim Taesoo Kim
A Scalable Ordering Primitive for Multicore Machines Sanidhya Kashyap Changwoo Min Kangnyeon Kim Taesoo Kim Era of multicore machines 2 Scope of multicore machines Huge hardware thread parallelism How
More informationMultiprocessor OS. COMP9242 Advanced Operating Systems S2/2011 Week 7: Multiprocessors Part 2. Scalability of Multiprocessor OS.
Multiprocessor OS COMP9242 Advanced Operating Systems S2/2011 Week 7: Multiprocessors Part 2 2 Key design challenges: Correctness of (shared) data structures Scalability Scalability of Multiprocessor OS
More informationNon-Volatile Memory Through Customized Key-Value Stores
Non-Volatile Memory Through Customized Key-Value Stores Leonardo Mármol 1 Jorge Guerra 2 Marcos K. Aguilera 2 1 Florida International University 2 VMware L. Mármol, J. Guerra, M. K. Aguilera (FIU and VMware)
More informationProcess. Heechul Yun. Disclaimer: some slides are adopted from the book authors slides with permission
Process Heechul Yun Disclaimer: some slides are adopted from the book authors slides with permission 1 Recap OS services Resource (CPU, memory) allocation, filesystem, communication, protection, security,
More informationIntroducing the Cray XMT. Petr Konecny May 4 th 2007
Introducing the Cray XMT Petr Konecny May 4 th 2007 Agenda Origins of the Cray XMT Cray XMT system architecture Cray XT infrastructure Cray Threadstorm processor Shared memory programming model Benefits/drawbacks/solutions
More informationSAY-Go: Towards Transparent and Seamless Storage-As-You-Go with Persistent Memory
SAY-Go: Towards Transparent and Seamless Storage-As-You-Go with Persistent Memory Hyeonho Song, Sam H. Noh UNIST HotStorage 2018 Contents Persistent Memory Motivation SAY-Go Design Implementation Evaluation
More informationImproving Virtual Machine Scheduling in NUMA Multicore Systems
Improving Virtual Machine Scheduling in NUMA Multicore Systems Jia Rao, Xiaobo Zhou University of Colorado, Colorado Springs Kun Wang, Cheng-Zhong Xu Wayne State University http://cs.uccs.edu/~jrao/ Multicore
More informationGaining Insights into Multicore Cache Partitioning: Bridging the Gap between Simulation and Real Systems
Gaining Insights into Multicore Cache Partitioning: Bridging the Gap between Simulation and Real Systems 1 Presented by Hadeel Alabandi Introduction and Motivation 2 A serious issue to the effective utilization
More informationD5.5 Overall system performance, scaling, and outlook on large multicores
IOLanes Advancing the Scalability and Performance of I/O Subsystems in Multicore Platforms Contract number: Contract Start Date: Duration: Project coordinator: Partners: FP7-248615 01- Jan- 10 39 months
More informationSRM-Buffer: An OS Buffer Management Technique to Prevent Last Level Cache from Thrashing in Multicores
SRM-Buffer: An OS Buffer Management Technique to Prevent Last Level Cache from Thrashing in Multicores Xiaoning Ding et al. EuroSys 09 Presented by Kaige Yan 1 Introduction Background SRM buffer design
More informationBe Fast, Cheap and in Control with SwitchKV Xiaozhou Li
Be Fast, Cheap and in Control with SwitchKV Xiaozhou Li Raghav Sethi Michael Kaminsky David G. Andersen Michael J. Freedman Goal: fast and cost-effective key-value store Target: cluster-level storage for
More informationinstruction is 6 bytes, might span 2 pages 2 pages to handle from 2 pages to handle to Two major allocation schemes
Allocation of Frames How should the OS distribute the frames among the various processes? Each process needs minimum number of pages - at least the minimum number of pages required for a single assembly
More informationCascade Mapping: Optimizing Memory Efficiency for Flash-based Key-value Caching
Cascade Mapping: Optimizing Memory Efficiency for Flash-based Key-value Caching Kefei Wang and Feng Chen Louisiana State University SoCC '18 Carlsbad, CA Key-value Systems in Internet Services Key-value
More informationUnderstanding Manycore Scalability of File Systems. Changwoo Min, Sanidhya Kashyap, Steffen Maass Woonhak Kang, and Taesoo Kim
Understanding Manycore Scalability of File Systems Changwoo Min, Sanidhya Kashyap, Steffen Maass Woonhak Kang, and Taesoo Kim Application must parallelize I/O operations Death of single core CPU scaling
More informationFlashShare: Punching Through Server Storage Stack from Kernel to Firmware for Ultra-Low Latency SSDs
FlashShare: Punching Through Server Storage Stack from Kernel to Firmware for Ultra-Low Latency SSDs Jie Zhang, Miryeong Kwon, Donghyun Gouk, Sungjoon Koh, Changlim Lee, Mohammad Alian, Myoungjun Chun,
More informationDeukyeon Hwang UNIST. Wook-Hee Kim UNIST. Beomseok Nam UNIST. Hanyang Univ.
Deukyeon Hwang UNIST Wook-Hee Kim UNIST Youjip Won Hanyang Univ. Beomseok Nam UNIST Fast but Asymmetric Access Latency Non-Volatility Byte-Addressability Large Capacity CPU Caches (Volatile) Persistent
More informationSilas Boyd-Wickizer. Doctor of Philosophy. at the. February 2014
Optimizing Communication Bottlenecks in Multiprocessor Operating System Kernels by Silas Boyd-Wickizer B.S., Stanford University (2004) M.S., Stanford University (2006) Submitted to the Department of Electrical
More informationToward SLO Complying SSDs Through OPS Isolation
Toward SLO Complying SSDs Through OPS Isolation October 23, 2015 Hongik University UNIST (Ulsan National Institute of Science & Technology) Sam H. Noh 1 Outline Part 1: FAST 2015 Part 2: Beyond FAST 2
More informationProcess. Heechul Yun. Disclaimer: some slides are adopted from the book authors slides with permission 1
Process Heechul Yun Disclaimer: some slides are adopted from the book authors slides with permission 1 Recap OS services Resource (CPU, memory) allocation, filesystem, communication, protection, security,
More informationMain Memory Supporting Caches
Main Memory Supporting Caches Use DRAMs for main memory Fixed width (e.g., 1 word) Connected by fixed-width clocked bus Bus clock is typically slower than CPU clock Cache Issues 1 Example cache block read
More informationOptimal Algorithm. Replace page that will not be used for longest period of time Used for measuring how well your algorithm performs
Optimal Algorithm Replace page that will not be used for longest period of time Used for measuring how well your algorithm performs page 1 Least Recently Used (LRU) Algorithm Reference string: 1, 2, 3,
More informationFile Systems. Kartik Gopalan. Chapter 4 From Tanenbaum s Modern Operating System
File Systems Kartik Gopalan Chapter 4 From Tanenbaum s Modern Operating System 1 What is a File System? File system is the OS component that organizes data on the raw storage device. Data, by itself, is
More informationTechnical Brief: Specifying a PC for Mascot
Technical Brief: Specifying a PC for Mascot Matrix Science 8 Wyndham Place London W1H 1PP United Kingdom Tel: +44 (0)20 7723 2142 Fax: +44 (0)20 7725 9360 info@matrixscience.com http://www.matrixscience.com
More informationHow to hold onto things in a multiprocessor world
How to hold onto things in a multiprocessor world Taylor Riastradh Campbell campbell@mumble.net riastradh@netbsd.org AsiaBSDcon 2017 Tokyo, Japan March 12, 2017 Slides n code Full of code! Please browse
More informationNUMA replicated pagecache for Linux
NUMA replicated pagecache for Linux Nick Piggin SuSE Labs January 27, 2008 0-0 Talk outline I will cover the following areas: Give some NUMA background information Introduce some of Linux s NUMA optimisations
More informationKernel Scalability. Adam Belay
Kernel Scalability Adam Belay Motivation Modern CPUs are predominantly multicore Applications rely heavily on kernel for networking, filesystem, etc. If kernel can t scale across many
More informationRCU in the Linux Kernel: One Decade Later
RCU in the Linux Kernel: One Decade Later by: Paul E. Mckenney, Silas Boyd-Wickizer, Jonathan Walpole Slides by David Kennedy (and sources) RCU Usage in Linux During this same time period, the usage of
More informationBuilding a High IOPS Flash Array: A Software-Defined Approach
Building a High IOPS Flash Array: A Software-Defined Approach Weafon Tsao Ph.D. VP of R&D Division, AccelStor, Inc. Santa Clara, CA Clarification Myth 1: S High-IOPS SSDs = High-IOPS All-Flash Array SSDs
More informationImplementation and Evaluation of Moderate Parallelism in the BIND9 DNS Server
Implementation and Evaluation of Moderate Parallelism in the BIND9 DNS Server JINMEI, Tatuya / Toshiba Paul Vixie / Internet Systems Consortium [Supported by SCOPE of the Ministry of Internal Affairs and
More informationCPHash: A Cache-Partitioned Hash Table Zviad Metreveli, Nickolai Zeldovich, and M. Frans Kaashoek
Computer Science and Artificial Intelligence Laboratory Technical Report MIT-CSAIL-TR-211-51 November 26, 211 : A Cache-Partitioned Hash Table Zviad Metreveli, Nickolai Zeldovich, and M. Frans Kaashoek
More informationThe Art and Science of Memory Allocation
Logical Diagram The Art and Science of Memory Allocation Don Porter CSE 506 Binary Formats RCU Memory Management Memory Allocators CPU Scheduler User System Calls Kernel Today s Lecture File System Networking
More informationA Case Study: Performance Evaluation of a DRAM-Based Solid State Disk
A Case Study: Performance Evaluation of a DRAM-Based Solid State Disk Hitoshi Oi The University of Aizu November 2, 2007 Japan-China Joint Workshop on Frontier of Computer Science and Technology (FCST)
More informationCS/COE 1550
CS/COE 1550 www.cs.pitt.edu/~nlf4/cs1550/ Virtual Memory What if a program is too big for memory? Ye olde solution: Overlays! Programmers split their programs up into overlays containing a subset of the
More informationAFS Performance. Simon Wilkinson
AFS Performance Simon Wilkinson sxw@your-file-system.com Benchmarking Lots of different options for benchmarking rxperf - measures just RX layer performance filebench - generates workload against real
More informationDesigning a True Direct-Access File System with DevFS
Designing a True Direct-Access File System with DevFS Sudarsun Kannan, Andrea Arpaci-Dusseau, Remzi Arpaci-Dusseau University of Wisconsin-Madison Yuangang Wang, Jun Xu, Gopinath Palani Huawei Technologies
More informationManaging Array of SSDs When the Storage Device is No Longer the Performance Bottleneck
Managing Array of Ds When the torage Device is No Longer the Performance Bottleneck Byung. Kim, Jaeho Kim, am H. Noh UNIT (Ulsan National Institute of cience & Technology) Outline Motivation & Observation
More informationFlavors of Memory supported by Linux, their use and benefit. Christoph Lameter, Ph.D,
Flavors of Memory supported by Linux, their use and benefit Christoph Lameter, Ph.D, Twitter: @qant Flavors Of Memory The term computer memory is a simple term but there are numerous nuances
More informationZBD: Using Transparent Compression at the Block Level to Increase Storage Space Efficiency
ZBD: Using Transparent Compression at the Block Level to Increase Storage Space Efficiency Thanos Makatos, Yannis Klonatos, Manolis Marazakis, Michail D. Flouris, and Angelos Bilas {mcatos,klonatos,maraz,flouris,bilas}@ics.forth.gr
More informationUsing Transparent Compression to Improve SSD-based I/O Caches
Using Transparent Compression to Improve SSD-based I/O Caches Thanos Makatos, Yannis Klonatos, Manolis Marazakis, Michail D. Flouris, and Angelos Bilas {mcatos,klonatos,maraz,flouris,bilas}@ics.forth.gr
More informationMarch NVM Solutions Group
March 2017 NVM Solutions Group Ideally one would desire an indefinitely large memory capacity such that any particular word would be immediately available. It does not seem possible physically to achieve
More informationMulti-Chance Adaptive Replacement Cache(MC-ARC) Shailendra Tripathi Architect, Tegile Systems
Multi-Chance Adaptive Replacement Cache(MC-ARC) Shailendra Tripathi Architect, Tegile Systems Outline Adaptive Replacement Cache (ARC) Scaling Issue of ARC Design Goals MC-ARC Test Results References Q
More informationBut What About Updates?
Paul E. McKenney, IBM Distinguished Engineer, Linux Technology Center Member, IBM Academy of Technology Linux Collaboration Summit, Napa Valley, CA, USA, March 27, 2014 But What About Updates? Overview
More informationSynchronization for Concurrent Tasks
Synchronization for Concurrent Tasks Minsoo Ryu Department of Computer Science and Engineering 2 1 Race Condition and Critical Section Page X 2 Synchronization in the Linux Kernel Page X 3 Other Synchronization
More informationArchitecture of a Real-Time Operational DBMS
Architecture of a Real-Time Operational DBMS Srini V. Srinivasan Founder, Chief Development Officer Aerospike CMG India Keynote Thane December 3, 2016 [ CMGI Keynote, Thane, India. 2016 Aerospike Inc.
More informationPower Management for Embedded Systems
Power Management for Embedded Systems Minsoo Ryu Hanyang University Why Power Management? Battery-operated devices Smartphones, digital cameras, and laptops use batteries Power savings and battery run
More informationAn Analysis of Linux Scalability to Many Cores
An Analysis of Linux Scalability to Many Cores The MIT Faculty has made this article openly available. Please share how this access benefits you. Your story matters. Citation As Published Publisher Boyd-Wickizer,
More informationMotivation. Threads. Multithreaded Server Architecture. Thread of execution. Chapter 4
Motivation Threads Chapter 4 Most modern applications are multithreaded Threads run within application Multiple tasks with the application can be implemented by separate Update display Fetch data Spell
More informationScalable Locking. Adam Belay
Scalable Locking Adam Belay Problem: Locks can ruin performance 12 finds/sec 9 6 Locking overhead dominates 3 0 0 6 12 18 24 30 36 42 48 Cores Problem: Locks can ruin performance the locks
More informationThe benefits and costs of writing a POSIX kernel in a high-level language
1 / 38 The benefits and costs of writing a POSIX kernel in a high-level language Cody Cutler, M. Frans Kaashoek, Robert T. Morris MIT CSAIL Should we use high-level languages to build OS kernels? 2 / 38
More informationOperating System Supports for SCM as Main Memory Systems (Focusing on ibuddy)
2011 NVRAMOS Operating System Supports for SCM as Main Memory Systems (Focusing on ibuddy) 2011. 4. 19 Jongmoo Choi http://embedded.dankook.ac.kr/~choijm Contents Overview Motivation Observations Proposal:
More informationProgramming GPUs for database applications - outsourcing index search operations
Programming GPUs for database applications - outsourcing index search operations Tim Kaldewey Research Staff Member Database Technologies IBM Almaden Research Center tkaldew@us.ibm.com Quo Vadis? + special
More informationA Memory Management Scheme for Hybrid Memory Architecture in Mission Critical Computers
A Memory Management Scheme for Hybrid Memory Architecture in Mission Critical Computers Soohyun Yang and Yeonseung Ryu Department of Computer Engineering, Myongji University Yongin, Gyeonggi-do, Korea
More informationAdaptive Lock. Madhav Iyengar < >, Nathaniel Jeffries < >
Adaptive Lock Madhav Iyengar < miyengar@andrew.cmu.edu >, Nathaniel Jeffries < njeffrie@andrew.cmu.edu > ABSTRACT Busy wait synchronization, the spinlock, is the primitive at the core of all other synchronization
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 33 Virtual Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ How does the virtual
More informationPebblesDB: Building Key-Value Stores using Fragmented Log Structured Merge Trees
PebblesDB: Building Key-Value Stores using Fragmented Log Structured Merge Trees Pandian Raju 1, Rohan Kadekodi 1, Vijay Chidambaram 1,2, Ittai Abraham 2 1 The University of Texas at Austin 2 VMware Research
More informationSpanFS: A Scalable File System on Fast Storage Devices
SpanFS: A Scalable File System on Fast Storage Devices Junbin Kang, Benlong Zhang, Tianyu Wo, Weiren Yu, Lian Du, Shuai Ma and Jinpeng Huai SKLSDE Lab, Beihang University, China {kangjb, woty, yuwr, dulian,
More informationPOWER MANAGEMENT AND ENERGY EFFICIENCY
POWER MANAGEMENT AND ENERGY EFFICIENCY * Adopted Power Management for Embedded Systems, Minsoo Ryu 2017 Operating Systems Design Euiseong Seo (euiseong@skku.edu) Need for Power Management Power consumption
More informationFine-grained Metadata Journaling on NVM
32nd International Conference on Massive Storage Systems and Technology (MSST 2016) May 2-6, 2016 Fine-grained Metadata Journaling on NVM Cheng Chen, Jun Yang, Qingsong Wei, Chundong Wang, and Mingdi Xue
More informationTailwind: Fast and Atomic RDMA-based Replication. Yacine Taleb, Ryan Stutsman, Gabriel Antoniu, Toni Cortes
Tailwind: Fast and Atomic RDMA-based Replication Yacine Taleb, Ryan Stutsman, Gabriel Antoniu, Toni Cortes In-Memory Key-Value Stores General purpose in-memory key-value stores are widely used nowadays
More informationThe Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors
The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors Austin T. Clements Thesis advisors: M. Frans Kaashoek Nickolai Zeldovich Robert Morris Eddie Kohler x86 CPU trends
More informationPerformance in the Multicore Era
Performance in the Multicore Era Gustavo Alonso Systems Group -- ETH Zurich, Switzerland Systems Group Enterprise Computing Center Performance in the multicore era 2 BACKGROUND - SWISSBOX SwissBox: An
More informationFStream: Managing Flash Streams in the File System
FStream: Managing Flash Streams in the File System Eunhee Rho, Kanchan Joshi, Seung-Uk Shin, Nitesh Jagadeesh Shetty, Joo-Young Hwang, Sangyeun Cho, Daniel DG Lee, Jaeheon Jeong Memory Division, Samsung
More informationFast, In-Memory Analytics on PPDM. Calgary 2016
Fast, In-Memory Analytics on PPDM Calgary 2016 In-Memory Analytics A BI methodology to solve complex and timesensitive business scenarios by using system memory as opposed to physical disk, by increasing
More informationOptimization of thread affinity and memory affinity for remote core locking synchronization in multithreaded programs for multicore computer systems
Optimization of thread affinity and memory affinity for remote core locking synchronization in multithreaded programs for multicore computer systems Alexey Paznikov Saint Petersburg Electrotechnical University
More informationBarrier Enabled IO Stack for Flash Storage
Barrier Enabled IO Stack for Flash Storage Youjip Won, Jaemin Jung, Gyeongyeol Choi, Joontaek Oh, Seongbae Son, Jooyoung Hwang, Sangyeun Cho Hanyang University Texas A&M University Samsung Electronics
More informationBackground. Virtual Memory (2/2) Demand Paging Example. First-In-First-Out (FIFO) Algorithm. Page Replacement Algorithms. Performance of Demand Paging
Virtual Memory (/) Background Page Replacement Allocation of Frames Thrashing Background Virtual memory separation of user logical memory from physical memory. Only part of the program needs to be in memory
More informationPerformance and Optimization Issues in Multicore Computing
Performance and Optimization Issues in Multicore Computing Minsoo Ryu Department of Computer Science and Engineering 2 Multicore Computing Challenges It is not easy to develop an efficient multicore program
More informationffwd: delegation is (much) faster than you think Sepideh Roghanchi, Jakob Eriksson, Nilanjana Basu
ffwd: delegation is (much) faster than you think Sepideh Roghanchi, Jakob Eriksson, Nilanjana Basu int get_seqno() { } return ++seqno; // ~1 Billion ops/s // single-threaded int threadsafe_get_seqno()
More informationThe dark powers on Intel processor boards
The dark powers on Intel processor boards Processing Resources (3U VPX) Boards with Multicore CPUs: Up to 16 cores using Intel Xeon D-1577 on TR C4x/msd Boards with 4-Core CPUs and Multiple Graphical Execution
More informationUtilizing the IOMMU scalably
Utilizing the IOMMU scalably Omer Peleg, Adam Morrison, Benjamin Serebrin, and Dan Tsafrir USENIX ATC 15 2017711456 Shin Seok Ha 1 Introduction What is an IOMMU? Provides the translation between IO addresses
More informationExploring mtcp based Single-Threaded and Multi-Threaded Web Server Design
Exploring mtcp based Single-Threaded and Multi-Threaded Web Server Design A Thesis Submitted in partial fulfillment of the requirements for the degree of Master of Technology by Pijush Chakraborty (153050015)
More informationTHE FUTURE OF GPU DATA MANAGEMENT. Michael Wolfe, May 9, 2017
THE FUTURE OF GPU DATA MANAGEMENT Michael Wolfe, May 9, 2017 CPU CACHE Hardware managed What data to cache? Where to store the cached data? What data to evict when the cache fills up? When to store data
More informationFirst-In-First-Out (FIFO) Algorithm
First-In-First-Out (FIFO) Algorithm Reference string: 7,0,1,2,0,3,0,4,2,3,0,3,0,3,2,1,2,0,1,7,0,1 3 frames (3 pages can be in memory at a time per process) 15 page faults Can vary by reference string:
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 23 Virtual memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Is a page replaces when
More informationThe SNIA NVM Programming Model. #OFADevWorkshop
The SNIA NVM Programming Model #OFADevWorkshop Opportunities with Next Generation NVM NVMe & STA SNIA 2 NVM Express/SCSI Express: Optimized storage interconnect & driver SNIA NVM Programming TWG: Optimized
More informationThe Power of Batching in the Click Modular Router
The Power of Batching in the Click Modular Router Joongi Kim, Seonggu Huh, Keon Jang, * KyoungSoo Park, Sue Moon Computer Science Dept., KAIST Microsoft Research Cambridge, UK * Electrical Engineering
More informationAzor: Using Two-level Block Selection to Improve SSD-based I/O caches
Azor: Using Two-level Block Selection to Improve SSD-based I/O caches Yannis Klonatos, Thanos Makatos, Manolis Marazakis, Michail D. Flouris, Angelos Bilas {klonatos, makatos, maraz, flouris, bilas}@ics.forth.gr
More informationIntroduction to Multicore Programming
Introduction to Multicore Programming Minsoo Ryu Department of Computer Science and Engineering 2 1 Multithreaded Programming 2 Synchronization 3 Automatic Parallelization and OpenMP 4 GPGPU 5 Q& A 2 Multithreaded
More informationEfficient Storage Management for Aged File Systems on Persistent Memory
Efficient Storage Management for Aged File Systems on Persistent Memory Kaisheng Zeng, Youyou Lu,HuWan, and Jiwu Shu Department of Computer Science and Technology, Tsinghua University, Beijing, China Tsinghua
More informationUni-Address Threads: Scalable Thread Management for RDMA-based Work Stealing
Uni-Address Threads: Scalable Thread Management for RDMA-based Work Stealing Shigeki Akiyama, Kenjiro Taura The University of Tokyo June 17, 2015 HPDC 15 Lightweight Threads Lightweight threads enable
More informationGCMA: Guaranteed Contiguous Memory Allocator. SeongJae Park
GCMA: Guaranteed Contiguous Memory Allocator SeongJae Park These slides were presented during The Kernel Summit 2018 (https://events.linuxfoundation.org/events/linux-kernel-summit-2018/)
More informationDesign Tradeoffs for Data Deduplication Performance in Backup Workloads
Design Tradeoffs for Data Deduplication Performance in Backup Workloads Min Fu,DanFeng,YuHua,XubinHe, Zuoning Chen *, Wen Xia,YuchengZhang,YujuanTan Huazhong University of Science and Technology Virginia
More informationCS370 Operating Systems Midterm Review
CS370 Operating Systems Midterm Review Yashwant K Malaiya Fall 2015 Slides based on Text by Silberschatz, Galvin, Gagne 1 1 What is an Operating System? An OS is a program that acts an intermediary between
More informationTom Hart, University of Toronto Paul E. McKenney, IBM Beaverton Angela Demke Brown, University of Toronto
Making Lockless Synchronization Fast: Performance Implications of Memory Reclamation Tom Hart, University of Toronto Paul E. McKenney, IBM Beaverton Angela Demke Brown, University of Toronto Outline Motivation
More information