OpenCUDA + MPI A Framework for Heterogeneous GP-GPU Computing Kenny Ballou, Boise State University Department of Computer Science Nilab Mohammad Mousa, Boise State University Department of Computer Science Mentor: Alark Joshi, PhD. Boise State University Department of Computer Science

Abstract

Results

Conclusions and Discussion

The introduction and rise of General Purpose Graphics Computing has significantly impacted parallel and high-performance computing. It has introduced challenges when it comes to distributed computing with GPUs. Current solutions target specifics: specific hardware, specific network topology, a specific level of processing. Those restrictions on GPU computing limit scientists and researchers in various ways. The goal of OpenCUDA+MPI project is to develop a framework that allows researchers and scientists to write a general algorithm without the overhead of worrying about the specifics of the hardware and the cluster it will run against while taking full advantage of parallel and distributed computing on GPUs. As work toward the solution continues to progress, we have proven the need for the framework and expect to find the framework enables scientists to focus on their research.

We were able to show that distributing work over a cluster can significanly decrease the amount of time required for a problem. For example, processing the N-Body problem for 200 thousand bodies on a single CPU required 114349 seconds (about 31 hours), as compared to a single GPU which required 52 seconds and distributing over 16 GPU’s only took 21 seconds. For more comparisons, please see the table below. [Currently, a comparison between the distributed code with and without the framework is not available.] Although biased, it was interesting to notice the development time difference between writing the distributed code without the framework as compared to with the framework. Namely, without the framework, it required several weeks, whereas, with the framework, it required less than a week.

We can clearly see the increase in performance when we distribute our work over many machines. If our problem is particularly I/O bound, however, we may be causing more slow downs or bottlenecks than worth the computational performance increase. We need to test the framework more, and with more, different problems. Doing so would highlight areas that need adjustment or re-working. Further, it would show the framework’s viability to others and in other problem spaces.

Project Objectives Develop a framework for highly-parallel computation, utilizing many GPU’s over many computers Provide cluster administration tools and configurations Framework and related code shall be Free and Open-Source software

Methodology

Future Work Add better debugging, logging and profiling to the framework Expose control of CUDA device initilaization Add automatic/ configurable checkpointing (Finish) Node Configuration Master/ Head Node Configuration Add real (job) scheduler

Acknowledgments Special thanks to the Student Research Initative program, Liljana Babinkostova, PhD., and my mentor, Alark Joshi, PhD.

To fully understand the purpose of creating a framework, we first set out to attempt developing parallel code without our proposed framework. We also want to not only compare times of development speed, but actual running time of each solution. As such, we developed a CPU only, a single GPU, and a distributed GPU solution to the N-Body problem and compared running times of each for several different problem sizes. The N-Body problem was chosen as a test problem because it is not an embarassingly parallel problem and, as such, requires inter-communication.

Mousa OpenCUDA+MPI

Boise State

OpenCUDA+MPI - A Framework for Heterogeneous GP-GPU ... - GitHub

Kenny Ballou, Boise State University Department of Computer Science ... computing limit scientists and researchers in various ways. The goal of.

275KB Sizes 11 Downloads 289 Views

Recommend Documents

OpenCUDA+MPI - A Framework for Heterogeneous GP ... - GitHub
CUDA. Compute Unified Device Architecture. Established interface with (nVidia) GPU's. pyCUDA. Deferred CUDA kernel compilation. Familiarity. Ballou. OpenCUDA+MPI ...

Heterogeneous Parallel Programming - GitHub
The course covers data parallel execution models, memory ... PLEASE NOTE: THE ONLINE COURSERA OFFERING OF THIS CLASS DOES NOT ... DOES NOT CONFER AN ILLINOIS DEGREE; AND IT DOES NOT VERIFY THE IDENTITY OF ...

Heterogeneous variances and weighting - GitHub
Page 1. Heterogeneous variances and weighting. Facundo Muñoz. 2017-04-14 breedR version: 0.12.1. Contents. Using weights. 1. Estimating residual ...

Green framework for future heterogeneous wireless ...
Feb 10, 2013 - This over develop- ment of wireless technologies using static resource alloca- .... 3. Energy-cognitive cycle. In this section we describe the structure of the proposed energy-cognitive ..... An alternative solu- tion can be used by ..

Heterogeneous anchoring in dichotomous choice valuation framework
Flachaire E., Hollard, G. et Luchini S., Heterogeneous anchoring in dichotomous choice valuation framework,. Recherches ... the contingent valuation method in eliciting individual willingness to pay 1. In the dichotomous choice .... with a “missing

