tr treelogy a benchma mark rk su suite for r tree
play

Tr Treelogy: : A Benchma mark rk Su Suite for r Tree - PowerPoint PPT Presentation

Purdue University Programming Languages Group Tr Treelogy: : A Benchma mark rk Su Suite for r Tree Traversals Nikhil Hegde, Jianqiao Liu, Kirshanthan Sundararajah, and Milind Kulkarni School of Electrical and Computer Engineering


  1. Purdue University Programming Languages Group Tr Treelogy: : A Benchma mark rk Su Suite for r Tree Traversals Nikhil Hegde, Jianqiao Liu, Kirshanthan Sundararajah, and Milind Kulkarni School of Electrical and Computer Engineering Purdue University 1 ISPASS2017

  2. Tr Tree algorithms • Tree algorithms are important • Data mining, statistics, scientific computing, graphics, bioinformatics etc. • Application-specific optimizations and tree algorithms have been developed over the years 2 ISPASS2017

  3. Tr Tree algorithms and Optimizations Optimizations Tree algorithms Barnes,1986 Barnes-Hut Ghoting,2007 Zhang,1997 Fast multipole method Rokhlin,1985 Locality Vantage point trees Yianilos,1993 Communication Hamada,2009 Warren,1992 Accelerating ray tracing Vectorization Foley,2005 K-means clustering Alsabti,1997 Scheduling Gray,2001 Makino,1990 Frequent item set mining Han,2000 Höhl,2002 Liu,2016 3 ISPASS2017

  4. Tr Tree algorithms and optimizations 1. Does the tree algorithm admit an existing optimization? 2. Can an optimization be generalized to other tree algorithms? Treelogy helps to answer these questions. 4 ISPASS2017

  5. Tr Treelogy Generalize Categorize Tree Ontology Optimization algorithm Categorize Get associated optimizations 5 ISPASS2017

  6. Co Contri ributions • Ontology for tree traversal algorithms • Mapping of optimizations with structural properties of tree algorithms • A suite of 9 tree traversal algorithms from multiple domains • Evaluation with multiple tree types and hardware platforms ( GPU s, shared- and distributed-memory systems) • https://bitbucket.org/plcl/treelogy 6 ISPASS2017

  7. Ba Backg kground • Why trees and how? • Search space elimination and compact data representation • Often traversed repeatedly • Metric trees and n-fix trees are the most common types 7 ISPASS2017

  8. Ex Exampl ples s – me metri ric trees e.g. K-dimensional (kd-), Vantage Point (vp-), quad-trees, octrees, ball-trees 2-dimensional space of points Binary kd-tree, 1 point /leaf cell Y C F E A G B G D A F C E X D B 8 ISPASS2017

  9. Kd Kd-tr tree ee for tw two-po point correl elation Goal: for every point, find the number of points that are located within a given distance R. Naïve solution: O(N 2 ) Kd-tree Input points = {1, 2, … , N} Î ℝ K N 2 1 With kd-trees: O(NlogN) Does the distance to any point within the cell < R ? G Treelogy kernels with metric trees: 1. Two-point correlation (PC) 2. Nearest Neighbor (NN) A E F C 3. K-Nearest Neighbor (K-NN) 4. Barnes-Hut (BH) 5. K-means clustering (KC) 6. Photon mapping (PM) D B 7. Fast multipole method (FMM) 9 ISPASS2017

  10. Exampl Ex ples s – n-fi fix x tree • We refer to prefix and suffix trees as n-fix trees • e.g. suffix tree (trie) for string ATAC$ {$} $ C A {C} T {AC} Suffix set: C T A {TAC} $ {ATAC} C A $ C $ $ 10 ISPASS2017

  11. Generaliz Ge alized suffix fix trees for or lon longest co common substring Goal: find the longest common substring of two strings: 1) ATGA and 2) ATGTA ( answer: ATG) Naïve solution: O(N*M 2 ) ATGTA$ AT GA# Generalized suffix tree * With suffix trees: O(N+M) # $ in time and space G T A * * * $ G TG TA$ A$ A# * 2 2 * 1 TA$ A# TA$ A# 1 2 2 1 Path to a node: substring of string 1 or string 2 or both (vertex number) Treelogy kernels with n-fix trees: Longest common substring? Deepest vertex with * 1. Frequent item set mining (FIM) 2. Longest common substring (LCS) 11 ISPASS2017

  12. Tr Treelogy Ke Kernels • Two-point Correlation (PC) Two-point Correlation (PC) • • Traversals dominate computation Multiple Traversals • Nearest Neighbor (NN) • • Independent • Nearest Neighbor (NN) • K-Nearest Neighbor (KNN) • Do not modify the tree during traversal Barnes-Hut (BH) • • Traversals dominate computation • Traversals dominate computation • K-Nearest Neighbor (KNN) • Photon Mapping (PM) • Top-down traversal, different tree type • Top-down traversal, different tree type • Top-down traversal, different tree type • Multiple Traversals • Multiple Traversals • Bottom-up traversal, same tree type • Bottom-up traversal, same tree type Frequent Item-set Mining (FIM) • • Iterative, modify tree or (and) traversals • Barnes-Hut (BH) • K-Means Clustering (KC) • Independent • Independent • Longest Common Substring (LCS) • Do not modify the tree during traversal • Do not modify the tree during traversal • Photon Mapping (PM) Fast Multipole Method (FMM) • • Two-point Correlation (PC) • Barnes-Hut (BH) • Frequent Item-set Mining (FIM) • Photon Mapping (PM) • Longest Common Substring (LCS) • Fast Multipole Method (FMM) • K-Means Clustering (KC) • K-Means Clustering (KC) • Longest Common Substring (LCS) • Barnes-Hut (BH) Top-down traversals, different tree type Bottom-up traversal, same tree type • Fast Multipole Method (FMM) • Frequent Item-set Mining (FIM) Iterative, modify tree and (or) traversals 12 ISPASS2017

  13. Th The Ontology • Top-down vs. Bottom-up • Type of tree • Iterative with tree mutation • Iterative with working-set mutation • Guided vs. Unguided 13 ISPASS2017

  14. Gu Guid ided vs. Un Unguid ided 1.Unguided traversal [15] • Fixed order for every traversal (e.g. left child followed by right) 2.Guided traversal Data dependent traversal order • G Order depends on vertex-computation • [15] Goldfarb et.al.,SC’13 14 ISPASS2017

  15. Cl Classi ssifi fication Benchmark Domain Attributes Tree Type Two-Point Astrophysics, Top-down (preorder), guided (vp), Kd, vp Correlation Statistics unguided (kd) Nearest Neighbor Data mining Top-down (preorder), guided Kd, vp K-Nearest Neighbor Data mining Top-down (preorder), guided Kd, Ball Barnes-Hut Astrophysics Top-down (preorder), unguided, oct, Kd tree mutation Photon Mapping Computer Top-down (preorder), unguided, Kd Graphics working-set mutation Frequent item-set Data mining Bottom-up, unguided, tree Prefix mining mutation, working-set mutation K-Means Clustering Data mining, Top-down (inorder), guided, Kd Machine learning tree mutation Longest common Bioinformatics Top-down (postorder), unguided, Suffix substring tree mutation Fast Multipole Scientific Top-down (preorder) and bottom- Quad Method computing up, unguided, tree mutation 15 ISPASS2017

  16. Al Algorithm hm -> > On Ontology What we have seen so far… Tree Ontology Optimization algorithm Categorize Determine optimizations 16 ISPASS2017

  17. Op Optimizations • Optimizations are effective only when certain properties hold Optimization Structural properties Profile driven scheduling Top-down Tiling Top-down, bottom-up Vectorization Unguided Data representation Vp trees for NN, prefix trees for FIM, suffix trees for LCS. Communication overhead Top-down 17 ISPASS2017

  18. Ev Evaluation Methodology • Platforms: • Shared-memory (SHM): processors - 2 10-core Xeon E5 2660 V3, memory - 32 KB L1, 256KB L2, 25MB L3, 64GB RAM • Distributed-memory (DM): 10 nodes with high-speed Ethernet interconnect • GPU: nVidia Tesla K20C. host – 2 AMD 6164 HE processors, 32GB RAM • Metrics: • Architecture-independent • Average traversal length, Load imbalance • Architecture-dependent • L3 Miss Rate, CPI • All measurements consider traversal times only 18 ISPASS2017

  19. Sc Scalability Runtime (s) Number of processes 19 ISPASS2017

  20. Sc Scalability contd. • Adding more cores results in better performance • DM plots show excellent scaling • SHM and GPU plots similar • KC and LCS are exceptions • Iterative tree mutation algorithms marked by heavy synchronization at the end of an iteration • LCS less available parallelism 20 ISPASS2017

  21. Su Summa mmary (scalability) • Most kernels scale well while taking advantage of ontology-driven optimizations • Point Correlation (PC) with vp-tree is better than kd-tree • Barnes-Hut (BH) is sensitive to tree type and input distribution 21 ISPASS2017

  22. Al Algorithm hm <- Op Optimization What we have seen so far… Generalize Categorize Tree Optimization Ontology algorithm Categorize Map optimizations 22 ISPASS2017

  23. Ca Case se study • Generalizing locally essential trees (LET) • BH specific (distributed-memory) • Partial replication of tree structure • Partial replication of only the top-subtree. • Improves load-imbalance and minimizes communication overhead 23 ISPASS2017

  24. Co Conclusi sions • Treelogy • Ontology • Mapping of optimizations to structural properties • A suite of 9 tree traversal kernels spanning ontology • Shared-memory, distributed-memory, and GPU implementations • Multiple tree types based on popularity and efficiency • Evaluations showed that most kernels scale well • Two-point correlation (PC) with vp-trees better than standard tree used in literature 24 ISPASS2017

  25. Thank you 25 ISPASS2017

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend