270 likes | 425 Views
Gaussian Elimination. By Yequn Zhang, Yu Zhang. Contents. Introduction Problem Analysis Proposed Algorithm Evaluation. Contents. Introduction Problem Analysis Proposed Algorithm Evaluation. Gaus sian Elimination. Forward Elimination Back Substitution. Contents. Introduction
E N D
Gaussian Elimination By Yequn Zhang, Yu Zhang
Contents • Introduction • Problem Analysis • Proposed Algorithm • Evaluation
Contents • Introduction • Problem Analysis • Proposed Algorithm • Evaluation
GaussianElimination • Forward Elimination • Back Substitution
Contents • Introduction • ProblemAnalysis • Proposed Algorithm • Evaluation
Problem Analysis • Data size used by kernels changes continuously • Difficult to find an appropriate block size to avoid divergence • Block-based approach • Assign a certain part of computation running on CPU-leave the irregularity to cpu • Manually make the data size changes with a step of block size • Block number per grid is easy to set
Contents • Introduction • Problem Analysis • ProposedAlgorithm • Evaluation
Forward Elimination • A block-based approach • Try to avoid divergence • Try to use GPU • Try to be fine-grained
K 1 Find Max Row
Now start to eliminate the block of data on cpu cpu Swap
Calculate coefficients
Elimination on CPU
K 1 Calculate Coefficients
K 2 K2 Elimination on CPU
K3 K 3 Swap on GPU
K4 K 4 Elimination on GPU
K5 K 5 Elimination on GPU
BackSubstitution • Launch kernel when number of coefficients per row exceeds four block size (64*4=256) • A fine-grained way, use a similar way as forward elimination, part on CPU and part on GPU
Contents • Introduction • Problem Analysis • Proposed Algorithm • Evaluation
The contribution of swap and find max row • Is it necessary to implement every part on GPU?
Performance breakdown • Contribution of each part to the total performance,including kernels as well as CPU part