Floatworld : A Simple Artificial Life Framework for Simulated ... - GitHub
which virtual “creatures” compete for space and energy. We will ... the ability of evolution by natural selection to drive the increase in fitness of ..... of energies ϵ.

A Framework for Flexible and Scalable Replica-Exchange on ... - GitHub
a type of application with multiple scales of communication. ... Chemistry and Chemical Biology, Rutgers University, Piscataway,. NJ 08854. †Electrical .... ity built on the BigJob/SAGA distributed computing envi- ronment ... Fortunately, great pro

The Coco Framework - GitHub
Aug 10, 2017 - failure. In a consortium of banks, members could be large, global, systemically important financial institutions (GSIFIs). ... End users, such as a bank's customers, do not have an identity in the Coco network and cannot transact .....

A textual graph-based modeling framework for education ... - GitHub
Item 1 - 6 - Proc-2013-1-3-15.pdf (A visual DPF tool implemented by our students) ... Elements (in the signature) having the same name are considered ... {LOCAL PATH ON YOUR COMPUTER}/no.hib.dpf.text.updatesite/target/site. 8. Open the ...

Generic Load Regulation Framework for Erlang - GitHub
Erlang'10, September 30, 2010, Baltimore, Maryland, USA. Copyright c 2010 ACM ...... rate on a budget dual-core laptop was 500 requests/s. Using parallel.

Open Modeling Framework - GitHub
Prepared for the U.S. Department of Energy, Office of Electricity Delivery and Energy Reliability, under Contract ... (ORNL), and the National Renewable Energy.

Introduction to Framework One - GitHub
Introduction to Framework One [email protected] ... Event Management, Logging, Caching, . ... Extend framework.cfc in your Application.cfc. 3. Done. (or in the ... All controllers are passed the argument rc containing the request.context, and all v

DRAM Scheduling Policy for GPGPU Architectures Based on a ...
Nov 22, 2011 - 1In NVIDIA architectures, 32 threads are executed together in lock-step as a warp and in AMD GPU architectures, 64 threads are executed together as a wave-front. blocking. For a warp blocked on memory accesses, all its memory requests

A Proposed Framework for Proposed Framework for ...
approach helps to predict QoS ranking of a set of cloud services. ...... Guarantee in Cloud Systems” International Journal of Grid and Distributed Computing Vol.3 ...

An Integrated Security Framework For GOSS Power Grid ... - GitHub
Sep 24, 2014 - potential network failures (N-1) ... in one of these roles in order to ... Users can't find out about data/services they don't have access for ...

IBPM: An Open-Source-Based Framework for InfiniBand ... - GitHub
Evaluation of Computer and Communication Systems (MMB) and. Dependability and ... 2 These authors are with science+computing ag, Tuebingen, Germany.

Open Data publishing method framework - GitHub
Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/. Build. Assess. Iterate. Certification. Publish!

Heterogeneous Agent Macroeconomics: An Example and an ... - GitHub
Keynesian multipliers should be big in liquidity trap. Crude Keynesianism: .... Calibrate income process to match macro and micro data. 2. Calibrate other ...

A Taxonomy of GPGPU Performance Scaling - IEEE Computer Society
Kapil Dev. School of Engineering. Brown University kapil [email protected]. Joseph L. Greathouse, Indrani Paul, Wei Huang, Arjun-Karthik Venugopal, Leonardo ...

A Heterogeneous Descriptor Fusion Process For Visual ...
For Visual Concept Identification. Grégoire Lefebvre. Orange Labs - R&D Division ... shows promising results for automatic image classification and objectionable image filtering. Keywords: SOM, bag of ... Consequently, the system should be able to e

A Model For Extremely Heterogeneous Clutter
As will be seen in this section, images suffering from speckle noise should not be treated with the usual additive-noise derived tools (Wiener filter, for instance), since speckle corrupts the signal in a ... its estimation is discussed in [17] and [

Developing a Framework for Decomposing ...
Nov 2, 2012 - with higher prevalence and increases in medical care service prices being the key drivers of ... ket, which is an economically important segmento accounting for more enrollees than ..... that developed the grouper software.

A framework for consciousness
needed to express one aspect of one per- cept or another. .... to layer 1. Drawing from de Lima, A.D., Voigt, ... permission of Wiley-Liss, Inc., a subsidiary of.

A GENERAL FRAMEWORK FOR PRODUCT ...
procedure to obtain natural dualities for classes of algebras that fit into the general ...... So, a v-involution (where v P tt,f,iu) is an involutory operation on a trilattice that ...... G.E. Abstract and Concrete Categories: The Joy of Cats (onlin