{"id":3859,"date":"2011-05-10T06:30:22","date_gmt":"2011-05-10T06:30:22","guid":{"rendered":"http:\/\/hgpu.org\/?p=3859"},"modified":"2011-05-10T06:30:22","modified_gmt":"2011-05-10T06:30:22","slug":"parallel-preconditioned-conjugate-gradient-algorithm-on-gpu","status":"publish","type":"post","link":"https:\/\/hgpu.org\/?p=3859","title":{"rendered":"Parallel preconditioned conjugate gradient algorithm on GPU"},"content":{"rendered":"<p>We propose a parallel implementation of the Preconditioned Conjugate Gradient algorithm on a GPU-platform. The preconditioning matrix is an approximate inverse derived from the SSOR preconditioner. Used through sparse matrix-vector multiplication, the proposed preconditioner is well-suited for the massively parallel GPU architecture. As compared to CPU implementation of the conjugate gradient algorithm, our GPU preconditioned conjugate gradient implementation is up to 10 times faster (8 times faster at worst).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We propose a parallel implementation of the Preconditioned Conjugate Gradient algorithm on a GPU-platform. The preconditioning matrix is an approximate inverse derived from the SSOR preconditioner. Used through sparse matrix-vector multiplication, the proposed preconditioner is well-suited for the massively parallel GPU architecture. As compared to CPU implementation of the conjugate gradient algorithm, our GPU preconditioned [&hellip;]<\/p>\n","protected":false},"author":351,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[36,157,3],"tags":[1787,580,1796,421],"class_list":["post-3859","post","type-post","status-publish","format-standard","hentry","category-algorithms","category-mathematics","category-paper","tag-algorithms","tag-conjugate-gradient-solver","tag-mathematics","tag-sparse-matrix"],"views":2612,"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/posts\/3859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/users\/351"}],"replies":[{"embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3859"}],"version-history":[{"count":0,"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/posts\/3859\/revisions"}],"wp:attachment":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3859"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3859"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}