GPU Based Methods For Interactive Information Visualization Of Big Data

1y ago
87 Views
7 Downloads
4.16 MB
85 Pages
Last View : 10d ago
Last Download : 3m ago
Upload by : Adalynn Cowell
Transcription

GPU Based Methods for Interactive Information Visualization ofBig DataPeng MiThesis submitted to the Faculty of theVirginia Polytechnic Institute and State Universityin partial fulfillment of the requirements for the degree ofMaster of ScienceinComputer Science and ApplicationsChristopher L. North, ChairYong CaoDenis GračaninDec 9, 2015Blacksburg, VirginiaKeywords: GPU based Algorithm, Information VisualizationCopyright 2015, Peng Mi

GPU Based Methods for Interactive Information Visualization of Big DataPeng Mi(ABSTRACT)Interactive visual analysis has been a key component of gaining insights in informationvisualization area. However, the amount of data has increased exponentially in the past fewyears. Existing information visualization techniques lack scalability to deal with big data,such as graphs with millions of nodes, or millions of multidimensional data records.Recently, the remarkable development of Graphics Processing Unit (GPU) makes GPU useful for general-purpose computation. Researchers have proposed GPU based solutions forvisualizing big data in graphics and scientific visualization areas. However, GPU based bigdata solutions in information visualization area are not well investigated. In this thesis, Iconcentrate on the visualization of big data in information visualization area. More specifically, I focus on visual exploration of large graphs and multidimensional datasets basedon the GPU technology. My work demonstrates that GPU based methods are useful forsensemaking of big data in information visualization area.

AcknowledgmentFirstly, I would like to express my sincere gratitude to my advisors, Professor ChristopherL. North and Yong Cao, for supporting me throughout my graduate study. Dr. Northis the funniest advisor and one of the smartest people I know. His questions are alwaysinsightful and give me new angles towards my work. Dr. Cao guides me to the GPU world,and encourages me to enter the information visualization area. Without his support, mywork would not have become reality. I am also very grateful to Dr. Denis Gračanin for hisinsightful discussions and suggestions about my work.I would like to acknowledge Dr. Pak Chung Wong and Kris Cook at Pacific NorthwestNational Laboratory (PNNL). I am thankful to Kris Cook who gives me an opportunity asa summer intern at PNNL. Dr. Wong is my advisor at PNNL, who helps me improve myknowledge in the area.Finally, I appreciate the financial support from PNNL that funded parts of the researchdiscussed in this thesis.iii

Contents1 Introduction1.11Research Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21.1.1The Interactivity of Big Data . . . . . . . . . . . . . . . . . . . . . .21.1.2The GPU Acceleration . . . . . . . . . . . . . . . . . . . . . . . . . .31.2Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31.3Thesis Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42 Human Interaction with Large Graph Layout on the GPU52.1Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52.2Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72.2.1Large Graph Layout . . . . . . . . . . . . . . . . . . . . . . . . . . .72.2.2Force-Directed Algorithms . . . . . . . . . . . . . . . . . . . . . . . .82.2.3Graph Layout on the GPU . . . . . . . . . . . . . . . . . . . . . . . .9Algorithm Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102.3.1Approximation of The Repulsive Force . . . . . . . . . . . . . . . . .102.3.2Multi-Level Approach . . . . . . . . . . . . . . . . . . . . . . . . . .11GPU Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132.32.4iv

2.4.1Data Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132.4.2GPU Kernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15Results and Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182.5.1Visual Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . .182.5.2Performance Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . .202.5.3Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25Usage Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252.6.1Visual Exploration of Web Networks . . . . . . . . . . . . . . . . . .252.6.2Visual Exploration of Co-authorship Networks . . . . . . . . . . . . .272.7Lessons Learned . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .292.8Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .312.52.63 AVIST: A GPU-Centric Design for Visual Exploration of Large Multidimensional Datasets333.1Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333.2Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .353.2.1The Exploration of Multidimensional Datasets . . . . . . . . . . . . .353.2.2Big Data Management . . . . . . . . . . . . . . . . . . . . . . . . . .353.2.3The GPU Acceleration . . . . . . . . . . . . . . . . . . . . . . . . . .363.2.4Big Data Exploration . . . . . . . . . . . . . . . . . . . . . . . . . . .37The GPU-Centric Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . .383.3.1Design Principle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .383.3.2The GPU-Centric Design . . . . . . . . . . . . . . . . . . . . . . . . .383.3v

