Object Duplication for Improving Reliability

Size: px
Start display at page:

Download "Object Duplication for Improving Reliability"

Transcription

1 Object Duplication for Improving Reliability G. Chen, G. Chen, M. Kandemir, N. Vijaykrishnan, M. J. Irwin Department of Computer Science and Engineering The Pennsylvania State University

2 Soft Errors S Current G D A particle strike n+ n channel n p substrate B Soft errors or transient errors are circuit errors caused due to excess charge carriers induced primarily by external radiations

3 Soft Errors Why soft errors become problematic? As CMOS device sizes decrease, the charge stored at each node decreases Potentially leads to a much higher rate of soft errors Low-power operating modes accentuates the soft error problem

4 Challenges for Soft Error Protection Balance several factors Cost Extra hardware required Flexibility Different requirements of multiple applications Overhead Performance, power, memory space Reliability

5 Java Virtual Machine (JVM) Java is widely used in embedded devices JVM has details about application s status and semantics error detection and recovery may be easier Heap is the dominant space consumer in JVM We focus on heap objects A B Free Space C Free Space

6 Checksum-based Schemes Error? A B C Checksum A B C Read Free Space Free Space A checksum for each field or each object Updated at write operations Checking is required for each read operation Error detection, but no error correction

7 Motivation for Object Duplication Average Heap Occupancy 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% auction calc firstaid image jpeg manyballs mvideo pushpuzzle AVERAGE Remaining heap can be used for other purposes, or example, storing object duplicates

8 Object Duplication Primary Area Duplicate Area D1 D2 D3 Free Space P3 P2 P1 Duplicate is updated on each write Duplicate is read when there is an error in the primary

9 Full Duplication Performance overhead Extra accesses on writes Read accesses when error happens Cache conflicts Performance overhead is very low Memory space requirement doubled Two ways to reduce memory space overhead Compression Selective duplication

10 Compression Based Duplication Primary Area Duplicate Area D1 D2 D3 Free Space P3 P2 P1 D1 D2 D3 Free Space P3 P2 P1

11 Compression Based Duplication All objects have compressed duplicates Performance overhead Compression on writes Decompression when primary copy corrupted Little overhead if the object is rarely updated Zero-removal compression/decompression Fast Java objects contains a lot of zero bytes

12 Life Cycle of an Object Write Read Drag Dead Unused Time Allocation First access Lifetime of object o Last reference removed Garbage Last access collected

13 Full Duplication Create duplicate Time range that duplicate exists Remove duplicate Drag Dead Allocation First access Lifetime of object o Time Last reference removed Garbage Last access collected

14 Selective Duplication Early termination based duplication Lazy duplication Allocation site based

15 Early Termination Based Create duplicate Remove duplicate Time range that duplicate exists Drag Dead Allocation First access Lifetime of object o Time Last reference removed Garbage Last access collected

16 Lazy Duplication Create duplicate Remove duplicate Time range that duplicate exists Drag Dead Allocation First access Lifetime of object o Time Last reference removed Garbage Last access collected

17 Allocation Site Based Based on profiling Sort allocation sites according to the access frequency of the object accessed Create duplicate at allocation sites leading to higher access frequency No duplicate creation at allocation sites leading to lower access frequency

18 Discussion of Selective Schemes Reliability is lower than full duplication Object life time Early termination based scheme favors shortliving objects Lazy duplication and allocation site based schemes favor long-living objects Static vs dynamic Early termination based and lazy duplication schemes are dynamic Allocation site based scheme is static

19 Experiment Setup Java Application KVM Shade MP Simulator Execution Cycles Memory Allocations Three types of statistics Heap space Error resilience Performance

20 Benchmarks Benchmark auction calc firstaid jpeg image manyballs mvideo pushpuzzle Description Ticket auction Calculator Firstaid information Jpeg viewer Photo album Bounding balls Video player Puzzle game

21 Allocated Heap Space auction calc CHK DUPL COMPDUPL DUPL increases the size of of the allocated heap space by a factor of of COMPDUPL reduces it it to to firstaid image jpeg manyballs mvideo pushpuzzle

22 350% 300% Heap Occupancy for Selective Schemes LAST-USE-100 LAST-USE-80 DUPL Heap Occupancy 250% 200% 150% 100% 50% LAST-USE-OPT COMPDUPL PRFL DELAYED Selective schemes performs well in in terms of of 0% heap space consumption. The ideal LAST-USE- OPT performs very well. PRFL and DELAYED are better than COMPDUPL. Time (K cycles)

23 Non-correctable Error Rates Percentage of Errors not Recovered 30% 25% 20% 15% 10% 5% 0% auction calc DUPL firstaid image jpeg COMPDUPL Average non-correctable error rate of of DUPL and COMPDUPL are 8.2% and 4.3%, respectively. manyballs mvideo pushpuzzle

24 Non-correctable Error Rates Percentage of Errors not recovered 80% 60% 40% 20% 0% auction No Duplicate Faulty Duplicate 98.3% 88.4% 89.1% calc Average non-correctable error rate of of LAST- USE-OPT, LAST-USE-100, LAST-USE-80, PRFL, From left to right: LAST-USE-OPT, LAST-USE-100, LASTand DELAYED USE-80, are 8.2%, PRFL, 8.2%, DELAYED. 50.2%, 19.1% and 41.6%, respectively. firstaid image jpeg manyballs mvideo pushpuzzle

