Using Chunked Extendible Array for Physical Storage of Scientific Datasets

Size: px
Start display at page:

Download "Using Chunked Extendible Array for Physical Storage of Scientific Datasets"

Transcription

1 Using Chunked Extendible Array for Physical Storage of Scientific Datasets E.J Otoo, G. Nimako and D. Ohene-Kwofie School of Computer Science The University of the Witwatersrand Johannesburg, South Africa Sponsored By: CHPC 12, National Meeting

2 Introduction The conceptual model of a dataset as a multidimensional array has been around since the early days of relational database model. Records of multi-attribute files, perceived as points in multi-dimensional space, form the bases of many of the efficient data structures and algorithms. Examples: KD-Tree, Quad-Tree, Grid-File, multi-dimensional OLAP and data warehousing. Scientific data-sets are maintained predominantly as multi-dimensional arrays - HDF5, NetCDF, New SciDB, etc. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 2 / 26

3 Introduction The conceptual model of a dataset as a multidimensional array has been around since the early days of relational database model. Records of multi-attribute files, perceived as points in multi-dimensional space, form the bases of many of the efficient data structures and algorithms. Examples: KD-Tree, Quad-Tree, Grid-File, multi-dimensional OLAP and data warehousing. Scientific data-sets are maintained predominantly as multi-dimensional arrays - HDF5, NetCDF, New SciDB, etc. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 2 / 26

4 Motivation Processing massively large scientific data (Big Data), in the realm of Peta-scale and Exa-scale computing is with the Partitioned Global Address Space (PGAS) computational model. The PGAS computational model are exemplified by: Global Array Toolkit Unified Parallel C (UPC) OpenShmem The database consistent with this model of computation is SciDB It is an Array Data Model on shared nothing parallel architectures with unbounded non-uniform dimensions with holes, arbitrary nesting, sophisticated storage representations, including overlapping chunks, etc. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 3 / 26

5 Motivation: The Global Array Toolkit Distributed dense arrays that can be accessed through a shared memory-like style Single, shared data structure/global indexing Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 4 / 26

6 Motivation: The Global Array Toolkit Distributed dense arrays that can be accessed through a shared memory-like style Single, shared data structure/global indexing Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 4 / 26

7 Motivation: The SciDB Basic Architecture Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 5 / 26

8 Multidimensional Array Files Mapping of conventional array elements onto linear storage, using row-major or column-major order allows for extendability of the array in only one dimension. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 6 / 26

9 Multidimensional Array Files Mapping of conventional array elements onto linear storage, using row-major or column-major order allows for extendability of the array in only one dimension. The question then arises: How can we store arrays elements so that the index range of any dimension can be extended? Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 6 / 26

10 Multidimensional Array Files Mapping of conventional array elements onto linear storage, using row-major or column-major order allows for extendability of the array in only one dimension. The question then arises: How can we store arrays elements so that the index range of any dimension can be extended? The problem has been addressed in some earlier papers. Notably by : A. Rosenberg and L. Stockmeyer [1977]; Tsuji, M. Kuroda and K. Higuchi [2008]; E. Otoo and D. Rotem [2006]; K. M. Azharul Hasan, Tatsuo Tsuji [2011]; Extendible Arrays for Multidimensional Databases: Concept, Implementation and Evaluation Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 6 / 26

11 The Problem Statement Problem Definition Let A[U 0 ][U 1 ]... [U k 1 ], denote a k-dimensional array where U j, 0 j < k 1, is the bound on the indices of the dimension j that is allowed to extend arbitrary. Let L = {l 0, l 1..., l n 1,..., }, be a sequence of consecutive storage locations where n = k 1 j=0 U j. Define a computable access function F () that maps the k-dimensional indices one-to-one, onto the sequence of consecutive indices {0, 1,..., n 1,..., }, without reallocating previously allocated elements when a bound of the array is extended. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 7 / 26

12 Our Main Results and Contributions We present a computable access function F ( i 0, i 1,..., i k 1 ) that maps the k-dimensional index i 0, i 1,..., i k 1 to a value that gives the linear address location l j in time O(k + log N) using O(k 2 N 1/k ) addition space. This allows us to store elements of extendible array directly as array-files. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 8 / 26

13 Our Main Results and Contributions We present a computable access function F ( i 0, i 1,..., i k 1 ) that maps the k-dimensional index i 0, i 1,..., i k 1 to a value that gives the linear address location l j in time O(k + log N) using O(k 2 N 1/k ) addition space. This allows us to store elements of extendible array directly as array-files. Given j we can compute an inverse function F 1 (j) to derive the k-dimensional index i 0, i 1,..., i k 1 in time O(k + log N). Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 8 / 26

14 Our Main Results and Contributions We present a computable access function F ( i 0, i 1,..., i k 1 ) that maps the k-dimensional index i 0, i 1,..., i k 1 to a value that gives the linear address location l j in time O(k + log N) using O(k 2 N 1/k ) addition space. This allows us to store elements of extendible array directly as array-files. Given j we can compute an inverse function F 1 (j) to derive the k-dimensional index i 0, i 1,..., i k 1 in time O(k + log N). We introduce a data structure, the O 2 -Tree, a modified Red-Black-Tree, to store some vectors of values associated with each dimension. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 8 / 26

15 Our Main Results and Contributions We present a computable access function F ( i 0, i 1,..., i k 1 ) that maps the k-dimensional index i 0, i 1,..., i k 1 to a value that gives the linear address location l j in time O(k + log N) using O(k 2 N 1/k ) addition space. This allows us to store elements of extendible array directly as array-files. Given j we can compute an inverse function F 1 (j) to derive the k-dimensional index i 0, i 1,..., i k 1 in time O(k + log N). We introduce a data structure, the O 2 -Tree, a modified Red-Black-Tree, to store some vectors of values associated with each dimension. We chunk the array, to align with the paging scheme of a file-system, so that I/O units are in chunks. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 8 / 26

16 Road Map for the Rest of the Talk Conventional arrays of simple elements Extendible arrays of data Chunked extendible arrays Some experimental results Usage in a distributed parallel environment Summary Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 9 / 26

