Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Computer Engineering Expert

Parallel Computer Architecture Programming Assignment: Equation Solver

Consider the Gauss-Seidel equation solver discussed within the lecture notes on how to write parallel programs-see the file called parallelization process.pdf on BBLearn. You will find the source code for the reference implementation in the zip file on BBLearn.

Recall that the order in which the grid points are updated in the sequential algorithm is not funda- mental to the Gauss-Seidel solution method; it is simply one possible ordering that is convenient to program sequentially. Since the Gauss-Seidel method is not an exact solution method but rather iterates until convergence, we can update the grid points in a different order as long as we use updated values for grid points frequently enough, a technique called the Jacobi method where we don't use updated values from the current iteration for any grid points but always use the values as they were at the end of the previous iteration. Using the sequential program as a starting point, develop a parallel version of the Jacobi method using an element-based decomposition strategy where each GPU thread is responsible for processing a single grid element.

The program provided to you accepts no arguments. It creates a randomly initialized grid of N N elements and applies the update rule to each element within the grid until the specified convergence criteria is satisfied. The solution provided by the GPU is compared to that generated by the CPU by printing out the relevant statistics.

Answer the following questions.

1. Edit the compute on device() function in the file solver.cu and the solver kernel naive() function in solver kernel.cu file to complete the functi- onality of the equation solver on the GPU using only global memory.

2. Improve the performance of the kernel developed in the previous step by using shared memory on the GPU. Edit the kernel function solver kernel optimized() in the solver kernel.cu file to complete the functionality.

3. Upload all of the files needed to run your code on BBLearn as a single zip file. Submit a short report describing: (1) the design of your kernels using code or pseudocode to clarify the discussion; (2) the speedup obtained over the serial version for both the naive and optimized kernels, for grid sizes of 2048 2048, 4096 4096, and 8192 8192; and (3) sensitivity of your kernels to thread-block size in terms of the execution time.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M92743483

Have any Question?


Related Questions in Computer Engineering

Question suppose we perform a sequence of n operations on a

Question : Suppose we perform a sequence of n operations on a data structure in which teh ith operation costs i 2 of i is an exact power of 2 and 1 otherwise. Use aggregrate analasys and accounting method to determine th ...

Question suppose a computer using direct mapped cache has

Question : Suppose a computer using direct mapped cache has 2 20 words of main memory and a cache of 32 blocks, where each cache block contains 16 words. a. How many blocks of main memory are there? b. What is the format ...

What are the best practices to follow for microsoft windows

What are the best practices to follow for Microsoft Windows network security. Which two would you start with and why?

Answer the following question whats the difference between

Answer the following Question : What's the difference between public, protected, and private members? What's the difference between static binding and dynamic binding?

Discuss the importance of using an access control model in

Discuss the importance of using an access control model in determining how employees in an organization should gain access to resources.

A static reference has the following two components in the

A static reference has the following two components in the JVM: The type of the reference; The fully qualified name of the reference, including its host class. From a security perspective for the JVM, investigate why sta ...

Question using a web browser search for any information

Question: Using a Web browser, search for any information security policies used at your academic institution. Compare them to the ones discussed in this chapter. Are there sections missing? If so, which ones? Whitman, M ...

A survey is taken of people in the class of favorite flavor

A survey is taken of people in the class of favorite flavor of ice cream among a forced choice of chocolate, vanilla, or strawberry. 70% prefer chocolate, 20% prefer vanilla, and 10% prefer strawberry. a) What is the ent ...

Identify at least two 2 factors that have led to the

Identify at least two (2) factors that have led to the explosive growth of digital crime over the past a few decades. Next, describe the most common forms of digital crime, and give your opinion as to why those forms you ...

What are the differences between four types of economics

What are the differences between four types of economics evaluations and their differences with other two (budget impact analysis (BIA) and cost of illness (COI) studies)?

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As