A massively parallel solid mechanics solver in ALYA A massively ...
A survey on massively Parallelism for indexing multidimensional datasets on the GPU
-
Upload
tejovat-technologies-pvtltdwakad -
Category
Engineering
-
view
182 -
download
1
Transcript of A survey on massively Parallelism for indexing multidimensional datasets on the GPU
DYPLogo.jpeg
A Survey on Massively Parallelism for IndexingMultidimensional Datasets on the GPU
Prof.Pramod Deshmukh Yogesh Lokare Ajay Katware PankajPatil
1−3Department of Computer ScienceD.Y Patil School of Engineering Academy
Savitribai Phule Pune University.
National Conference on Advance Computing(NCAC), 2015
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 1
/ 16
DYPLogo.jpeg
Outline
1 Introduction
2 Literature Survey
3 Tree Traversal AlgorithmsParallel R-TreesMassively Parallel Three Phase ScanMassively Parallel Hilbert R-treeMassively Parallel Restart Scanning
4 Conclusion
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 2
/ 16
DYPLogo.jpeg
Introduction
GP-GPUThe General Purpose computing on Graphics ProcessingUnit(GP-GPU) has emerged as a new cost effective parallelcomputing paradigm in High Performance Computing research thatenables large amount of data to be processed in parallel. .
CUDACUDA(Computer Unified Device Architecture) allows programmers torun parallel algorithm on GPU’s Stream Processor(SMP).
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 3
/ 16
DYPLogo.jpeg
Introduction
GP-GPUThe General Purpose computing on Graphics ProcessingUnit(GP-GPU) has emerged as a new cost effective parallelcomputing paradigm in High Performance Computing research thatenables large amount of data to be processed in parallel. .
CUDACUDA(Computer Unified Device Architecture) allows programmers torun parallel algorithm on GPU’s Stream Processor(SMP).
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 3
/ 16
DYPLogo.jpeg
Introduction
Parallel Multi-Dimensional IndexingMulti-dimensional indexing structures have played an important rolein accelerating the access to subsets of large datasets.EX)R-tree,R*-tree.
Multidimensional Range QueryRetrieves data that overlaps given range of values.Ex) SELECT temperatureFROM datasetWHERE latitude BETWEEN 20 AND 30AND longitude BETWEEN 50 AND 60
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 4
/ 16
DYPLogo.jpeg
Introduction
Parallel Multi-Dimensional IndexingMulti-dimensional indexing structures have played an important rolein accelerating the access to subsets of large datasets.EX)R-tree,R*-tree.
Multidimensional Range QueryRetrieves data that overlaps given range of values.Ex) SELECT temperatureFROM datasetWHERE latitude BETWEEN 20 AND 30AND longitude BETWEEN 50 AND 60
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 4
/ 16
DYPLogo.jpeg
Literature survey
Author Name of Paper Publication Year Description
J. Kim Exploiting Massive Parallelism IEEE Transaction on MPRSWon-KiJeong for Indexing Multi-dimensional Parallel and Aug-15 MPHR
and Beomseok Nam Dataset on GPU distributed systems
Jinwoong Kim Parallel Multi-Dimensional Journal on Breaded parallel andBeomseok Nam range query processing Parallel and 2013 data parallel
with R-trees on GPU distrib. computing tree traversal
L.Luo,M.D.Wong Parallel implementation of 17th Asia South 2012 Parallel R-Trees,and L.Leong R-Trees on the GPU pacific Des.Autom.Conf SIMD tech. in
efficient binary tree search
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 5
/ 16
DYPLogo.jpeg
Agenda
1 Introduction
2 Literature Survey
3 Tree Traversal AlgorithmsParallel R-TreesMassively Parallel Three Phase ScanMassively Parallel Hilbert R-treeMassively Parallel Restart Scanning
4 Conclusion
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 6
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
Parallel R-trees(Parallel Recursive Trees)
The R-tree is a data structure for organizing and queryingmultidimensional non-uniform, overlapping data.
Each R-tree node contains a certain number of index entries, each ofwhich consists of a minimum bounding rectangle (MBR) and pointer toa spatial object if it is a leaf node, or a pointer to its child node if it isa non-leaf node.
Drawback of R-trees: R-trees are not well suited for the GPU becauseof their irregular memory access patterns and recursive backtrackingfunctions calls.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 7
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
Parallel R-trees(Parallel Recursive Trees)
The R-tree is a data structure for organizing and queryingmultidimensional non-uniform, overlapping data.Each R-tree node contains a certain number of index entries, each ofwhich consists of a minimum bounding rectangle (MBR) and pointer toa spatial object if it is a leaf node, or a pointer to its child node if it isa non-leaf node.
Drawback of R-trees: R-trees are not well suited for the GPU becauseof their irregular memory access patterns and recursive backtrackingfunctions calls.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 7
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
Parallel R-trees(Parallel Recursive Trees)
The R-tree is a data structure for organizing and queryingmultidimensional non-uniform, overlapping data.Each R-tree node contains a certain number of index entries, each ofwhich consists of a minimum bounding rectangle (MBR) and pointer toa spatial object if it is a leaf node, or a pointer to its child node if it isa non-leaf node.
Drawback of R-trees: R-trees are not well suited for the GPU becauseof their irregular memory access patterns and recursive backtrackingfunctions calls.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 7
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
Parallel R-trees(Parallel Recursive Trees)
The R-tree is a data structure for organizing and queryingmultidimensional non-uniform, overlapping data.Each R-tree node contains a certain number of index entries, each ofwhich consists of a minimum bounding rectangle (MBR) and pointer toa spatial object if it is a leaf node, or a pointer to its child node if it isa non-leaf node.
Drawback of R-trees: R-trees are not well suited for the GPU becauseof their irregular memory access patterns and recursive backtrackingfunctions calls.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 7
/ 16
DYPLogo.jpeg
Agenda
1 Introduction
2 Literature Survey
3 Tree Traversal AlgorithmsParallel R-TreesMassively Parallel Three Phase ScanMassively Parallel Hilbert R-treeMassively Parallel Restart Scanning
4 Conclusion
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 8
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
MPTS(Massively Parallel 3 Phase Scan)
Leftmost search: -choose the leftmost child node no matter how manychild nodes overlap.
Rightmost Search: -choose the rightmost child node no matter howmany child nodes overlap.Parallel Scanning: -In between two leaf nodes,perform massivelyparallel scanning to filter out non-overlapping data elements.
Figure: MPTS R-tree search
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 9
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
MPTS(Massively Parallel 3 Phase Scan)
Leftmost search: -choose the leftmost child node no matter how manychild nodes overlap.Rightmost Search: -choose the rightmost child node no matter howmany child nodes overlap.
Parallel Scanning: -In between two leaf nodes,perform massivelyparallel scanning to filter out non-overlapping data elements.
Figure: MPTS R-tree search
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 9
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
MPTS(Massively Parallel 3 Phase Scan)
Leftmost search: -choose the leftmost child node no matter how manychild nodes overlap.Rightmost Search: -choose the rightmost child node no matter howmany child nodes overlap.Parallel Scanning: -In between two leaf nodes,perform massivelyparallel scanning to filter out non-overlapping data elements.
Figure: MPTS R-tree search
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 9
/ 16
DYPLogo.jpeg
Tree Traversal Algorithms
MPTS(Massively Parallel 3 Phase Scan)
Leftmost search: -choose the leftmost child node no matter how manychild nodes overlap.Rightmost Search: -choose the rightmost child node no matter howmany child nodes overlap.Parallel Scanning: -In between two leaf nodes,perform massivelyparallel scanning to filter out non-overlapping data elements.
Figure: MPTS R-tree searchProf.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 9
/ 16
DYPLogo.jpeg
Agenda
1 Introduction
2 Literature Survey
3 Tree Traversal AlgorithmsParallel R-TreesMassively Parallel Three Phase ScanMassively Parallel Hilbert R-treeMassively Parallel Restart Scanning
4 Conclusion
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 10
/ 16
DYPLogo.jpeg
Algorithm
MPHR(Massively Parallel Hilbert R-trees)
Drawbacks Of MPTS-MPTS reduces the number of leaf nodes to be accessed, but still itaccesses a large number of leaf nodes that do not have requested data.
To avoid drawbacks of MPTS we designed a variant of R-trees thatwork on the GPU without stack and does not access leaf nodes that donot have requested data called MPHR-Tree.
Hilbert curve is well known for it spatial clustering property.-Sort the data along with Hilbert curve.-The gap between leftmost leaf node and the rightmost leaf nodewould be reduced.-The number of visited nodes would decrease.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 11
/ 16
DYPLogo.jpeg
Algorithm
MPHR(Massively Parallel Hilbert R-trees)
Drawbacks Of MPTS-MPTS reduces the number of leaf nodes to be accessed, but still itaccesses a large number of leaf nodes that do not have requested data.To avoid drawbacks of MPTS we designed a variant of R-trees that
work on the GPU without stack and does not access leaf nodes that donot have requested data called MPHR-Tree.
Hilbert curve is well known for it spatial clustering property.-Sort the data along with Hilbert curve.-The gap between leftmost leaf node and the rightmost leaf nodewould be reduced.-The number of visited nodes would decrease.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 11
/ 16
DYPLogo.jpeg
Algorithm
MPHR(Massively Parallel Hilbert R-trees)
Drawbacks Of MPTS-MPTS reduces the number of leaf nodes to be accessed, but still itaccesses a large number of leaf nodes that do not have requested data.To avoid drawbacks of MPTS we designed a variant of R-trees that
work on the GPU without stack and does not access leaf nodes that donot have requested data called MPHR-Tree.
Hilbert curve is well known for it spatial clustering property.-Sort the data along with Hilbert curve.-The gap between leftmost leaf node and the rightmost leaf nodewould be reduced.-The number of visited nodes would decrease.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 11
/ 16
DYPLogo.jpeg
Agenda
1 Introduction
2 Literature Survey
3 Tree Traversal AlgorithmsParallel R-TreesMassively Parallel Three Phase ScanMassively Parallel Hilbert R-treeMassively Parallel Restart Scanning
4 Conclusion
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 12
/ 16
DYPLogo.jpeg
Algorithm
MPRS(Massively Parallel Restart Scanning)
For a given range query, no matter how many MBRs of child nodesoverlap a given query range, our MPRS algorithm always selects theleftmost overlapping child node unless all its leaf nodes have beenalready visited.
Figure: MPRS with MPHR-tree structures
MPRS tree traversal algorithm:(i) uses a large number of GPU threads to process a single query in aSIMD fashion in order to improve the query execution time(ii) avoids warp-divergence by fetching only a single tree node in eachstep for a block of threads in a streaming multiprocessor(iii) avoids recursion or stack operations by restarting tree traversal andavoiding visiting previously visited tree nodes by tracking the largestleaf index of visited tree nodes(iv) and accesses mostly contiguous memory block by leaf nodescanning.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 13
/ 16
DYPLogo.jpeg
Algorithm
MPRS(Massively Parallel Restart Scanning)
For a given range query, no matter how many MBRs of child nodesoverlap a given query range, our MPRS algorithm always selects theleftmost overlapping child node unless all its leaf nodes have beenalready visited.
Figure: MPRS with MPHR-tree structures
MPRS tree traversal algorithm:(i) uses a large number of GPU threads to process a single query in aSIMD fashion in order to improve the query execution time(ii) avoids warp-divergence by fetching only a single tree node in eachstep for a block of threads in a streaming multiprocessor(iii) avoids recursion or stack operations by restarting tree traversal andavoiding visiting previously visited tree nodes by tracking the largestleaf index of visited tree nodes(iv) and accesses mostly contiguous memory block by leaf nodescanning.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 13
/ 16
DYPLogo.jpeg
Conclusion
This paper presents MPHR and MPRS algorithms improve theutilization of GPU architecture for range query processing, and avoidsthe irregular search path of transforming the tree traversal probleminto a sequence data processing problem.
MPRS algorithm offers traversing hierarchical tree structures withmostly contiguous memory access patterns without recursion.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 14
/ 16
DYPLogo.jpeg
Conclusion
This paper presents MPHR and MPRS algorithms improve theutilization of GPU architecture for range query processing, and avoidsthe irregular search path of transforming the tree traversal probleminto a sequence data processing problem.
MPRS algorithm offers traversing hierarchical tree structures withmostly contiguous memory access patterns without recursion.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 14
/ 16
DYPLogo.jpeg
Conclusion
This paper presents MPHR and MPRS algorithms improve theutilization of GPU architecture for range query processing, and avoidsthe irregular search path of transforming the tree traversal probleminto a sequence data processing problem.
MPRS algorithm offers traversing hierarchical tree structures withmostly contiguous memory access patterns without recursion.
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 14
/ 16
DYPLogo.jpeg
For Further Reading I
Jinwoong Kim,Won-ki Jeong, and Beomseok NamExploiting Massive Parallelism for Multi-Dimensional Datasets on theGPUIEEE Trans.Parallel Distrib.sys., Volume 26, Number 8, August-2015
Jinwoong,Beomseok NamParallel Multi-Dimensional Range Query ProcessingJr.Parallel Distributed system,2013.
L.Luo. Martin D.F.Wong,and Lance LeongParallel Implementation of R-trees on the GPU17th Asia and south Pacific Design AutomationConference(ASP-DAC,2012
NVIDIA CUDA[Online].Available:http//www.nvidia.com ,2014
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 15
/ 16
DYPLogo.jpeg
For Further Reading II
Antonim GuttmanR-trees:A dynamic index structure for spatial searching.ACM SIGMOD International Conferences on Management ofData,1984
Prof.Pramod Deshmukh, Yogesh Lokare, Ajay Katware, Pankaj Patil (NCAC, 2015)A Survey on Massively Parallelism for Indexing Multidimensional Datasets on the GPUNational Conference on Advance Computing(NCAC), 2015 16
/ 16