17 Conventional Array Using Row-Major Ordering Consider an 3-D array A[U 0 ][U 1 ][U 2 ] whose elements are allocated in row-major order. The location of an element A i 0, i 1, i 2, is given by loc(a 0, 0, 0 + q where q is computed as: q = i 0 C 0 + i 1 C 1 + i 2 C 2 and C 0 = U 1 U 2 C 1 = U 2 C 2 = 1 The values C 0, C 1, C 2 are held in the dope-vector. This reveals the strategy of our allocation scheme. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 10 / 26

18 Linear Mapping for a Dense Extendible Array The mapping function for extendible array uses axial-vectors to store information that includes the dope-vector at the time of extending the dimension A list of axial-vectors is maintained for each dimension. Let A[U 0 ][U 1 ][U 2 ] be an arbitrary 3-dimensional array, where U j implies that the bound can be extended. Similarly we employ the notation: F() when referring to conventional array mapping function. F () when referring to a mapping function for an extendible array. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 11 / 26

19 Linear Mapping for a Dense Extendible Array The mapping function for extendible array uses axial-vectors to store information that includes the dope-vector at the time of extending the dimension A list of axial-vectors is maintained for each dimension. Let A[U 0 ][U 1 ][U 2 ] be an arbitrary 3-dimensional array, where U j implies that the bound can be extended. Similarly we employ the notation: F() when referring to conventional array mapping function. F () when referring to a mapping function for an extendible array. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 11 / 26

20 Linear Mapping for a Dense Extendible Array The mapping function for extendible array uses axial-vectors to store information that includes the dope-vector at the time of extending the dimension A list of axial-vectors is maintained for each dimension. Let A[U 0 ][U 1 ][U 2 ] be an arbitrary 3-dimensional array, where U j implies that the bound can be extended. Similarly we employ the notation: F() when referring to conventional array mapping function. F () when referring to a mapping function for an extendible array. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 11 / 26

21 Illustration of the Linear Mapping for a Dense Extendible Array Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 12 / 26

22 Illustration of the Linear Mapping for a Dense Extendible Array Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 12 / 26

23 Linear Mapping for a Dense Extendible Array Suppose that in a k-dimensional extendible array A[U 0][U 1][U 2]...[U k 1 ], dimension l is extended by λ l, then the index range increases from U l to U l + λ l. Let the location A 0, 0,..., U l,..., 0 (i.e. the starting location of an allocated hyperslab ) be denoted as l Z 0 where Z 0 U U = k 1 l r=0 U r. l The Mapping Function k 1 q = F ( i 0, i 1, i 2,..., i k 1 )) = Z 0 U + (i l U l )C l + i j Cj l j=0 j l k 1 Cl = U j j=0 j l C j = k 1 r=j+1 r l U r Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 13 / 26

24 Linear Mapping for a Dense Extendible Array Suppose that in a k-dimensional extendible array A[U 0][U 1][U 2]...[U k 1 ], dimension l is extended by λ l, then the index range increases from U l to U l + λ l. Let the location A 0, 0,..., U l,..., 0 (i.e. the starting location of an allocated hyperslab ) be denoted as l Z 0 where Z 0 U U = k 1 l r=0 U r. l The Mapping Function k 1 q = F ( i 0, i 1, i 2,..., i k 1 )) = Z 0 U + (i l U l )C l + i j Cj l j=0 j l k 1 Cl = U j j=0 j l C j = k 1 r=j+1 r l U r Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 13 / 26

25 Chunking Extendible Dense Arrays The use of the list for axial-vectors can be expensive and depends in particular on the interruptible expansions. (worst case is when we have cubical extensions). Such interruptible expansions cause the addition of a new entry in the list of axial vectors. Chunking the array gives some additional advantages: It gives contiguous storage allocations for the elements of the chunks. When arrays are allocated onto secondary storage, I/O can be made in multiples of the chunk size. The allocation is done in chunks as opposed to the single elements. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 14 / 26

26 Chunking Extendible Dense Arrays The use of the list for axial-vectors can be expensive and depends in particular on the interruptible expansions. (worst case is when we have cubical extensions). Such interruptible expansions cause the addition of a new entry in the list of axial vectors. Chunking the array gives some additional advantages: It gives contiguous storage allocations for the elements of the chunks. When arrays are allocated onto secondary storage, I/O can be made in multiples of the chunk size. The allocation is done in chunks as opposed to the single elements. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 14 / 26

27 Chunking Extendible Dense Arrays, Cont. Given a chunked block Q[χ 0 ][χ 1 ][χ 2 ]...[χ k 1 ], the number of chunk indices, ρ i for a given dimension i, is given by: U ρ i = i χ i The allocation of chunks, denoted by A c, becomes A c [ρ 0 ][ρ 1 ][ρ 2 ]...[ρ k 1 ]. An entry is made to the requisite axial-vector only if: [U l + λ l] > [ρ l χ l ] The number of chunk indices ρ l to be allocated is given by: [U ρ l = l + λ l ] [ρ l χ l ] χ l Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 15 / 26

28 Chunking Extendible Dense Arrays, Cont. Given a chunked block Q[χ 0 ][χ 1 ][χ 2 ]...[χ k 1 ], the number of chunk indices, ρ i for a given dimension i, is given by: U ρ i = i χ i The allocation of chunks, denoted by A c, becomes A c [ρ 0 ][ρ 1 ][ρ 2 ]...[ρ k 1 ]. An entry is made to the requisite axial-vector only if: [U l + λ l] > [ρ l χ l ] The number of chunk indices ρ l to be allocated is given by: [U ρ l = l + λ l ] [ρ l χ l ] χ l Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 15 / 26

29 Illustration of Chunked Extendible Dense Arrays Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 16 / 26

30 Chunked Extendible Dense Array Mapping To alocate an array element A i 0, i 1, i 2,..., i k 1, the values of the k-dimensional index i 0, i 1, i 2,..., i k 1 are translated into values of a chunk index j 0, j 1, j 2,..., j k 1 where ii j i = The starting address, q c of the chunk containing A i 0, i 1, i 2,..., i k 1 can be found by: The Mapping Function for Chunked Extendible Array k 1 qc = F ( j 0, j 1, j 2,..., j k 1 )) = Z 0 ρ l + (j l ρ l )Cl + C l = C m = k 1 m=0 m l k 1 χ i ρ m r=m+1 r l ρ r m=0 m l j mc m Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 17 / 26

31 Chunked Extendible Dense Array Mapping To alocate an array element A i 0, i 1, i 2,..., i k 1, the values of the k-dimensional index i 0, i 1, i 2,..., i k 1 are translated into values of a chunk index j 0, j 1, j 2,..., j k 1 where ii j i = The starting address, q c of the chunk containing A i 0, i 1, i 2,..., i k 1 can be found by: The Mapping Function for Chunked Extendible Array k 1 qc = F ( j 0, j 1, j 2,..., j k 1 )) = Z 0 ρ l + (j l ρ l )Cl + C l = C m = k 1 m=0 m l k 1 χ i ρ m r=m+1 r l ρ r m=0 m l j mc m Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 17 / 26

32 Chunked Extendible Dense Array Mapping, Cont. To compute the address of A i 0, i 1, i 2,..., i k 1 within the local chunk, the input indices i 0, i 1, i 2,..., i k 1 needs to be translated to local chunk indices i c0, i c1, i c2,..., i c(k 1) by: i cm = (i m mod χ m ) The address of A i 0, i 1, i 2,..., i k 1 is only a displacement within the chunk. This can be done by using a row-major order or column-major order. If the chunk size is 2 n where n 2, then the Z-order sequence or Peano-Hilbert space filling curve can be used. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 18 / 26

33 Chunked Extendible Dense Array Mapping, Cont. To compute the address of A i 0, i 1, i 2,..., i k 1 within the local chunk, the input indices i 0, i 1, i 2,..., i k 1 needs to be translated to local chunk indices i c0, i c1, i c2,..., i c(k 1) by: i cm = (i m mod χ m ) The address of A i 0, i 1, i 2,..., i k 1 is only a displacement within the chunk. This can be done by using a row-major order or column-major order. If the chunk size is 2 n where n 2, then the Z-order sequence or Peano-Hilbert space filling curve can be used. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 18 / 26

34 Axial-Vectors as Memory Resident O 2 -Tree A new approach to maintaining the these axial-vectors in memory is with the use of O 2 -Tree. An O 2 -Tree is an augmented Red-Black Tree with data records stored only at the leaf nodes. A metadata file F m stores the records that correspond to the leaf nodes of the O 2 -Tree. These records in F m is used to reconstruct the memory resident O 2 -Tree. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 19 / 26

35 Axial-Vectors as Memory Resident O 2 -Tree A new approach to maintaining the these axial-vectors in memory is with the use of O 2 -Tree. An O 2 -Tree is an augmented Red-Black Tree with data records stored only at the leaf nodes. A metadata file F m stores the records that correspond to the leaf nodes of the O 2 -Tree. These records in F m is used to reconstruct the memory resident O 2 -Tree. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 19 / 26

36 Axial-Vectors as Memory Resident O 2 -Tree, Cont. General Structure of the O 2-Tree : Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 20 / 26

37 Experimental Results - I Average Access Cost without Extensions (in Memory) Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 21 / 26

38 Experimental Results - II Total Access Cost for Interleaved Extensions in Memory Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 22 / 26

39 Experimental Results - III Total Access Cost for Interleaved Extensions on Disk Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 23 / 26

40 Experimental Results - IV Storage Utilisation for Chunked Extendible Array Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 24 / 26

41 Summary and Future Work We have shown how chunked extendible dense arrays can be implemented as an array file. Array elements can be accessed into and out of memory in multiples of chunks with the aid of a computed access mapping function. The organisation of extendible arrays using such a mapping function is highly appropriate for most scientific datasets where the model of the data is perceived as a large multi-dimensional array. The appropriate APIs for integrating our scheme with the Global Array Toolkit and as a storage engine for SciDB - Elastic Partitioned Global Address Store (EPGAS) Main application areas is for hyper-spectral image processing and a host other scientific applications that are based on multidimensional data models. Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 25 / 26

42 Thanks! Thank You Questions? Otoo,Nimako&Ohene-Kwofie () Using Chunked Ext... CHPC 12, National Meeting 26 / 26

Chunked Extendible Arrays and its Integration with the Global Array Toolkit for Parallel Image Processing

Chunked Extendible Arrays and its Integration with the Global Array Toolkit for Parallel Image Processing Chunked Extendible Arrays and its Integration with the Global Array Toolkit for Parallel Image Processing Gideon Nimako A thesis submitted to the Faculty of Engineering and the Built Environment in fulfilment

More information

Parallel and Distributed Access of Dense Multidimensional Extendible Array Files (Extended Abstract)

Parallel and Distributed Access of Dense Multidimensional Extendible Array Files (Extended Abstract) Parallel and Distributed Access of Dense Multidimensional Extendible Array Files (Extended Abstract) Ekow J. Otoo Lawrence Berkeley National Laboratory, Cyclotron Road, University of California Berkeley,

More information

Cost Models for Query Processing Strategies in the Active Data Repository

Cost Models for Query Processing Strategies in the Active Data Repository Cost Models for Query rocessing Strategies in the Active Data Repository Chialin Chang Institute for Advanced Computer Studies and Department of Computer Science University of Maryland, College ark 272

More information

Advances in Data Management Principles of Database Systems - 2 A.Poulovassilis

Advances in Data Management Principles of Database Systems - 2 A.Poulovassilis 1 Advances in Data Management Principles of Database Systems - 2 A.Poulovassilis 1 Storing data on disk The traditional storage hierarchy for DBMSs is: 1. main memory (primary storage) for data currently

More information

Operating systems. Part 1. Module 11 Main memory introduction. Tami Sorgente 1

Operating systems. Part 1. Module 11 Main memory introduction. Tami Sorgente 1 Operating systems Module 11 Main memory introduction Part 1 Tami Sorgente 1 MODULE 11 MAIN MEMORY INTRODUCTION Background Swapping Contiguous Memory Allocation Noncontiguous Memory Allocation o Segmentation