3.3.3Data Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .403.3.4Data Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . .41AVIST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .433.4.1MVC Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . .433.4.2Data Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . .443.4.3Coordinated Multiple Views . . . . . . . . . . . . . . . . . . . . . . .483.4.4User Interactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . .493.5Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .513.6Usage Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .543.6.1Network Flow Analysis . . . . . . . . . . . . . . . . . . . . . . . . . .543.6.2International Trade Analysis . . . . . . . . . . . . . . . . . . . . . . .563.7Lessons Learned . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .593.8Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .633.44 Conclusion and Future Work644.1Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .644.2Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .654.3Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66Bibliography67vi

List of Figures1.1The data scalability from small data to big data. . . . . . . . . . . . . . . . .22.1The original graph (left) and its coarsen graph (right). . . . . . . . . . . . .102.2An example of the GPU memory organization of three-levels of graphs. Nodelink diagrams (right) show the actual level graph. Several data arrays arestored in GPU memory to represent these graphs. In this figure, G0 is theoriginal graph, which is partitioned into four sub-graphs. G1 is the graphcoarsen by the original graph, which is partitioned into two sub-graphs. G2is the coarsest graph. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.314The GPU computation flowchart for a single level graph layout. The kernels of attractive forces and approximated repulsive forces are described inAlgorithm 1 and Algorithm 2. . . . . . . . . . . . . . . . . . . . . . . . . . .2.415Results for graph crack. A, B, C are the layout results of three level coarsengraphs based on our algorithm (graph nodes from a same cluster are in thesame color). D is the result from F M 3 implemented by ODGF [11]. . . . . .2.519Results for graph finan512. A, B, C are the layout results of three level coarsengraphs based on our algorithm (graph nodes from a same cluster are in thesame color). D is the result from F M 3 implemented by ODGF [11]. . . . . .2.620The sub-graph distributions of web-Stanford. The X-axis is the number ofvertices, the Y-axis is the number of sub graphs. It is a power law distribution. 23vii

2.7The performance of grid-mesh layouts. The X-axis is the number of vertices,and the Y-axis is the performance. The averaged P of each cluster is 9 basedon the solar merger algorithm.2.8. . . . . . . . . . . . . . . . . . . . . . . . .24Five level graphs layout of web-Stanford data (graph nodes from a same clusterare in the same color). From top to bottom, those graphs are G4 , G3 ,G2 ,G1 ,G0 .The red and blue circle are the highlighted sub-graphs in our case study.Picture A shows graph detailed layout when a user zooms into the red circle.Picture B shows that one cluster separates into two clusters when a user dragsa hub node. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.926The graph layout of the DBLP co-authorship network. The figure shows seriesof node movements. Figure T0 shows the initial graph layout based on F M 3algorithm. In figure T1, Jean-Daniel Fekete is dragged away from the centerof network. T2 and T3 are the snapshots of node movements. In figure T4,Hans Hagen is dragged away from the center of network. T5, T6, T7 showsnode movements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .282.10 The flow chart of our large graph layout system. User interactions are involvedfor generating graph layouts. User interaction data are passed to the GPUside for force computation. Visual primitives are updated based on forcecalculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3.1The GPU-centric design: user interactions are transfered from CPU to GPU.Data storage and computation are on the GPU. . . . . . . . . . . . . . . . .3.23139The data dependency graph: rectangles represent data and ovals are parallelcomputations. Data filters are generated on the CPU side and transfered tothe GPU. All data and computations are done on the GPU. . . . . . . . . .3.342This figure shows the MVC architecture in AVIST. Users interact with dataviews to change data filters, so as to update data models. The controllerupdates the data views after it obtains the data model’s notification. . . . .viii44