25 Execution Cycles CHK DUPL COMPDUPL auction calc firstaid image jpeg Average execution cycles increase of of DUPL and COMPDUPL are 11.3% and 34.9%, respectively. manyballs mvideo pushpuzzle

26 Conclusion Object duplication improves data integrity and has good error coverage Compression reduces heap occupancy but increases execution cycles significantly Selective schemes help tradeoff heap space consumption, error recover rate, and performance

27 Thank you!

PennBench: A Benchmark Suite for Embedded Java

PennBench: A Benchmark Suite for Embedded Java WWC5 Austin, TX. Nov. 2002 PennBench: A Benchmark Suite for Embedded Java G. Chen, M. Kandemir, N. Vijaykrishnan, And M. J. Irwin Penn State University http://www.cse.psu.edu/~mdl Outline Introduction

More information

Heap Compression for Memory-Constrained Java

Heap Compression for Memory-Constrained Java Heap Compression for Memory-Constrained Java CSE Department, PSU G. Chen M. Kandemir N. Vijaykrishnan M. J. Irwin Sun Microsystems B. Mathiske M. Wolczko OOPSLA 03 October 26-30 2003 Overview PROBLEM:

More information

Heap Compression for Memory-Constrained Java Environments Λ

Heap Compression for Memory-Constrained Java Environments Λ Heap Compression for Memory-Constrained Java Environments Λ G. Chen, M. Kandemir, N. Vijaykrishnan, M. J. Irwin CSE Department The Pennsylvania State University University Park, PA 1682 fgchen,kandemir,vijay,mjigcse.psu.edu

More information

Analyzing Heap Error Behavior in Embedded JVM Environments

Analyzing Heap Error Behavior in Embedded JVM Environments Analyzing Heap Error Behavior in Embedded JVM Environments G. Chen, M. Kandemir, N. Vijaykrishnan, A. Sivasubramaniam, and M. J. Irwin Department of Computer Science and Engineering The Pennsylvania State

More information

Tracking Object Life Cycle for Leakage Energy Optimization Λ

Tracking Object Life Cycle for Leakage Energy Optimization Λ Tracking Object Life Cycle for Leakage Energy Optimization Λ G. Chen, N. Vijaykrishnan, M. Kandemir, M. J. Irwin Department of Computer Science and Engineering The Pennsylvania State University University

More information

Area-Efficient Error Protection for Caches

Area-Efficient Error Protection for Caches Area-Efficient Error Protection for Caches Soontae Kim Department of Computer Science and Engineering University of South Florida, FL 33620 sookim@cse.usf.edu Abstract Due to increasing concern about various

More information

CLOUD-SCALE FILE SYSTEMS

CLOUD-SCALE FILE SYSTEMS Data Management in the Cloud CLOUD-SCALE FILE SYSTEMS 92 Google File System (GFS) Designing a file system for the Cloud design assumptions design choices Architecture GFS Master GFS Chunkservers GFS Clients

More information

Soft Error and Energy Consumption Interactions: A Data Cache Perspective

Soft Error and Energy Consumption Interactions: A Data Cache Perspective Soft Error and Energy Consumption Interactions: A Data Cache Perspective Lin Li, Vijay Degalahal, N. Vijaykrishnan, Mahmut Kandemir, Mary Jane Irwin Department of Computer Science and Engineering Pennsylvania

More information

Tuning Garbage Collection for Reducing Memory System Energy in an Embedded Java Environment

Tuning Garbage Collection for Reducing Memory System Energy in an Embedded Java Environment Tuning Garbage Collection for Reducing Memory System Energy in an Embedded Java Environment G. CHEN, R. SHETTY, M. KANDEMIR, N. VIJAYKRISHNAN and M. J. IRWIN Microsystems Design Lab, The Pennsylvania State

More information

Garbage-First Garbage Collection by David Detlefs, Christine Flood, Steve Heller & Tony Printezis. Presented by Edward Raff

Garbage-First Garbage Collection by David Detlefs, Christine Flood, Steve Heller & Tony Printezis. Presented by Edward Raff Garbage-First Garbage Collection by David Detlefs, Christine Flood, Steve Heller & Tony Printezis Presented by Edward Raff Motivational Setup Java Enterprise World High end multiprocessor servers Large

More information

Impact of Java Compressed Heap on Mobile/Wireless Communication

Impact of Java Compressed Heap on Mobile/Wireless Communication Impact of Java Compressed Heap on Mobile/Wireless Communication Mayumi KATO and Chia-Tien Dan Lo Department of Computer Science University of Texas at San Antonio San Antonio, Texas 78249-667 fmayumik,

More information

The Google File System

The Google File System October 13, 2010 Based on: S. Ghemawat, H. Gobioff, and S.-T. Leung: The Google file system, in Proceedings ACM SOSP 2003, Lake George, NY, USA, October 2003. 1 Assumptions Interface Architecture Single

More information

Myths and Realities: The Performance Impact of Garbage Collection

Myths and Realities: The Performance Impact of Garbage Collection Myths and Realities: The Performance Impact of Garbage Collection Tapasya Patki February 17, 2011 1 Motivation Automatic memory management has numerous software engineering benefits from the developer

More information

Operating Systems. Lecture File system implementation. Master of Computer Science PUF - Hồ Chí Minh 2016/2017

Operating Systems. Lecture File system implementation. Master of Computer Science PUF - Hồ Chí Minh 2016/2017 Operating Systems Lecture 7.2 - File system implementation Adrien Krähenbühl Master of Computer Science PUF - Hồ Chí Minh 2016/2017 Design FAT or indexed allocation? UFS, FFS & Ext2 Journaling with Ext3

More information

Dynamic Memory Allocation

Dynamic Memory Allocation Dynamic Memory Allocation CS61, Lecture 10 Prof. Stephen Chong October 4, 2011 Announcements 1/2 Assignment 4: Malloc Will be released today May work in groups of one or two Please go to website and enter

More information

Performance Analysis of Java Communications with and without CORBA

Performance Analysis of Java Communications with and without CORBA Performance Analysis of Java Communications with and without CORBA Victor Giddings victor.giddings@ois.com 3 Objective Interface Systems, Inc. Purpose Analyze performance of various Java-based distribution

More information

Memory Allocation. Static Allocation. Dynamic Allocation. Dynamic Storage Allocation. CS 414: Operating Systems Spring 2008

Memory Allocation. Static Allocation. Dynamic Allocation. Dynamic Storage Allocation. CS 414: Operating Systems Spring 2008 Dynamic Storage Allocation CS 44: Operating Systems Spring 2 Memory Allocation Static Allocation (fixed in size) Sometimes we create data structures that are fixed and don t need to grow or shrink. Dynamic

More information

CS5460: Operating Systems Lecture 20: File System Reliability

CS5460: Operating Systems Lecture 20: File System Reliability CS5460: Operating Systems Lecture 20: File System Reliability File System Optimizations Modern Historic Technique Disk buffer cache Aggregated disk I/O Prefetching Disk head scheduling Disk interleaving

More information

SOFT 437. Software Performance Analysis. Chapter 11: Performance Antipatterns

SOFT 437. Software Performance Analysis. Chapter 11: Performance Antipatterns SOFT 437 Software Performance Analysis Chapter 11: Performance Antipatterns Antipatterns Design patterns document recurring solutions to common design problems The use (or misuse) of design patterns produces

More information

Using Scratchpad to Exploit Object Locality in Java

Using Scratchpad to Exploit Object Locality in Java Using Scratchpad to Exploit Object Locality in Java Carl S. Lebsack and J. Morris Chang Department of Electrical and Computer Engineering Iowa State University Ames, IA 50011 lebsack, morris@iastate.edu

More information

CS 31: Intro to Systems Virtual Memory. Kevin Webb Swarthmore College November 15, 2018

CS 31: Intro to Systems Virtual Memory. Kevin Webb Swarthmore College November 15, 2018 CS 31: Intro to Systems Virtual Memory Kevin Webb Swarthmore College November 15, 2018 Reading Quiz Memory Abstraction goal: make every process think it has the same memory layout. MUCH simpler for compiler

More information

A Study Paper on Performance Degradation due to Excessive Garbage Collection in Java Based Applications using Profiler

A Study Paper on Performance Degradation due to Excessive Garbage Collection in Java Based Applications using Profiler Abstract A Study Paper on Performance Degradation due to Excessive Garbage Collection in Java Based Applications using Profiler Applications are becoming more complex, more larger and demand high quality.

More information

Identifying the Sources of Cache Misses in Java Programs Without Relying on Hardware Counters. Hiroshi Inoue and Toshio Nakatani IBM Research - Tokyo

Identifying the Sources of Cache Misses in Java Programs Without Relying on Hardware Counters. Hiroshi Inoue and Toshio Nakatani IBM Research - Tokyo Identifying the Sources of Cache Misses in Java Programs Without Relying on Hardware Counters Hiroshi Inoue and Toshio Nakatani IBM Research - Tokyo June 15, 2012 ISMM 2012 at Beijing, China Motivation

More information

TSW Reliability and Fault Tolerance

TSW Reliability and Fault Tolerance TSW Reliability and Fault Tolerance Alexandre David 1.2.05 Credits: some slides by Alan Burns & Andy Wellings. Aims Understand the factors which affect the reliability of a system. Introduce how software

More information

Heap Management. Heap Allocation

Heap Management. Heap Allocation Heap Management Heap Allocation A very flexible storage allocation mechanism is heap allocation. Any number of data objects can be allocated and freed in a memory pool, called a heap. Heap allocation is

More information

ECE 669 Parallel Computer Architecture

ECE 669 Parallel Computer Architecture ECE 669 Parallel Computer Architecture Lecture 9 Workload Evaluation Outline Evaluation of applications is important Simulation of sample data sets provides important information Working sets indicate

More information