More information

The Memory Management Unit. Operating Systems. Autumn CS4023

The Memory Management Unit. Operating Systems. Autumn CS4023 Operating Systems Autumn 2017-2018 Outline The Memory Management Unit 1 The Memory Management Unit Logical vs. Physical Address Space The concept of a logical address space that is bound to a separate

More information

COSC160: Data Structures Hashing Structures. Jeremy Bolton, PhD Assistant Teaching Professor

COSC160: Data Structures Hashing Structures. Jeremy Bolton, PhD Assistant Teaching Professor COSC160: Data Structures Hashing Structures Jeremy Bolton, PhD Assistant Teaching Professor Outline I. Hashing Structures I. Motivation and Review II. Hash Functions III. HashTables I. Implementations

More information

Introduction to Indexing R-trees. Hong Kong University of Science and Technology

Introduction to Indexing R-trees. Hong Kong University of Science and Technology Introduction to Indexing R-trees Dimitris Papadias Hong Kong University of Science and Technology 1 Introduction to Indexing 1. Assume that you work in a government office, and you maintain the records

More information

Q1. What is Deadlock? Explain essential conditions for deadlock to occur?

Q1. What is Deadlock? Explain essential conditions for deadlock to occur? II nd Midterm session 2017-18 Subject: Operating System ( V CSE-B ) Q1. What is Deadlock? Explain essential conditions for deadlock to occur? In a multiprogramming environment, several processes may compete

More information

An Efficient Transformation for Klee s Measure Problem in the Streaming Model Abstract Given a stream of rectangles over a discrete space, we consider the problem of computing the total number of distinct

More information

memory management Vaibhav Bajpai

memory management Vaibhav Bajpai memory management Vaibhav Bajpai OS 2013 motivation virtualize resources: multiplex CPU multiplex memory (CPU scheduling) (memory management) why manage memory? controlled overlap processes should NOT

More information

Background. Contiguous Memory Allocation

Background. Contiguous Memory Allocation Operating System Lecture 8 2017.5.9 Chapter 8 (Main Memory) Background Swapping Contiguous Memory Allocation Segmentation - Paging Memory Management Selection of a memory-management method for a specific

More information

Chapter 8: Memory Management. Operating System Concepts with Java 8 th Edition

Chapter 8: Memory Management. Operating System Concepts with Java 8 th Edition Chapter 8: Memory Management 8.1 Silberschatz, Galvin and Gagne 2009 Background Program must be brought (from disk) into memory and placed within a process for it to be run Main memory and registers are

More information

Quadrant-Based MBR-Tree Indexing Technique for Range Query Over HBase

Quadrant-Based MBR-Tree Indexing Technique for Range Query Over HBase Quadrant-Based MBR-Tree Indexing Technique for Range Query Over HBase Bumjoon Jo and Sungwon Jung (&) Department of Computer Science and Engineering, Sogang University, 35 Baekbeom-ro, Mapo-gu, Seoul 04107,

More information

HDF5 I/O Performance. HDF and HDF-EOS Workshop VI December 5, 2002

HDF5 I/O Performance. HDF and HDF-EOS Workshop VI December 5, 2002 HDF5 I/O Performance HDF and HDF-EOS Workshop VI December 5, 2002 1 Goal of this talk Give an overview of the HDF5 Library tuning knobs for sequential and parallel performance 2 Challenging task HDF5 Library

More information

SciSpark 201. Searching for MCCs

SciSpark 201. Searching for MCCs SciSpark 201 Searching for MCCs Agenda for 201: Access your SciSpark & Notebook VM (personal sandbox) Quick recap. of SciSpark Project What is Spark? SciSpark Extensions scitensor: N-dimensional arrays

More information

Cluster Analysis. Mu-Chun Su. Department of Computer Science and Information Engineering National Central University 2003/3/11 1

Cluster Analysis. Mu-Chun Su. Department of Computer Science and Information Engineering National Central University 2003/3/11 1 Cluster Analysis Mu-Chun Su Department of Computer Science and Information Engineering National Central University 2003/3/11 1 Introduction Cluster analysis is the formal study of algorithms and methods

More information

Administrivia. Deadlock Prevention Techniques. Handling Deadlock. Deadlock Avoidance

Administrivia. Deadlock Prevention Techniques. Handling Deadlock. Deadlock Avoidance Administrivia Project discussion? Last time Wrapped up deadlock Today: Start memory management SUNY-BINGHAMTON CS35 SPRING 8 LEC. #13 1 Handling Deadlock Deadlock Prevention Techniques Prevent hold and

More information

Chapter 9: Memory Management. Background

Chapter 9: Memory Management. Background 1 Chapter 9: Memory Management Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 9.1 Background Program must be brought into memory and placed within a process for

More information

Memory Management. Memory Management

Memory Management. Memory Management Memory Management Gordon College Stephen Brinton Memory Management Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 1 Background Program must be brought into memory

More information

CS307 Operating Systems Main Memory

CS307 Operating Systems Main Memory CS307 Main Memory Fan Wu Department of Computer Science and Engineering Shanghai Jiao Tong University Spring 2018 Background Program must be brought (from disk) into memory and placed within a process

More information

Memory Management. Memory Management

Memory Management. Memory Management Memory Management Chapter 7 1 Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated efficiently to pack as many processes into memory as possible 2 1 Memory

More information

File Systems. OS Overview I/O. Swap. Management. Operations CPU. Hard Drive. Management. Memory. Hard Drive. CSI3131 Topics. Structure.

File Systems. OS Overview I/O. Swap. Management. Operations CPU. Hard Drive. Management. Memory. Hard Drive. CSI3131 Topics. Structure. File Systems I/O Management Hard Drive Management Virtual Memory Swap Memory Management Storage and I/O Introduction CSI3131 Topics Process Management Computing Systems Memory CPU Peripherals Processes

More information

Virtual Memory. CSCI 315 Operating Systems Design Department of Computer Science