3.4Data transformations from raw data to a filtered dataset. . . . . . . . . . . .453.5Data transformations from filtered data into visual primitives. . . . . . . . .463.6This figure shows data transformations of parallel coordinate plots, which areseparated into three parts: compact list, vertex and edge generations. . . . .3.747The control panel of AVIST. Three filters (highlight filter, exclusive filter andinclusive filter ) with three modes (solo mode, and mode, and or mode) provided. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3.849The performance of AVIST. The X-axis is the number of queried data records,and the Y-axis is the performance (milliseconds). This scatter plot shows theperformance of our kinds of data: Filtered Data, Parallel Coordinate Data(eight axes), Histogram Data and Time-series Data.3.9. . . . . . . . . . . . .51The detailed performance for generating parallel coordinate data. The X-axisis the number of queried data records, and the Y-axis is the performance(milliseconds). Three steps are characterized in the plot, which includes thedata generation of compact list, vertices and edges. . . . . . . . . . . . . . .523.10 The performance for generating parallel coordinate data with different numberof axes. The X-axis is the number of queried data records, and the Y-axisis the performance (milliseconds). The figure includes three cases: 2 axes, 4axes and 8 axes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .533.11 The performance comparison between CPU and GPU in parallel coordinateplots (two axes). The X-axis is the number of queried data records, and theY-axis is the performance (milliseconds). . . . . . . . . . . . . . . . . . . . .543.12 This figure shows a usage scenario how AVIST helps an analyst for visualexploration of the large network logs. Seven steps are presented in this figure,and Section 6.1 gives more detailed explanations. . . . . . . . . . . . . . . .ix55

3.13 This figure shows a usage scenario that an analyst uses AVIST for visualexploring big international trade transactions. The detailed discussions arepresented in Section 6.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .x57

List of Tables2.1A summary of the five tested graphs. . . . . . . . . . . . . . . . . . . . . . .2.2Performance results (milliseconds per iteration) on each tested graph. The3.118rendering time only includes graph nodes rendering. . . . . . . . . . . . . . .22Data preprocessing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40xi

Chapter 1IntroductionBig data is everywhere – from sensors that monitor network flows to the flood of socialnetworks, we are surrounded by massive digital content. Big data encompasses everything,which can unleash new values and insights, and potentially supports people new capabilitiesfor decision-making [12].However, there is a wide gap between the big data and its insights [43]. The data volume andcomplexity impede progress for sensemaking of big data. As available data becomes moreextensive and complex, the visualization based data discovery can efficiently and effectivelydeliver insights from big data. However, weaving big data into interactive visualizations thatprovides understanding and sense-making is a big challenge.Liu et al. [45] discussed various techniques that enable interactive visualization of big data,where real-time performance is one of the fundamental requirements. Their paper highlightsGPU based solutions for quickly data filtering to achieve real-time frame-rates. Therefore,designing and implementing GPU based big data visualization systems become a trend. Inthis chapter, I would like to present the motivations behind GPU based interactive information visualization of big data.1

Chapter 1. Introduction1.11.1.12Research MotivationsThe Interactivity of Big DataWe have entered in the era of “big data”. Data grows at unprecedented speed. Most of themare network logs, social networks and financial transactions, which belong to data domainof information visualization. However, current information visualization techniques focus onsmall data (less than one million data items). Thus how to extend interactive informationvisualization techniques to big data becomes my thesis topic.Figure 1.1 describes the data scalability from small data to big data. In this thesis, I focus onextending the interactivity of information visualization from small data to big data, wheredata items can reach beyond one million.Figure 1.1: The data scalability from small data to big data.Therefore, the first motivation of this thesis is interactively visualizing big data in informationvisualization area. The number of data items should be larger than one million, and thedata can be stored in the GPU memory (upper bound).

Chapter 1. Introduction1.1.23The GPU AccelerationGPUs are designed for graphics and videogames. In recently years, the GPU has beenpraised for the significant performance improvement and the capability of general purposecomputation. GPUs have been widely used in various domains (e.g., data mining [17],machine learning [46], high performance computing [16], etc.).The GPU based visualization techniques have been investigated, which mostly are aboutvolume data visualizations [4] in scientific visualization (SciVis) area. The GPU based InfoVis solutions are not investigated well. Therefore, designing GPU based solutions in InfoVisarea by utilizing GPU fine-grained parallelism and high memory bandwidth is the secondmotivation of this thesis.1.2ContributionsIn my thesis, I focus on two common data types in the data domain of InfoVis: graphs andmultidimensional datasets. And there are two key contributions towards the state-of-arts invisual exploration of graphs and multidimensional datasets:1. Large graph layout on the GPU. I proposed a topology oriented force-directedgraph layout algorithm to calculate the approximate repulsive force for large graphlayout. I designed GPU friendly data structures and GPU parallel algorithms to improve graph layout performance. As a result, my parallel algorithm can reach real-timeframe-rates for visualizing graphs with a million nodes.2. Visual exploration of large multidimensional datasets on the GPU. To achieveflexible filtering and gaining fine-grained data details, I proposed a GPU-centric designto emphasize that data storage and computation are on the GPU. I designed a datadependency graph for characterizing the data flow on the GPU. I implemented anAnimated VISualization Tool - AVIST, as a proof-of-concept, for visually exploringmillions data records.