Compilers. Lecture 2 Overview. (original slides by Sam

Compilers. Lecture 2 Overview. (original slides by Sam Compilers Lecture 2 Overview Yannis Smaragdakis, U. Athens Yannis Smaragdakis, U. Athens (original slides by Sam Guyer@Tufts) Last time The compilation problem Source language High-level abstractions Easy

More information

Developing MapReduce Programs

Developing MapReduce Programs Cloud Computing Developing MapReduce Programs Dell Zhang Birkbeck, University of London 2017/18 MapReduce Algorithm Design MapReduce: Recap Programmers must specify two functions: map (k, v) * Takes

More information

EMSOFT 09 Yangwook Kang Ethan L. Miller Hongik Univ UC Santa Cruz 2009/11/09 Yongseok Oh

EMSOFT 09 Yangwook Kang Ethan L. Miller Hongik Univ UC Santa Cruz 2009/11/09 Yongseok Oh RCFFS : Adding Aggressive Error Correction to a high-performance Compressing Flash File System EMSOFT 09 Yangwook Kang Ethan L. Miller Hongik Univ UC Santa Cruz 2009/11/09 Yongseok Oh ysoh@uos.ac.kr 1

More information

Vertical Profiling: Understanding the Behavior of Object-Oriented Applications

Vertical Profiling: Understanding the Behavior of Object-Oriented Applications Vertical Profiling: Understanding the Behavior of Object-Oriented Applications Matthias Hauswirth, Amer Diwan University of Colorado at Boulder Peter F. Sweeney, Michael Hind IBM Thomas J. Watson Research

More information

Using Process-Level Redundancy to Exploit Multiple Cores for Transient Fault Tolerance

Using Process-Level Redundancy to Exploit Multiple Cores for Transient Fault Tolerance Using Process-Level Redundancy to Exploit Multiple Cores for Transient Fault Tolerance Outline Introduction and Motivation Software-centric Fault Detection Process-Level Redundancy Experimental Results

More information

CSE 373 OCTOBER 23 RD MEMORY AND HARDWARE

CSE 373 OCTOBER 23 RD MEMORY AND HARDWARE CSE 373 OCTOBER 23 RD MEMORY AND HARDWARE MEMORY ANALYSIS Similar to runtime analysis MEMORY ANALYSIS Similar to runtime analysis Consider the worst case MEMORY ANALYSIS Similar to runtime analysis Rather

More information

Jazz: A Tool for Demand-Driven Structural Testing

Jazz: A Tool for Demand-Driven Structural Testing Jazz: A Tool for Demand-Driven Structural Testing J. Misurda, J. A. Clause, J. L. Reed, P. Gandra, B. R. Childers, and M. L. Soffa Department of Computer Science University of Pittsburgh Pittsburgh, Pennsylvania

More information

Field Analysis. Last time Exploit encapsulation to improve memory system performance

Field Analysis. Last time Exploit encapsulation to improve memory system performance Field Analysis Last time Exploit encapsulation to improve memory system performance This time Exploit encapsulation to simplify analysis Two uses of field analysis Escape analysis Object inlining April

More information

Overview. Memory Classification Read-Only Memory (ROM) Random Access Memory (RAM) Functional Behavior of RAM. Implementing Static RAM

Overview. Memory Classification Read-Only Memory (ROM) Random Access Memory (RAM) Functional Behavior of RAM. Implementing Static RAM Memories Overview Memory Classification Read-Only Memory (ROM) Types of ROM PROM, EPROM, E 2 PROM Flash ROMs (Compact Flash, Secure Digital, Memory Stick) Random Access Memory (RAM) Types of RAM Static

More information

The Google File System

The Google File System The Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google SOSP 03, October 19 22, 2003, New York, USA Hyeon-Gyu Lee, and Yeong-Jae Woo Memory & Storage Architecture Lab. School

More information

Prefetching-Aware Cache Line Turnoff for Saving Leakage Energy

Prefetching-Aware Cache Line Turnoff for Saving Leakage Energy ing-aware Cache Line Turnoff for Saving Leakage Energy Ismail Kadayif Mahmut Kandemir Feihui Li Dept. of Computer Engineering Dept. of Computer Sci. & Eng. Dept. of Computer Sci. & Eng. Canakkale Onsekiz

More information

Lecture 9 Dynamic Compilation

Lecture 9 Dynamic Compilation Lecture 9 Dynamic Compilation I. Motivation & Background II. Overview III. Compilation Policy IV. Partial Method Compilation V. Partial Dead Code Elimination VI. Escape Analysis VII. Results Partial Method

More information

CA485 Ray Walshe Google File System

CA485 Ray Walshe Google File System Google File System Overview Google File System is scalable, distributed file system on inexpensive commodity hardware that provides: Fault Tolerance File system runs on hundreds or thousands of storage

More information

Flash File Systems Overview

Flash File Systems Overview Table of contents 1.0 Overview 3 1.1 Flash architecture 3 1.1.1 Partitions 3 1.1.2 Blocks 3 1.2 Programming data 3 1.3 Data integrity 4 2.0 Flash file system functions 4 2.1 Wear leveling 4 2.2 Reclaim

More information

JVM Performance Tuning with respect to Garbage Collection(GC) policies for WebSphere Application Server V6.1 - Part 1

JVM Performance Tuning with respect to Garbage Collection(GC) policies for WebSphere Application Server V6.1 - Part 1 IBM Software Group JVM Performance Tuning with respect to Garbage Collection(GC) policies for WebSphere Application Server V6.1 - Part 1 Giribabu Paramkusham Ajay Bhalodia WebSphere Support Technical Exchange

More information

Java On Steroids: Sun s High-Performance Java Implementation. History

Java On Steroids: Sun s High-Performance Java Implementation. History Java On Steroids: Sun s High-Performance Java Implementation Urs Hölzle Lars Bak Steffen Grarup Robert Griesemer Srdjan Mitrovic Sun Microsystems History First Java implementations: interpreters compact

More information

Compiler-Assisted Soft Error Correction by Duplicating Instructions for VLIW Architecture

Compiler-Assisted Soft Error Correction by Duplicating Instructions for VLIW Architecture R1-11 SASIMI 2012 Proceedings Compiler-Assisted Soft Error Correction by Duplicating Instructions for VLIW Architecture Yunrong Li 1, Jongwon Lee 1, Yohan Ko 2, Kyoungwoo Lee 2, and Yunheung Paek 1 1 School

More information

ARCHITECTURE DESIGN FOR SOFT ERRORS

ARCHITECTURE DESIGN FOR SOFT ERRORS ARCHITECTURE DESIGN FOR SOFT ERRORS Shubu Mukherjee ^ШВпШшр"* AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO T^"ТГПШГ SAN FRANCISCO SINGAPORE SYDNEY TOKYO ^ P f ^ ^ ELSEVIER Morgan

More information

JAVA PERFORMANCE. PR SW2 S18 Dr. Prähofer DI Leopoldseder

JAVA PERFORMANCE. PR SW2 S18 Dr. Prähofer DI Leopoldseder JAVA PERFORMANCE PR SW2 S18 Dr. Prähofer DI Leopoldseder OUTLINE 1. What is performance? 1. Benchmarking 2. What is Java performance? 1. Interpreter vs JIT 3. Tools to measure performance 4. Memory Performance

More information

Name, Scope, and Binding. Outline [1]

Name, Scope, and Binding. Outline [1] Name, Scope, and Binding In Text: Chapter 3 Outline [1] Variable Binding Storage bindings and lifetime Type bindings Type Checking Scope Lifetime vs. Scope Referencing Environments N. Meng, S. Arthur 2

More information

File Management By : Kaushik Vaghani

File Management By : Kaushik Vaghani File Management By : Kaushik Vaghani File Concept Access Methods File Types File Operations Directory Structure File-System Structure File Management Directory Implementation (Linear List, Hash Table)

More information

Parallel Streaming Computation on Error-Prone Processors. Yavuz Yetim, Margaret Martonosi, Sharad Malik

Parallel Streaming Computation on Error-Prone Processors. Yavuz Yetim, Margaret Martonosi, Sharad Malik Parallel Streaming Computation on Error-Prone Processors Yavuz Yetim, Margaret Martonosi, Sharad Malik Upsets/B muons/mb Average Number of Dopant Atoms Hardware Errors on the Rise Soft Errors Due to Cosmic

More information

DPA: A data pattern aware error prevention technique for NAND flash lifetime extension

DPA: A data pattern aware error prevention technique for NAND flash lifetime extension DPA: A data pattern aware error prevention technique for NAND flash lifetime extension *Jie Guo, *Zhijie Chen, **Danghui Wang, ***Zili Shao, *Yiran Chen *University of Pittsburgh **Northwestern Polytechnical

More information

Estimating the Impact of Heap Liveness Information on Space Consumption in Java

Estimating the Impact of Heap Liveness Information on Space Consumption in Java Estimating the Impact of Heap Liveness Information on Space Consumption in Java by R. Shaham, E. Kolodner and M. Sagiv first presented at ISSM'02 presentation: Adrian Moos Contents what is this about?

More information

Zettabyte Reliability with Flexible End-to-end Data Integrity

Zettabyte Reliability with Flexible End-to-end Data Integrity Zettabyte Reliability with Flexible End-to-end Data Integrity Yupu Zhang, Daniel Myers, Andrea Arpaci-Dusseau, Remzi Arpaci-Dusseau University of Wisconsin - Madison 5/9/2013 1 Data Corruption Imperfect

More information

Lazy Persistency: a High-Performing and Write-Efficient Software Persistency Technique

Lazy Persistency: a High-Performing and Write-Efficient Software Persistency Technique Lazy Persistency: a High-Performing and Write-Efficient Software Persistency Technique Mohammad Alshboul, James Tuck, and Yan Solihin Email: maalshbo@ncsu.edu ARPERS Research Group Introduction Future

More information

Reliability-Aware Co-synthesis for Embedded Systems

Reliability-Aware Co-synthesis for Embedded Systems Reliability-Aware Co-synthesis for Embedded Systems Y. Xie, L. Li, M. Kandemir, N. Vijaykrishnan, and M. J. Irwin Department of Computer Science and Engineering Pennsylvania State University {yuanxie,

More information

Signaling layered coding structures and the SVC payload format

Signaling layered coding structures and the SVC payload format Signaling layered coding structures and the SVC payload format Stephan Wenger 1 2005 Nokia V1-Filename.ppt / yyyy-mm-dd / Initials Topologies Simulcast, point-to-point Seems to be boring but layered coding

More information

Reliable Computing I

Reliable Computing I Instructor: Mehdi Tahoori Reliable Computing I Lecture 9: Concurrent Error Detection INSTITUTE OF COMPUTER ENGINEERING (ITEC) CHAIR FOR DEPENDABLE NANO COMPUTING (CDNC) National Research Center of the

More information

Introduction. Architecture Overview

Introduction. Architecture Overview Performance and Sizing Guide Version 17 November 2017 Contents Introduction... 5 Architecture Overview... 5 Performance and Scalability Considerations... 6 Vertical Scaling... 7 JVM Heap Sizes... 7 Hardware

More information

Concurrency for data-intensive applications

Concurrency for data-intensive applications Concurrency for data-intensive applications Dennis Kafura CS5204 Operating Systems 1 Jeff Dean Sanjay Ghemawat Dennis Kafura CS5204 Operating Systems 2 Motivation Application characteristics Large/massive

More information

The Logic of Physical Garbage Collection in Deduplicating Storage

The Logic of Physical Garbage Collection in Deduplicating Storage The Logic of Physical Garbage Collection in Deduplicating Storage Fred Douglis Abhinav Duggal Philip Shilane Tony Wong Dell EMC Shiqin Yan University of Chicago Fabiano Botelho Rubrik 1 Deduplication in

More information

Using Java for Scientific Computing. Mark Bul EPCC, University of Edinburgh

Using Java for Scientific Computing. Mark Bul EPCC, University of Edinburgh Using Java for Scientific Computing Mark Bul EPCC, University of Edinburgh markb@epcc.ed.ac.uk Java and Scientific Computing? Benefits of Java for Scientific Computing Portability Network centricity Software

More information

Programming Style and Optimisations - An Overview

Programming Style and Optimisations - An Overview Programming Style and Optimisations - An Overview Summary In this lesson we introduce some of the style and optimization features you may find useful to understand as a C++ Programmer. Note however this

More information

Types II. Hwansoo Han

Types II. Hwansoo Han Types II Hwansoo Han Arrays Most common and important composite data types Homogeneous elements, unlike records Fortran77 requires element type be scalar Elements can be any type (Fortran90, etc.) A mapping

More information

WITH the continuous decrease of CMOS feature size and

WITH the continuous decrease of CMOS feature size and IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 20, NO. 5, MAY 2012 777 IVF: Characterizing the Vulnerability of Microprocessor Structures to Intermittent Faults Songjun Pan, Student

More information

Garbage Collection. Hwansoo Han

Garbage Collection. Hwansoo Han Garbage Collection Hwansoo Han Heap Memory Garbage collection Automatically reclaim the space that the running program can never access again Performed by the runtime system Two parts of a garbage collector

More information

COMP 181 Compilers. Administrative. Last time. Prelude. Compilation strategy. Translation strategy. Lecture 2 Overview

COMP 181 Compilers. Administrative. Last time. Prelude. Compilation strategy. Translation strategy. Lecture 2 Overview COMP 181 Compilers Lecture 2 Overview September 7, 2006 Administrative Book? Hopefully: Compilers by Aho, Lam, Sethi, Ullman Mailing list Handouts? Programming assignments For next time, write a hello,

More information

Memory Management 3/29/14 21:38

Memory Management 3/29/14 21:38 Presentation for use with the textbook Data Structures and Algorithms in Java, 6 th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Wiley, 2014 Memory Management Diagram of a 4 4 plane of

More information

Chapter 8 :: Composite Types

Chapter 8 :: Composite Types Chapter 8 :: Composite Types Programming Language Pragmatics, Fourth Edition Michael L. Scott Copyright 2016 Elsevier 1 Chapter08_Composite_Types_4e - Tue November 21, 2017 Records (Structures) and Variants

More information

A JVM for Soft-Error-Prone Embedded Systems

A JVM for Soft-Error-Prone Embedded Systems A JVM for Soft-Error-Prone Embedded Systems Isabella S)lkerich, Michael Strotz, Christoph Erhardt, Mar7n Hoffmann, Daniel Lohmann, Fabian Scheler, Wolfgang Schröder- Preikschat Department of Computer Science

More information

IX: A Protected Dataplane Operating System for High Throughput and Low Latency

IX: A Protected Dataplane Operating System for High Throughput and Low Latency IX: A Protected Dataplane Operating System for High Throughput and Low Latency Belay, A. et al. Proc. of the 11th USENIX Symp. on OSDI, pp. 49-65, 2014. Reviewed by Chun-Yu and Xinghao Li Summary In this

More information

MultiJav: A Distributed Shared Memory System Based on Multiple Java Virtual Machines. MultiJav: Introduction

MultiJav: A Distributed Shared Memory System Based on Multiple Java Virtual Machines. MultiJav: Introduction : A Distributed Shared Memory System Based on Multiple Java Virtual Machines X. Chen and V.H. Allan Computer Science Department, Utah State University 1998 : Introduction Built on concurrency supported

More information

Error Resilience in Digital Integrated Circuits

Error Resilience in Digital Integrated Circuits Error Resilience in Digital Integrated Circuits Heinrich T. Vierhaus BTU Cottbus-Senftenberg Outline 1. Introduction 2. Faults and errors in nano-electronic circuits 3. Classical fault tolerant computing

More information

Dynamic Memory Allocation. Basic Concepts. Computer Organization 4/3/2012. CSC252 - Spring The malloc Package. Kai Shen

Dynamic Memory Allocation. Basic Concepts. Computer Organization 4/3/2012. CSC252 - Spring The malloc Package. Kai Shen Dynamic Memory Allocation: Basic Concepts Kai Shen Dynamic Memory Allocation Programmers use dynamic memory allocators (such as malloc) to acquire memory at run time. For data structures whose size is

More information

File systems CS 241. May 2, University of Illinois

File systems CS 241. May 2, University of Illinois File systems CS 241 May 2, 2014 University of Illinois 1 Announcements Finals approaching, know your times and conflicts Ours: Friday May 16, 8-11 am Inform us by Wed May 7 if you have to take a conflict

More information

Nooks. Robert Grimm New York University

Nooks. Robert Grimm New York University Nooks Robert Grimm New York University The Three Questions What is the problem? What is new or different? What are the contributions and limitations? Design and Implementation Nooks Overview An isolation

More information

Cloud-related Storage Research in Santa Cruz

Cloud-related Storage Research in Santa Cruz Cloud-related Storage Research in Santa Cruz Darrell Long University of California, Santa Cruz Trading Storage for Computation (and vice versa) 2 Trade Storage for Computation Inputs rocess Result Storing

More information

Computer Memory. Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1

Computer Memory. Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Computer Memory Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Warm Up public int sum1(int n, int m, int[][] table) { int output = 0; for (int i = 0; i < n; i++) { for (int j = 0; j

More information

CSE P 501 Compilers. Java Implementation JVMs, JITs &c Hal Perkins Winter /11/ Hal Perkins & UW CSE V-1

CSE P 501 Compilers. Java Implementation JVMs, JITs &c Hal Perkins Winter /11/ Hal Perkins & UW CSE V-1 CSE P 501 Compilers Java Implementation JVMs, JITs &c Hal Perkins Winter 2008 3/11/2008 2002-08 Hal Perkins & UW CSE V-1 Agenda Java virtual machine architecture.class files Class loading Execution engines

More information

Streaming Massive Environments From Zero to 200MPH

Streaming Massive Environments From Zero to 200MPH FORZA MOTORSPORT From Zero to 200MPH Chris Tector (Software Architect Turn 10 Studios) Turn 10 Internal studio at Microsoft Game Studios - we make Forza Motorsport Around 70 full time staff 2 Why am I

More information

CMSC 330: Organization of Programming Languages

CMSC 330: Organization of Programming Languages CMSC 330: Organization of Programming Languages Memory Management and Garbage Collection CMSC 330 - Spring 2013 1 Memory Attributes! Memory to store data in programming languages has the following lifecycle

More information

What is file compression? Redditch U3A Computer Users Group - File Compression

What is file compression? Redditch U3A Computer Users Group - File Compression What is file compression? Redditch U3A Computer Users Group - File Compression What is file compression? Why is it useful? What is file compression? Why is it useful? How can we do it? What is file compression?

More information

CS 136: Advanced Architecture. Review of Caches

CS 136: Advanced Architecture. Review of Caches 1 / 30 CS 136: Advanced Architecture Review of Caches 2 / 30 Why Caches? Introduction Basic goal: Size of cheapest memory... At speed of most expensive Locality makes it work Temporal locality: If you

More information

Contents. 8-1 Copyright (c) N. Afshartous

Contents. 8-1 Copyright (c) N. Afshartous Contents 1. Introduction 2. Types and Variables 3. Statements and Control Flow 4. Reading Input 5. Classes and Objects 6. Arrays 7. Methods 8. Scope and Lifetime 9. Utility classes 10 Introduction to Object-Oriented

More information

Particle Systems. Sample Particle System. What is a particle system? Types of Particle Systems. Stateless Particle System

Particle Systems. Sample Particle System. What is a particle system? Types of Particle Systems. Stateless Particle System Sample Particle System Particle Systems GPU Graphics Water Fire and Smoke What is a particle system? Types of Particle Systems One of the original uses was in the movie Star Trek II William Reeves (implementor)

More information

Basic Memory Management. Basic Memory Management. Address Binding. Running a user program. Operating Systems 10/14/2018 CSC 256/456 1

Basic Memory Management. Basic Memory Management. Address Binding. Running a user program. Operating Systems 10/14/2018 CSC 256/456 1 Basic Memory Management Program must be brought into memory and placed within a process for it to be run Basic Memory Management CS 256/456 Dept. of Computer Science, University of Rochester Mono-programming

More information

Google Disk Farm. Early days

Google Disk Farm. Early days Google Disk Farm Early days today CS 5204 Fall, 2007 2 Design Design factors Failures are common (built from inexpensive commodity components) Files large (multi-gb) mutation principally via appending

More information

the gamedesigninitiative at cornell university Lecture 13 Memory Management

the gamedesigninitiative at cornell university Lecture 13 Memory Management Lecture 13 Take-Aways for Today Why does memory in games matter? Is re a difference between PC and mobile? Where do consoles fit in all this? Do we need to worry about it in Java? Java has garbage collection

More information

WORT: Write Optimal Radix Tree for Persistent Memory Storage Systems

WORT: Write Optimal Radix Tree for Persistent Memory Storage Systems WORT: Write Optimal Radix Tree for Persistent Memory Storage Systems Se Kwon Lee K. Hyun Lim 1, Hyunsub Song, Beomseok Nam, Sam H. Noh UNIST 1 Hongik University Persistent Memory (PM) Persistent memory

More information

Name: Instructions. Problem 1 : Short answer. [63 points] CMU Storage Systems 12 Oct 2006 Fall 2006 Exam 1

Name: Instructions. Problem 1 : Short answer. [63 points] CMU Storage Systems 12 Oct 2006 Fall 2006 Exam 1 CMU 18 746 Storage Systems 12 Oct 2006 Fall 2006 Exam 1 Instructions Name: There are four (4) questions on the exam. You may find questions that could have several answers and require an explanation or

More information

On the Characterization of Data Cache Vulnerability in High-Performance Embedded Microprocessors

On the Characterization of Data Cache Vulnerability in High-Performance Embedded Microprocessors On the Characterization of Data Cache Vulnerability in High-Performance Embedded Microprocessors Shuai Wang, Jie Hu, and Sotirios G. Ziavras Department of Electrical and Computer Engineering New Jersey

More information

Do Your GC Logs Speak To You

Do Your GC Logs Speak To You Do Your GC Logs Speak To You Visualizing CMS, the (mostly) Concurrent Collector Copyright 2012 Kodewerk Ltd. All rights reserved About Me Consultant (www.kodewerk.com) performance tuning and training seminar

More information

Java Garbage Collection Best Practices For Tuning GC

Java Garbage Collection Best Practices For Tuning GC Neil Masson, Java Support Technical Lead Java Garbage Collection Best Practices For Tuning GC Overview Introduction to Generational Garbage Collection The tenured space aka the old generation The nursery

More information

Operating Systems. read the warning about the size of the project make sure you get the 6 th edition (or later) of the book

Operating Systems. read the warning about the size of the project make sure you get the 6 th edition (or later) of the book Review Syllabus Operating Systems read the warning about the size of the project make sure you get the 6 th edition (or later) of the book Class Grades Server Grades.cs.umd.edu Program #0 Handout its due

More information

Vector Architectures Vs. Superscalar and VLIW for Embedded Media Benchmarks

Vector Architectures Vs. Superscalar and VLIW for Embedded Media Benchmarks Vector Architectures Vs. Superscalar and VLIW for Embedded Media Benchmarks Christos Kozyrakis Stanford University David Patterson U.C. Berkeley http://csl.stanford.edu/~christos Motivation Ideal processor

More information

Embedded processors. Timo Töyry Department of Computer Science and Engineering Aalto University, School of Science timo.toyry(at)aalto.

Embedded processors. Timo Töyry Department of Computer Science and Engineering Aalto University, School of Science timo.toyry(at)aalto. Embedded processors Timo Töyry Department of Computer Science and Engineering Aalto University, School of Science timo.toyry(at)aalto.fi Comparing processors Evaluating processors Taxonomy of processors

More information

Low Power Cache Design. Angel Chen Joe Gambino

Low Power Cache Design. Angel Chen Joe Gambino Low Power Cache Design Angel Chen Joe Gambino Agenda Why is low power important? How does cache contribute to the power consumption of a processor? What are some design challenges for low power caches?

More information

! Design constraints. " Component failures are the norm. " Files are huge by traditional standards. ! POSIX-like

! Design constraints.  Component failures are the norm.  Files are huge by traditional standards. ! POSIX-like Cloud background Google File System! Warehouse scale systems " 10K-100K nodes " 50MW (1 MW = 1,000 houses) " Power efficient! Located near cheap power! Passive cooling! Power Usage Effectiveness = Total

More information

Classifying Information Stored in Memory! Memory Management in a Uniprogrammed System! Segments of a Process! Processing a User Program!

Classifying Information Stored in Memory! Memory Management in a Uniprogrammed System! Segments of a Process! Processing a User Program! Memory Management in a Uniprogrammed System! A! gets a fixed segment of (usually highest )"! One process executes at a time in a single segment"! Process is always loaded at "! Compiler and linker generate

More information

Deploying VSaaS and Hosted Solutions using CompleteView

Deploying VSaaS and Hosted Solutions using CompleteView SALIENT SYSTEMS WHITE PAPER Deploying VSaaS and Hosted Solutions using CompleteView Understanding the benefits of CompleteView for hosted solutions and successful deployment architectures. Salient Systems

More information

Making the Fast Case Common and the Uncommon Case Simple in Unbounded Transactional Memory

Making the Fast Case Common and the Uncommon Case Simple in Unbounded Transactional Memory Making the Fast Case Common and the Uncommon Case Simple in Unbounded Transactional Memory Colin Blundell (University of Pennsylvania) Joe Devietti (University of Pennsylvania) E Christopher Lewis (VMware,

More information

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc.

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc. Direct Link Communication I: Basic Techniques Link speed unit: bps abstraction Data Transmission ignore carrier frequency, coding etc. Point-to-point link: wired or wireless includes broadcast case Interested

More information

Java Performance: The Definitive Guide

Java Performance: The Definitive Guide Java Performance: The Definitive Guide Scott Oaks Beijing Cambridge Farnham Kbln Sebastopol Tokyo O'REILLY Table of Contents Preface ix 1. Introduction 1 A Brief Outline 2 Platforms and Conventions 2 JVM

More information