Virtual Memory. CSCI 315 Operating Systems Design Department of Computer Science Virtual Memory CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture have been largely based on those from an earlier edition of the course text Operating

More information

Compressing Relations and Indexes Jonathan Goldstein, Raghu Ramakrishnan, and Uri Shaft 1 Database Talk Speaker : Jonathan Goldstein Microsoft Researc

Compressing Relations and Indexes Jonathan Goldstein, Raghu Ramakrishnan, and Uri Shaft 1 Database Talk Speaker : Jonathan Goldstein Microsoft Researc Compressing Relations and Indexes Jonathan Goldstein, Raghu Ramakrishnan, and Uri Shaft 1 Database Talk Speaker : Jonathan Goldstein Microsoft Research OVERVIEW ffl Motivation ffl Compressing relations

More information

Introduction to NetCDF

Introduction to NetCDF Introduction to NetCDF NetCDF is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. First released in 1989.

More information

Main Memory (Part I)

Main Memory (Part I) Main Memory (Part I) Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Amir H. Payberah (Tehran Polytechnic) Main Memory 1393/8/5 1 / 47 Motivation and Background Amir

More information

Leveraging Set Relations in Exact Set Similarity Join

Leveraging Set Relations in Exact Set Similarity Join Leveraging Set Relations in Exact Set Similarity Join Xubo Wang, Lu Qin, Xuemin Lin, Ying Zhang, and Lijun Chang University of New South Wales, Australia University of Technology Sydney, Australia {xwang,lxue,ljchang}@cse.unsw.edu.au,

More information

Part Three - Memory Management. Chapter 8: Memory-Management Strategies

Part Three - Memory Management. Chapter 8: Memory-Management Strategies Part Three - Memory Management Chapter 8: Memory-Management Strategies Chapter 8: Memory-Management Strategies 8.1 Background 8.2 Swapping 8.3 Contiguous Memory Allocation 8.4 Segmentation 8.5 Paging 8.6

More information

Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation

Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation Basic Hardware Address Binding Logical VS Physical Address Space Dynamic Loading Dynamic Linking and Shared

More information

Caching and Buffering in HDF5

Caching and Buffering in HDF5 Caching and Buffering in HDF5 September 9, 2008 SPEEDUP Workshop - HDF5 Tutorial 1 Software stack Life cycle: What happens to data when it is transferred from application buffer to HDF5 file and from HDF5

More information

Memory Management. Memory Management Requirements

Memory Management. Memory Management Requirements Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated to ensure a reasonable supply of ready processes to consume available processor time 1 Memory Management

More information

COSC 6374 Parallel Computation. Scientific Data Libraries. Edgar Gabriel Fall Motivation

COSC 6374 Parallel Computation. Scientific Data Libraries. Edgar Gabriel Fall Motivation COSC 6374 Parallel Computation Scientific Data Libraries Edgar Gabriel Fall 2013 Motivation MPI I/O is good It knows about data types (=> data conversion) It can optimize various access patterns in applications

More information

6 - Main Memory EECE 315 (101) ECE UBC 2013 W2