Chapter 1. Introduction1.34Thesis OrganizationThe reminder of this thesis is organized as follows. Chapter 2 presents a topology basedforce-directed graph layout on the GPU. This algorithm enables human interactions withautomatic graph layouts. Chapter 3 focuses on the exploratory visual analysis of largemultidimensional datasets. It describes an exploration oriented tool - AVIST, which cansupport visual analysis of millions of data records. Chapter 4 gives the conclusion andproposes future work.

Chapter 2Human Interaction with Large GraphLayout on the GPU2.1IntroductionGraphs are commonly used to depict complex relationships among objects. Graph drawingoffers solutions to geometrically represent graphs, with the intention of improving theirreadability. This supports applications and analysis in various domains (e.g., social networkanalysis [31, 33], cyber security [69], intelligence analysis [19, 59], etc.).The booming of information technology brings in data as a deluge, which leads to a rapidgrowth of data in size and complexity. Although a graph layout provides a human perceptibleway to support sensemaking tasks [33, 58], the performance of drawing large and complexgraphs, especially those with millions of nodes, is still challenging. Many graph drawingalgorithms have been proposed in the last few decades. However, most of them work finefor relatively small graphs (e.g., graphs with hundreds of nodes) and certain types of graphs(e.g., trees or planar graphs) [39, 61]. Some existing large graph layout algorithms [27] focuson generating static and visual pleasing results, but layout results from these are constrainedby their predefined aims. Therefore, those layout algorithms cannot support users makingsense of large graphs in an efficient and effective manner.5

Chapter 2. Human Interaction with Large Graph Layout on the GPU6In this chapter, we argue that direct manipulations of large graphs and real-time interactions are vital to support knowledge discovery and sensemaking activities for large graphs.Previous graph layout algorithms emphasize static graph layout results either based on theirstructures [27] or semantic meanings [55]. However, a static graph layout may not reveal allinformation of a graph. In some cases, users have no clear definition of the best graph layout.They need to explore a graph, and interact with its layout. Thus, users can incrementallyupdate a graph layout, and emphasize different graph aspects for gaining different insights.In this chapter, we highlight the interaction for a large graph layout, which potentially supports users exploring unexpected knowledge of a large graph. We stress that the graph layoutperformance should be single iteration oriented for real-time human interactions.To achieve this, we focus on a classical force-direct algorithm using the spring-electricalmodel [21]. This algorithm depicts the graph drawing problem as a physical system ofspring-like attractive forces generated by each edge, while each charged node repels othersvia electrical force. Since it iteratively calculates each node position, this algorithm has theinherent ability to enable incorporating user interactions into a automatic layout process. Ineach iteration, users can flexibly choose certain nodes, drag and pin them to modify layoutresults. However, this algorithm does not scale well with respect to the size of graphs, andit suffers from poor scalability even on moderate-sized graphs.Similar to the N-body problem, the performance bottleneck of this algorithm lies in repulsiveforce calculation [25]. Many existing solutions have been proposed to replace computing theexact repulsive forces between all pairs of nodes with some approximated calculations. Theheuristic is that if two nodes are far away from each other, the repulsive force between themcan be ignored or approximated. Thus, a spatial indexing structure should be built andupdated to describe the spatial relationships among nodes in each iteration. For example,Godiyal et al. [23] proposed a method combing CPU and GPU to construct a balance k-dtree, while Martin et al. [7] gave a GPU based octree implementation. However, buildingand traversing hierarchical structures can be computationally expensive for large graphs.In this chapter, we propose a new solution to speed up repulsive force calculation to enablehuman-in-the-loop for large graph layout. We calculate approximate repulsive forces based

