Using Chunked Extendible Array for Physical Storage of Scientific Datasets
|
|
- Angelina Ray
- 5 years ago
- Views:
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 Gideon Nimako A thesis submitted to the Faculty of Engineering and the Built Environment in fulfilment
More informationParallel 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 informationCost 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 informationAdvances 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 informationOperating 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 informationThe 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 informationCOSC160: 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 informationIntroduction 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 informationQ1. 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 informationAn 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 informationmemory 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 informationBackground. 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 informationChapter 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 informationQuadrant-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 informationHDF5 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 informationSciSpark 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 informationCluster 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 informationAdministrivia. 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 informationChapter 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 informationMemory 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 informationCS307 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 informationMemory 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 informationFile 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 informationVirtual 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 informationCompressing 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 informationIntroduction 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 informationMain 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 informationLeveraging 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 informationPart 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 informationBackground 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 informationCaching 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 informationMemory 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 informationCOSC 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 information6 - 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 informationLast 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 informationChapter 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 informationGoals 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 informationMultidimensional 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 informationChapter 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 informationSchool 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 informationParallel, 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 informationChapter 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 informationChapter 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 information8.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 informationModule 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 informationImproving 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 informationStriped 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 informationMemory 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 informationChapter 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 informationMATE-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 informationModule 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 informationIndexing. 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 informationCS370 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 informationRoadmap. 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 informationOperating 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 informationCAR-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 informationData 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 informationMultidimensional (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 informationChapter 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 informationIntroduction 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 informationAn 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 informationCourse 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 informationMemory 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 information8: 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 informationI.-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 informationBelle 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 informationAN 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 informationImproving 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 informationChapter 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 informationModule 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 informationAddressing 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 informationI.-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 informationIntroduction 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 informationData 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 information1. 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 informationC14b: 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 informationCSIT5300: 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 informationChapter 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 informationSummary. 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 informationIntroduction 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 informationTime 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 informationVery 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 informationAddresses 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 informationData 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 informationChapter 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 informationDatabase 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 informationChapter 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 informationChapter 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 informationCS252 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 information2. 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 informationDa-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 informationECSS 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 informationEmbedded 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 informationBenchmarking 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 informationMain 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 informationChapter 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 informationCS420: 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 informationAn 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 informationChapter 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 informationRecursive 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