6 - Main Memory EECE 315 (101) ECE UBC 2013 W2 6 - Main Memory EECE 315 (101) ECE UBC 2013 W2 Acknowledgement: This set of slides is partly based on the PPTs provided by the Wiley s companion website (including textbook images, when not explicitly

More information

Last Class: Deadlocks. Where we are in the course

Last Class: Deadlocks. Where we are in the course Last Class: Deadlocks Necessary conditions for deadlock: Mutual exclusion Hold and wait No preemption Circular wait Ways of handling deadlock Deadlock detection and recovery Deadlock prevention Deadlock

More information

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation

More information

Goals of Memory Management

Goals of Memory Management Memory Management Goals of Memory Management Allocate available memory efficiently to multiple processes Main functions Allocate memory to processes when needed Keep track of what memory is used and what

More information

Multidimensional Data and Modelling - DBMS

Multidimensional Data and Modelling - DBMS Multidimensional Data and Modelling - DBMS 1 DBMS-centric approach Summary: l Spatial data is considered as another type of data beside conventional data in a DBMS. l Enabling advantages of DBMS (data

More information

Chapter 8: Memory Management

Chapter 8: Memory Management Chapter 8: Memory Management Chapter 8: Memory Management Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 8.2 Background Program must be brought into memory and placed

More information

School of Computing & Singapore-MIT Alliance, National University of Singapore {cuibin, lindan,

School of Computing & Singapore-MIT Alliance, National University of Singapore {cuibin, lindan, Bin Cui, Dan Lin and Kian-Lee Tan School of Computing & Singapore-MIT Alliance, National University of Singapore {cuibin, lindan, tankl}@comp.nus.edu.sg Presented by Donatas Saulys 2007-11-12 Motivation

More information

Parallel, In Situ Indexing for Data-intensive Computing. Introduction

Parallel, In Situ Indexing for Data-intensive Computing. Introduction FastQuery - LDAV /24/ Parallel, In Situ Indexing for Data-intensive Computing October 24, 2 Jinoh Kim, Hasan Abbasi, Luis Chacon, Ciprian Docan, Scott Klasky, Qing Liu, Norbert Podhorszki, Arie Shoshani,

More information

Chapter 11: Implementing File Systems. Operating System Concepts 8 th Edition,

Chapter 11: Implementing File Systems. Operating System Concepts 8 th Edition, Chapter 11: Implementing File Systems, Silberschatz, Galvin and Gagne 2009 Chapter 11: Implementing File Systems File-System Structure File-System Implementation Directory Implementation Allocation Methods

More information

Chapter 8: Main Memory

Chapter 8: Main Memory Chapter 8: Main Memory Operating System Concepts 8 th Edition,! Silberschatz, Galvin and Gagne 2009! Chapter 8: Memory Management Background" Swapping " Contiguous Memory Allocation" Paging" Structure

More information

8.1 Background. Part Four - Memory Management. Chapter 8: Memory-Management Management Strategies. Chapter 8: Memory Management

8.1 Background. Part Four - Memory Management. Chapter 8: Memory-Management Management Strategies. Chapter 8: Memory Management Part Four - Memory Management 8.1 Background Chapter 8: Memory-Management Management Strategies Program must be brought into memory and placed within a process for it to be run Input queue collection of

More information

Module 8: Memory Management

Module 8: Memory Management Module 8: Memory Management Background Logical versus Physical Address Space Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 8.1 Background Program must be brought into memory

More information

Improving Access to Multi-dimensional Self-describing Scientific Datasets Λ

Improving Access to Multi-dimensional Self-describing Scientific Datasets Λ Improving Access to Multi-dimensional Self-describing Scientific Datasets Λ Beomseok Nam and Alan Sussman UMIACS and Dept. of Computer Science University of Maryland College Park, MD fbsnam,alsg@cs.umd.edu

More information

Striped Grid Files: An Alternative for Highdimensional

Striped Grid Files: An Alternative for Highdimensional Striped Grid Files: An Alternative for Highdimensional Indexing Thanet Praneenararat 1, Vorapong Suppakitpaisarn 2, Sunchai Pitakchonlasap 1, and Jaruloj Chongstitvatana 1 Department of Mathematics 1,

More information

Memory management. Last modified: Adaptation of Silberschatz, Galvin, Gagne slides for the textbook Applied Operating Systems Concepts

Memory management. Last modified: Adaptation of Silberschatz, Galvin, Gagne slides for the textbook Applied Operating Systems Concepts Memory management Last modified: 26.04.2016 1 Contents Background Logical and physical address spaces; address binding Overlaying, swapping Contiguous Memory Allocation Segmentation Paging Structure of

More information

Chapter 8: Main Memory

Chapter 8: Main Memory Chapter 8: Main Memory Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation Example: The Intel Pentium 8.2 Silberschatz, Galvin

More information

MATE-EC2: A Middleware for Processing Data with Amazon Web Services

MATE-EC2: A Middleware for Processing Data with Amazon Web Services MATE-EC2: A Middleware for Processing Data with Amazon Web Services Tekin Bicer David Chiu* and Gagan Agrawal Department of Compute Science and Engineering Ohio State University * School of Engineering

More information

Module 9: Memory Management. Background. Binding of Instructions and Data to Memory

Module 9: Memory Management. Background. Binding of Instructions and Data to Memory Module 9: Memory Management Background Logical versus Physical Address Space Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 9.1 Background Program must be brought into memory

More information

Indexing. Week 14, Spring Edited by M. Naci Akkøk, , Contains slides from 8-9. April 2002 by Hector Garcia-Molina, Vera Goebel

Indexing. Week 14, Spring Edited by M. Naci Akkøk, , Contains slides from 8-9. April 2002 by Hector Garcia-Molina, Vera Goebel Indexing Week 14, Spring 2005 Edited by M. Naci Akkøk, 5.3.2004, 3.3.2005 Contains slides from 8-9. April 2002 by Hector Garcia-Molina, Vera Goebel Overview Conventional indexes B-trees Hashing schemes

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 L17 Main Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Was Great Dijkstra a magician?

More information

Roadmap. Tevfik Koşar. CSC Operating Systems Spring Lecture - XII Main Memory - II. Louisiana State University

Roadmap. Tevfik Koşar. CSC Operating Systems Spring Lecture - XII Main Memory - II. Louisiana State University CSC 4103 - Operating Systems Spring 2007 Lecture - XII Main Memory - II Tevfik Koşar Louisiana State University March 8 th, 2007 1 Roadmap Dynamic Loading & Linking Contiguous Memory Allocation Fragmentation

More information

Operating Systems. Memory Management. Lecture 9 Michael O Boyle

Operating Systems. Memory Management. Lecture 9 Michael O Boyle Operating Systems Memory Management Lecture 9 Michael O Boyle 1 Memory Management Background Logical/Virtual Address Space vs Physical Address Space Swapping Contiguous Memory Allocation Segmentation Goals

More information

CAR-TR-990 CS-TR-4526 UMIACS September 2003

CAR-TR-990 CS-TR-4526 UMIACS September 2003 CAR-TR-990 CS-TR-4526 UMIACS 2003-94 September 2003 Object-based and Image-based Object Representations Hanan Samet Computer Science Department Center for Automation Research Institute for Advanced Computer

More information

Data Partitioning and MapReduce

Data Partitioning and MapReduce Data Partitioning and MapReduce Krzysztof Dembczyński Intelligent Decision Support Systems Laboratory (IDSS) Poznań University of Technology, Poland Intelligent Decision Support Systems Master studies,

More information

Multidimensional (spatial) Data and Modelling (2)

Multidimensional (spatial) Data and Modelling (2) Multidimensional (spatial) Data and Modelling (2) 1 Representative operations on maps l l l l l are operations on layers used in maps (all 2-d). Synonyms f. map: layer, spatial partition Def. properties:

More information

Chapter 8: Memory Management Strategies

Chapter 8: Memory Management Strategies Chapter 8: Memory- Management Strategies, Silberschatz, Galvin and Gagne 2009 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table

More information

Introduction to Operating Systems

Introduction to Operating Systems Introduction to Operating Systems Lecture 6: Memory Management MING GAO SE@ecnu (for course related communications) mgao@sei.ecnu.edu.cn Apr. 22, 2015 Outline 1 Issues of main memory 2 Main memory management

More information

An Efficient Transformation for Klee s Measure Problem in the Streaming Model

An Efficient Transformation for Klee s Measure Problem in the Streaming Model An Efficient Transformation for Klee s Measure Problem in the Streaming Model Gokarna Sharma, Costas Busch, Ramachandran Vaidyanathan, Suresh Rai, and Jerry Trahan Louisiana State University Outline of

More information

Course Outline. Processes CPU Scheduling Synchronization & Deadlock Memory Management File Systems & I/O Distributed Systems

Course Outline. Processes CPU Scheduling Synchronization & Deadlock Memory Management File Systems & I/O Distributed Systems Course Outline Processes CPU Scheduling Synchronization & Deadlock Memory Management File Systems & I/O Distributed Systems 1 Today: Memory Management Terminology Uniprogramming Multiprogramming Contiguous

More information

Memory Management. Memory

Memory Management. Memory Memory Management These slides are created by Dr. Huang of George Mason University. Students registered in Dr. Huang s courses at GMU can make a single machine readable copy and print a single copy of

More information

8: Memory Management

8: Memory Management CSC400 - Operating Systems 8: Memory Management J. Sumey Physical Memory as important as the CPU, a computer's physical memory is another important resource that must be carefully & efficiently managed

More information

I.-C. Lin, Assistant Professor. Textbook: Operating System Principles 7ed CHAPTER 8: MEMORY

I.-C. Lin, Assistant Professor. Textbook: Operating System Principles 7ed CHAPTER 8: MEMORY I.-C. Lin, Assistant Professor. Textbook: Operating System Principles 7ed CHAPTER 8: MEMORY MANAGEMENT Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of

More information

Belle II - Git migration

Belle II - Git migration Belle II - Git migration Why git? Stash GIT service managed by DESY Powerful branching and merging capabilities Resolution of (JIRA) issues directly be map to branches and commits Feature freeze in pre-release

More information

AN OVERVIEW OF SPATIAL INDEXING WITHIN RDBMS

AN OVERVIEW OF SPATIAL INDEXING WITHIN RDBMS AN OVERVIEW OF SPATIAL INDEXING WITHIN RDBMS ADD SUBTITLE IN ALL CAPS DAVID DEHAAN SQL ANYWHERE QUERY PROCESSING TEAM SYBASE THURSDAY 9 FEB 2012 CHERITON SCHOOL OF COMPUTER SCIENCE, CS 448/648 OUTLINE

More information

Improving the Performance of OLAP Queries Using Families of Statistics Trees

Improving the Performance of OLAP Queries Using Families of Statistics Trees Improving the Performance of OLAP Queries Using Families of Statistics Trees Joachim Hammer Dept. of Computer and Information Science University of Florida Lixin Fu Dept. of Mathematical Sciences University

More information

Chapter 6 Memory 11/3/2015. Chapter 6 Objectives. 6.2 Types of Memory. 6.1 Introduction

Chapter 6 Memory 11/3/2015. Chapter 6 Objectives. 6.2 Types of Memory. 6.1 Introduction Chapter 6 Objectives Chapter 6 Memory Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured.

More information

Module 8: Memory Management

Module 8: Memory Management Module 8: Memory Management Background Logical versus Physical Address Space Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging Operating System Concepts 8.1 Silberschatz and Galvin

More information

Addressing the Variety Challenge to Ease the Systemization of Machine Learning in Earth Science

Addressing the Variety Challenge to Ease the Systemization of Machine Learning in Earth Science Addressing the Variety Challenge to Ease the Systemization of Machine Learning in Earth Science K-S Kuo 1,2,3, M L Rilee 1,4, A O Oloso 1,5, K Doan 1,3, T L Clune 1, and H-F Yu 6 1 NASA Goddard Space Flight

More information

I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 8: MEMORY

I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 8: MEMORY I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 8: MEMORY MANAGEMENT Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of the

More information

Introduction to Spatial Database Systems

Introduction to Spatial Database Systems Introduction to Spatial Database Systems by Cyrus Shahabi from Ralf Hart Hartmut Guting s VLDB Journal v3, n4, October 1994 Data Structures & Algorithms 1. Implementation of spatial algebra in an integrated

More information

Data Management of Scientific Datasets on High Performance Interactive Clusters

Data Management of Scientific Datasets on High Performance Interactive Clusters Data Management of Scientific Datasets on High Performance Interactive Clusters Faisal Ghias Mir Master of Science Thesis Stockholm, Sweden February 2006 Abstract The data analysis on scientific datasets

More information

1. a. Show that the four necessary conditions for deadlock indeed hold in this example.

1. a. Show that the four necessary conditions for deadlock indeed hold in this example. Tutorial 7 (Deadlocks) 1. a. Show that the four necessary conditions for deadlock indeed hold in this example. b. State a simple rule for avoiding deadlocks in this system. a. The four necessary conditions

More information

C14b: Classless Intradomain Routing

C14b: Classless Intradomain Routing CISC 7332X T6 C14b: Classless Intradomain Routing Hui Chen Department of Computer & Information Science CUNY Brooklyn College 11/27/2018 CUNY Brooklyn College 1 Acknowledgements Some pictures used in this

More information

CSIT5300: Advanced Database Systems

CSIT5300: Advanced Database Systems CSIT5300: Advanced Database Systems L11: Physical Database Design Dr. Kenneth LEUNG Department of Computer Science and Engineering The Hong Kong University of Science and Technology Hong Kong SAR, China

More information

Chapter 12: Indexing and Hashing. Basic Concepts

Chapter 12: Indexing and Hashing. Basic Concepts Chapter 12: Indexing and Hashing! Basic Concepts! Ordered Indices! B+-Tree Index Files! B-Tree Index Files! Static Hashing! Dynamic Hashing! Comparison of Ordered Indexing and Hashing! Index Definition

More information

Summary. 4. Indexes. 4.0 Indexes. 4.1 Tree Based Indexes. 4.0 Indexes. 19-Nov-10. Last week: This week:

Summary. 4. Indexes. 4.0 Indexes. 4.1 Tree Based Indexes. 4.0 Indexes. 19-Nov-10. Last week: This week: Summary Data Warehousing & Data Mining Wolf-Tilo Balke Silviu Homoceanu Institut für Informationssysteme Technische Universität Braunschweig http://www.ifis.cs.tu-bs.de Last week: Logical Model: Cubes,

More information

Introduction to Processes in Computer Systems SEEM

Introduction to Processes in Computer Systems SEEM Introduction to Processes in Computer Systems SEEM 3460 1 Overview of Processes What is the concept of a process A program in execution The animated spirit of a program The entity that can be assigned

More information

Time Complexity and Parallel Speedup to Compute the Gamma Summarization Matrix

Time Complexity and Parallel Speedup to Compute the Gamma Summarization Matrix Time Complexity and Parallel Speedup to Compute the Gamma Summarization Matrix Carlos Ordonez, Yiqun Zhang Department of Computer Science, University of Houston, USA Abstract. We study the serial and parallel

More information

Very Large Dataset Access and Manipulation: Active Data Repository (ADR) and DataCutter

Very Large Dataset Access and Manipulation: Active Data Repository (ADR) and DataCutter Very Large Dataset Access and Manipulation: Active Data Repository (ADR) and DataCutter Joel Saltz Alan Sussman Tahsin Kurc University of Maryland, College Park and Johns Hopkins Medical Institutions http://www.cs.umd.edu/projects/adr

More information

Addresses in the source program are generally symbolic. A compiler will typically bind these symbolic addresses to re-locatable addresses.

Addresses in the source program are generally symbolic. A compiler will typically bind these symbolic addresses to re-locatable addresses. 1 Memory Management Address Binding The normal procedures is to select one of the processes in the input queue and to load that process into memory. As the process executed, it accesses instructions and

More information

Data Warehousing and Decision Support. Introduction. Three Complementary Trends. [R&G] Chapter 23, Part A

Data Warehousing and Decision Support. Introduction. Three Complementary Trends. [R&G] Chapter 23, Part A Data Warehousing and Decision Support [R&G] Chapter 23, Part A CS 432 1 Introduction Increasingly, organizations are analyzing current and historical data to identify useful patterns and support business

More information

Chapter 12: Indexing and Hashing

Chapter 12: Indexing and Hashing Chapter 12: Indexing and Hashing Basic Concepts Ordered Indices B+-Tree Index Files B-Tree Index Files Static Hashing Dynamic Hashing Comparison of Ordered Indexing and Hashing Index Definition in SQL

More information

Database System Concepts

Database System Concepts Chapter 13: Query Processing s Departamento de Engenharia Informática Instituto Superior Técnico 1 st Semester 2008/2009 Slides (fortemente) baseados nos slides oficiais do livro c Silberschatz, Korth

More information

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation

More information

Chapter 8: Memory- Management Strategies

Chapter 8: Memory- Management Strategies Chapter 8: Memory Management Strategies Chapter 8: Memory- Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and

More information

CS252 S05. Main memory management. Memory hardware. The scale of things. Memory hardware (cont.) Bottleneck

CS252 S05. Main memory management. Memory hardware. The scale of things. Memory hardware (cont.) Bottleneck Main memory management CMSC 411 Computer Systems Architecture Lecture 16 Memory Hierarchy 3 (Main Memory & Memory) Questions: How big should main memory be? How to handle reads and writes? How to find

More information

2. Functions, sets, countability and uncountability. Let A, B be sets (often, in this module, subsets of R).

2. Functions, sets, countability and uncountability. Let A, B be sets (often, in this module, subsets of R). 2. Functions, sets, countability and uncountability I. Functions Let A, B be sets (often, in this module, subsets of R). A function f : A B is some rule that assigns to each element of A a unique element

More information

Da-Wei Chang CSIE.NCKU. Professor Hao-Ren Ke, National Chiao Tung University Professor Hsung-Pin Chang, National Chung Hsing University

Da-Wei Chang CSIE.NCKU. Professor Hao-Ren Ke, National Chiao Tung University Professor Hsung-Pin Chang, National Chung Hsing University Chapter 11 Implementing File System Da-Wei Chang CSIE.NCKU Source: Professor Hao-Ren Ke, National Chiao Tung University Professor Hsung-Pin Chang, National Chung Hsing University Outline File-System Structure

More information

ECSS Project: Prof. Bodony: CFD, Aeroacoustics

ECSS Project: Prof. Bodony: CFD, Aeroacoustics ECSS Project: Prof. Bodony: CFD, Aeroacoustics Robert McLay The Texas Advanced Computing Center June 19, 2012 ECSS Project: Bodony Aeroacoustics Program Program s name is RocfloCM It is mixture of Fortran

More information

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 13 Virtual memory and memory management unit In the last class, we had discussed

More information

Benchmarking the UB-tree

Benchmarking the UB-tree Benchmarking the UB-tree Michal Krátký, Tomáš Skopal Department of Computer Science, VŠB Technical University of Ostrava, tř. 17. listopadu 15, Ostrava, Czech Republic michal.kratky@vsb.cz, tomas.skopal@vsb.cz

More information

Main Memory. Electrical and Computer Engineering Stephen Kim ECE/IUPUI RTOS & APPS 1

Main Memory. Electrical and Computer Engineering Stephen Kim ECE/IUPUI RTOS & APPS 1 Main Memory Electrical and Computer Engineering Stephen Kim (dskim@iupui.edu) ECE/IUPUI RTOS & APPS 1 Main Memory Background Swapping Contiguous allocation Paging Segmentation Segmentation with paging

More information

Chapter 8: Main Memory

Chapter 8: Main Memory Chapter 8: Main Memory Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and 64-bit Architectures Example:

More information

CS420: Operating Systems

CS420: Operating Systems Main Memory James Moscola Department of Engineering & Computer Science York College of Pennsylvania Based on Operating System Concepts, 9th Edition by Silberschatz, Galvin, Gagne Background Program must

More information

An Evolutionary Path to Object Storage Access

An Evolutionary Path to Object Storage Access An Evolutionary Path to Object Storage Access David Goodell +, Seong Jo (Shawn) Kim*, Robert Latham +, Mahmut Kandemir*, and Robert Ross + *Pennsylvania State University + Argonne National Laboratory Outline

More information

Chapter 12: Query Processing. Chapter 12: Query Processing

Chapter 12: Query Processing. Chapter 12: Query Processing Chapter 12: Query Processing Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 12: Query Processing Overview Measures of Query Cost Selection Operation Sorting Join

More information

Recursive inverse factorization

Recursive inverse factorization Recursive inverse factorization Anton Artemov Division of Scientific Computing, Uppsala University anton.artemov@it.uu.se 06.09.2017 Context of work Research group on large scale electronic structure computations

More information