Chapter 2. Human Interaction with Large Graph Layout on the GPU7on a graph structure, rather than its nodes’ spatial distribution. The benefit of our algorithm,compared with previous accelerated algorithms, is that we avoid building and traversing aspatial indexing structure. To further improve performance, we design a novel parallel forcedirected graph layout algorithm that utilizes the massive computational power of GPUs toachieve real-time frame-rates so as to support human interactions. In addition, our algorithmcan be integrated into the multi-level graph layout paradigm, which solves the local minimumproblem to generate visual pleasing results.The reminder of this chapter is organized as follows: In Section 2, we review relevant workabout large graph layouts. In Section 3, we describe our approximated force-directed graphlayout algorithm, and its integration with the multi-level paradigm. Section 4 addressesthe details of GPU implementation. Performance evaluation of our algorithm and visualassessment analysis are discussed in Section 5. In Section 6, we demonstrate two case studiesto emphasize human-in-the-loop of exploring graph layouts. We summarize lessons learnedfor designing big graph layout algorithms in Section 7. Finally, we conclude this chapter inSection 8.2.2Related WorkIn this section, we review large graph layout algorithms. In addition, we focus on forcedirected algorithms and GPU based methods.2.2.1Large Graph LayoutHachul et al. [27] surveyed existing solutions that generate a large graph layout by consideringtwo aspects: aesthetics and performance. They suggested that certain force-directed layoutalgorithms can generate pleasing layouts for most tested graphs. Several recent papers [20,23, 34, 60, 67] presented their advanced large graph layout techniques based on force-directedalgorithms [13, 14, 21, 38].Another strategy for a large graph layout is based on linear algebra, rather than physical

Chapter 2. Human Interaction with Large Graph Layout on the GPU8simulation, such as HDE [28] and ACE [42]. However, these algorithms work fine on fewspecific graphs. Moreover, linear algebra based methods cannot be easily applied to integratehuman interactions.In addition to the algorithms mentioned above, other large graph drawing algorithms havebeen investigated. For example, Muelder et al. [50, 49] presented large graph layout algorithms based on treemaps; Wong et al. [66] used a space-filling fractal curve to layout graphnodes; Khoury et al. [40] gave a layout algorithm that simplifies matrix computations basedon linear-algebraic properties. However, these works focus on the generation of static visualrepresentations of large graphs, so they are hard to interactively change their graph layoutsfor analytical purposes (e.g., pin some interesting nodes and drag certain parts of the graph).2.2.2Force-Directed AlgorithmsForce-directed algorithms are commonly used to support visual analysis of graphs, becausethey are conceptually simple and able to produce aesthetically pleasing layouts. Thesealgorithms are also called energy-based methods, indicating that the minimum energy isachieved when the net force on every vertex is zero, and when a graph layout is generated.Many practical algorithms are proposed, for more details one can refer to [41].The spring-electrical model [21] is a popular force-directed algorithm, which generates agraph layout based on two types of forces: attractive force and repulsive force. This algorithm cannot handle a large graph layout well. Its complexity of calculating repulsive forceis O(N 2 ), where N denotes number of nodes in a graph. For a graph with a million nodes,each iteration of repulsive force calculation needs tera-sized computations, which is beyondthe processing power of a single commodity desktop. To speed up its performance, a naturalapproach is to compute approximated force based on some heuristic method instead of striving for the optimal solution. Fruchterman et al. [21] proposed a grid-variant algorithm thataccelerates repulsive force computation by splitting nodes into grids. Based on the BarnesHut Tree [5], a tree structure is used to speed up repulsive force calculation by grouping faraway vertices as supernodes ([34], [53]). Yunis et al. [67] and Godiyal et al. [23] proposed

Chapter 2. Human Interaction with Large Graph Layout on the GPU9Fast Multiple Method (FMM) [25] for accelerating repulsive force computation.Besides high performance, another problem with spring-electrical model is the local minimumconfiguration of a large graph layout, especially when the beginning graph layout is from arandom initialization. A multi-level approach can overcome this limitation [22, 34, 62]: asequence of successive smaller graphs are generated by graph coarsening and partitioningtechniques to simplify the topology of its parent. Global optimal layout is obtained froma small graph, which is then used as a starting layout for the next level, until the finestgraph layout has been achieved. Gereon Bartel et al. [6] summarized the multi-level layoutparadigm in three phases: coarsening, placement and single level layout. They concludedthat there is no clear winning combination, since different coarsening, placement and layoutalgorithms have different attributes.2.2.3Graph Layout on the GPUGPUs are designed for videogames and graphics. The remarkable advances in performanceand programmability make GPUs popular for general purpose computation. Frishman etal. [20] made the first step towards GPU based graph layout algorithms. Apeksha et al. [23]presented a parallel FMM algorithm on the GPU, and used a k-d tree structure for describingnodes’ spatial distribution. Yunis et al. [67] extended a parallel FMM algorithm to multipleGPUs. Besides, Auber et al. [3] and Jeowicz et al. [37] also presented their GPU acceleratedsolutions to speed up graph layouts. Moreover, Tikhonova et al. [60] proposed a scalableparallel force-directed layout algorithm in parallel and distributed computing environments.In this chapter, we aim at applying the spring-electrical model to a large graph layout,wherein users can interact with the graph layout to perceive and explore more meaningfulinformation. Previous large graph layout algorithms cannot easily achieve this. To the bestof our knowledge, existing acceleration techniques cannot achieve fast performance for largegraph layout (specifically those with millions of nodes) to support some exploratory interactions. We propose a GPU based approximated force-directed layout algorithm, which cansupport real-time human interactions on the large graph mentioned above. This potentially

