Font Size: a A A

Design And Implementation Of DGA A Parallel Programming Model That Support Out-of-core Computing

Posted on:2014-03-15Degree:MasterType:Thesis
Country:ChinaCandidate:T WangFull Text:PDF
GTID:2308330479479112Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
In recent years, the improvement of microprocessor performance is no longer dependent on the increase of frequency, but on the increase in the number of processor cores. For example, Intel’ s Xeon microprocessors. However, by comparing the relationship between the number of processor cores and the speed increase of memory capacity, you can find the number of microprocessor core increases much faster than the increase of memory capacity. In the future, for multi-core microprocessors, the available memory of per processor core decreases. Out-of-core computing stores data to secondary storage, reduces the memory usage, this method can mitigate the current problem that the available capacity of each processor core decreases. But traditional out-of-core computing needs programmers manually rewrite the parallel program, so it limits the use of the out-of-core technology.In response to these problems, this article proposes a parallel programming model that support the out-of-core computing, which is called Disk-extended Global Array(abbreviated DGA). DGA’s design and implementation is based on the traditional Global Array programming model(abbreviated GA, a PGAS programming model). DGA uses GA’s programming interface to modify its runtime system, making DGA assign the data to the local secondary storage when the main memory is not enough. So the program can be executed without considering the main memory. This article’s contribution includes the following three aspects:First, we propose a DGA parallel programming model. Based on traditional GA programming model, this article expands its scope of use of available storage semantically, the distribution of global array compute nodes are no longer restricted to the main memory.Second, this article designs and implements programming model DGA runtime system, the run-time system can run automatically when memory resources are inadequate, and allocated the data to the local secondary storage or memory dynamically. In order to improve the system’s performance, we use different page dispatch method to design optimized storage management mechanism. We provide guidance for programmers about global array storage location and replacement policy in main memory interface, supporting a programmer to write high-performance out-ofcore computing programs more easily.Again, in order to verify the validity of DGA programming interface, this article selects three typical tests to test the validity of DGA programming model: vector permutation, matrix multiplication and breadth-first spanning tree algorithm to massive figure. The experimental results showed that: the DGA parallel program can run correctly in case of insufficient memory with little cost.In the future, we will do more work to make DGA more efficient, and we will design more DGA tests to complete DGA.
Keywords/Search Tags:High Performance Computer, message-passing, shared-memory, PGAS, GA, page dispatch
PDF Full Text Request
Related items