Chapter 2. Human Interaction with Large Graph Layout on the GPU10supports real-time explorations of these large graphs in future.2.3Algorithm OutlineIn this section, we describe our algorithm design, which addresses the problems of springelectrical model for a large graph layout from two key aspects: performance and qualityresults.2.3.1Approximation of The Repulsive ForceBoth Barnes-Hut Tree [5] and FMM [25] methods calculate approximated repulsive forcebased on nodes’ distribution and a spatial indexing structure that should be built and updated in each iteration. To avoid these stages, we propose to use a graph topology suchas heuristic to approximately calculate repulsive forces. If two nodes belong to two different graph clusters, they are “far away” from each other, and we use their inter-clusterrepulsive force for approximation. In total, repulsive forces have two components: internalelectric-force and external-electric-force. The internal-electric-force refers to the repulsiveforce between pairs of nodes within the same cluster, and the external-electric-force is theinter-cluster repulsive force. The internal-electric-force is used to obtain the local structureof a graph, while the external-electric-force is used for capturing the overview of a graph.Figure 2.1: The original graph (left) and its coarsen graph (right).Given an undirected graph G G0 (V, E), firstly we use a multi-level coarsening or

Chapter 2. Human Interaction with Large Graph Layout on the GPU11clustering algorithm to generate serial successively coarser graphs (G1 , G2 , · · ·), where eachnode in the upper level represents a cluster of nodes in the lower leve

extensive and complex, the visualization based data discovery can e ciently and e ectively deliver insights from big data. However, weaving big data into interactive visualizations that provides understanding and sense-making is a big challenge. Liu et al. [45] discussed various techniques that enable interactive visualization of big data,

Related Documents:

OpenCV GPU header file Upload image from CPU to GPU memory Allocate a temp output image on the GPU Process images on the GPU Process images on the GPU Download image from GPU to CPU mem OpenCV CUDA example #include opencv2/opencv.hpp #include <

Bruksanvisning för bilstereo . Bruksanvisning for bilstereo . Instrukcja obsługi samochodowego odtwarzacza stereo . Operating Instructions for Car Stereo . 610-104 . SV . Bruksanvisning i original

GPU Tutorial 1: Introduction to GPU Computing Summary This tutorial introduces the concept of GPU computation. CUDA is employed as a framework for this, but the principles map to any vendor’s hardware. We provide an overview of GPU computation, its origins and development, before presenting both the CUDA hardware and software APIs. New Concepts

limitation, GPU implementers made the pixel processor in the GPU programmable (via small programs called shaders). Over time, to handle increasing shader complexity, the GPU processing elements were redesigned to support more generalized mathematical, logic and flow control operations. Enabling GPU Computing: Introduction to OpenCL

Possibly: OptiX speeds both ray tracing and GPU devel. Not Always: Out-of-Core Support with OptiX 2.5 GPU Ray Tracing Myths 1. The only technique possible on the GPU is “path tracing” 2. You can only use (expensive) Professional GPUs 3. A GPU farm is more expensive than a CPU farm 4. A

Latest developments in GPU acceleration for 3D Full Wave Electromagnetic simulation. Current and future GPU developments at CST; detailed simulation results. Keywords: gpu acceleration; 3d full wave electromagnetic simulation, cst studio suite, mpi-gpu, gpu technology confere

transplant a parallel approach from a single-GPU to a multi-GPU system. One major reason is the lacks of both program-ming models and well-established inter-GPU communication for a multi-GPU system. Although major GPU suppliers, such as NVIDIA and AMD, support multi-GPUs by establishing Scalable Link Interface (SLI) and Crossfire, respectively .

NVIDIA vCS Virtual GPU Types NVIDIA vGPU software uses temporal partitioning and has full IOMMU protection for the virtual machines that are configured with vGPUs. Virtual GPU provides access to shared resources and the execution engines of the GPU: Graphics/Compute , Copy Engines. A GPU hardware scheduler is used when VMs share GPU resources.

10 tips och tricks för att lyckas med ert sap-projekt 20 SAPSANYTT 2/2015 De flesta projektledare känner säkert till Cobb’s paradox. Martin Cobb verkade som CIO för sekretariatet för Treasury Board of Canada 1995 då han ställde frågan

service i Norge och Finland drivs inom ramen för ett enskilt företag (NRK. 1 och Yleisradio), fin ns det i Sverige tre: Ett för tv (Sveriges Television , SVT ), ett för radio (Sveriges Radio , SR ) och ett för utbildnings program (Sveriges Utbildningsradio, UR, vilket till följd av sin begränsade storlek inte återfinns bland de 25 största

Hotell För hotell anges de tre klasserna A/B, C och D. Det betyder att den "normala" standarden C är acceptabel men att motiven för en högre standard är starka. Ljudklass C motsvarar de tidigare normkraven för hotell, ljudklass A/B motsvarar kraven för moderna hotell med hög standard och ljudklass D kan användas vid

LÄS NOGGRANT FÖLJANDE VILLKOR FÖR APPLE DEVELOPER PROGRAM LICENCE . Apple Developer Program License Agreement Syfte Du vill använda Apple-mjukvara (enligt definitionen nedan) för att utveckla en eller flera Applikationer (enligt definitionen nedan) för Apple-märkta produkter. . Applikationer som utvecklas för iOS-produkter, Apple .

Introduction to GPU Computing . CPU GPU Add GPUs: Accelerate Science Applications . Small Changes, Big Speed-up Application Code GPU Use GPU to Parallelize CPU Compute-Intensive Functions Rest of Sequential CPU Code . 3 Ways to Accelerate Applications Applications Libraries “Drop-in” Acceleration Programming

Introduction to GPU computing Felipe A. Cruz Nagasaki Advanced Computing Center Nagasaki University, Japan. Felipe A. Cruz Nagasaki University The GPU evolution The Graphic Processing Unit (GPU) is a processor that was specialized for processing graphics. The GPU has recently evolved towards a more flexible architecture.

GPU Computing in Matlab u Included in the Parallel Computing Toolbox. u Extremely easy to use. To create a variable that can be processed using the GPU, use the gpuArray function. u This function transfers the storage location of the argument to the GPU. Any functions which use this argument will then be computed by the GPU.

RTX 3080 delivers the greatest generational leap of any GPU that has ever been made. Finally, the GeForce RTX 3070 GPU uses the new GA104 GPU and offers performance that rivals NVIDIA’s previous gener ation flagship GPU, the GeForce RTX 2080 Ti. Figure 1.

NVIDIA virtual GPU products deliver a GPU Experience to every Virtual Desktop. Server. Hypervisor. Apps and VMs. NVIDIA Graphics Drivers. NVIDIA Virtual GPU. NVIDIA Tesla GPU. NVIDIA virtualization software. CPU Only VDI. With NVIDIA Virtu

NVIDIA GRID K2 1 Number of users depends on software solution, workload, and screen resolution NVIDIA GRID K1 GPU 4 Kepler GPUs 2 High End Kepler GPUs CUDA cores 768 (192 / GPU) 3072 (1536 / GPU) Memory Size 16GB DDR3 (4GB / GPU) 8GB GDDR5 Max Power 130 W 225 W Form Factor Dual Slot ATX, 10.5” Dual Slot ATX,

CPU VS GPU A GPU is a processor with thousands of cores , ALUs and cache. S.N O CPU GPU 1. CPU stands for Central Processing Unit. While GPU stands for Graphics Processing Unit. 2. CPU consumes or needs more memory than GPU. While it consumes or requires less memor

plify development of HPC applications, they can increase the difficulty of tuning GPU kernels (routines compiled for offloading to a GPU) for high performance by separating developers from many key details, such as what GPU code is generated and how it will be executed. To harness the full power of GPU-accelerated nodes, application