Implementing a Parallel Matrix Factorization Library on the Cell Broadband Engine

Matrix factorization (or often called decomposition) is a frequently used kernel in a large number of applications ranging from linear solvers to data clustering and machine learning. The central contribution of this paper is a thorough performance study of four popular matrix factorization techniqu...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Scientific programming 2009, Vol.17 (1-2), p.3-29
Hauptverfasser: Vishwas, B.C., Gadia, Abhishek, Chaudhuri, Mainak
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 29
container_issue 1-2
container_start_page 3
container_title Scientific programming
container_volume 17
creator Vishwas, B.C.
Gadia, Abhishek
Chaudhuri, Mainak
description Matrix factorization (or often called decomposition) is a frequently used kernel in a large number of applications ranging from linear solvers to data clustering and machine learning. The central contribution of this paper is a thorough performance study of four popular matrix factorization techniques, namely, LU, Cholesky, QR and SVD on the STI Cell broadband engine. The paper explores algorithmic as well as implementation challenges related to the Cell chip-multiprocessor and explains how we achieve near-linear speedup on most of the factorization techniques for a range of matrix sizes. For each of the factorization routines, we identify the bottleneck kernels and explain how we have attempted to resolve the bottleneck and to what extent we have been successful. Our implementations, for the largest data sets that we use, running on a two-node 3.2 GHz Cell BladeCenter (exercising a total of sixteen SPEs), on average, deliver 203.9, 284.6, 81.5, 243.9 and 54.0 GFLOPS for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, respectively. The implementations achieve speedup of 11.2, 12.8, 10.6, 13.0 and 6.2, respectively for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, when running on sixteen SPEs. We discuss the interesting interactions that result from parallelization of the factorization routines on a two-node non-uniform memory access (NUMA) Cell Blade cluster.
doi_str_mv 10.1155/2009/710321
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_34258761</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>34258761</sourcerecordid><originalsourceid>FETCH-LOGICAL-c231t-f115fc2f79ad39be02bc03513360c24871dfdcae902e1fe5b1926215681a8ddb3</originalsourceid><addsrcrecordid>eNotkMFLwzAYxYMoOKcn_4GcvEjd9yVNmxx1bDqYqKDgraRJOiNtOpMO1L_ejnl67_B4vPcj5BLhBlGIGQNQsxKBMzwiE5SlyBSq9-PRg5CZYnl-Ss5S-gRAiQAT8rLqtq3rXBh82FBNn3XUbeta-qiH6L_pUpuhj_5XD74PdO3rqOMPHe3w4ejctS29i722tQ6WLsLGB3dOThrdJnfxr1Pytly8zh-y9dP9an67zgzjOGTNOLgxrCmVtlzVDlhtgAvkvADDclmibazRTgFz2DhRo2IFQ1FI1NLamk_J1aF3G_uvnUtD1flkxkU6uH6XKp4zIcsCx-D1IWhin1J0TbWNvhtvVAjVHlu1x1YdsPE_jXRfFA</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>34258761</pqid></control><display><type>article</type><title>Implementing a Parallel Matrix Factorization Library on the Cell Broadband Engine</title><source>Elektronische Zeitschriftenbibliothek - Frei zugängliche E-Journals</source><source>Wiley-Blackwell Open Access Titles</source><source>Alma/SFX Local Collection</source><creator>Vishwas, B.C. ; Gadia, Abhishek ; Chaudhuri, Mainak</creator><creatorcontrib>Vishwas, B.C. ; Gadia, Abhishek ; Chaudhuri, Mainak</creatorcontrib><description>Matrix factorization (or often called decomposition) is a frequently used kernel in a large number of applications ranging from linear solvers to data clustering and machine learning. The central contribution of this paper is a thorough performance study of four popular matrix factorization techniques, namely, LU, Cholesky, QR and SVD on the STI Cell broadband engine. The paper explores algorithmic as well as implementation challenges related to the Cell chip-multiprocessor and explains how we achieve near-linear speedup on most of the factorization techniques for a range of matrix sizes. For each of the factorization routines, we identify the bottleneck kernels and explain how we have attempted to resolve the bottleneck and to what extent we have been successful. Our implementations, for the largest data sets that we use, running on a two-node 3.2 GHz Cell BladeCenter (exercising a total of sixteen SPEs), on average, deliver 203.9, 284.6, 81.5, 243.9 and 54.0 GFLOPS for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, respectively. The implementations achieve speedup of 11.2, 12.8, 10.6, 13.0 and 6.2, respectively for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, when running on sixteen SPEs. We discuss the interesting interactions that result from parallelization of the factorization routines on a two-node non-uniform memory access (NUMA) Cell Blade cluster.</description><identifier>ISSN: 1058-9244</identifier><identifier>EISSN: 1875-919X</identifier><identifier>DOI: 10.1155/2009/710321</identifier><language>eng</language><ispartof>Scientific programming, 2009, Vol.17 (1-2), p.3-29</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c231t-f115fc2f79ad39be02bc03513360c24871dfdcae902e1fe5b1926215681a8ddb3</citedby></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,4022,27922,27923,27924</link.rule.ids></links><search><creatorcontrib>Vishwas, B.C.</creatorcontrib><creatorcontrib>Gadia, Abhishek</creatorcontrib><creatorcontrib>Chaudhuri, Mainak</creatorcontrib><title>Implementing a Parallel Matrix Factorization Library on the Cell Broadband Engine</title><title>Scientific programming</title><description>Matrix factorization (or often called decomposition) is a frequently used kernel in a large number of applications ranging from linear solvers to data clustering and machine learning. The central contribution of this paper is a thorough performance study of four popular matrix factorization techniques, namely, LU, Cholesky, QR and SVD on the STI Cell broadband engine. The paper explores algorithmic as well as implementation challenges related to the Cell chip-multiprocessor and explains how we achieve near-linear speedup on most of the factorization techniques for a range of matrix sizes. For each of the factorization routines, we identify the bottleneck kernels and explain how we have attempted to resolve the bottleneck and to what extent we have been successful. Our implementations, for the largest data sets that we use, running on a two-node 3.2 GHz Cell BladeCenter (exercising a total of sixteen SPEs), on average, deliver 203.9, 284.6, 81.5, 243.9 and 54.0 GFLOPS for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, respectively. The implementations achieve speedup of 11.2, 12.8, 10.6, 13.0 and 6.2, respectively for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, when running on sixteen SPEs. We discuss the interesting interactions that result from parallelization of the factorization routines on a two-node non-uniform memory access (NUMA) Cell Blade cluster.</description><issn>1058-9244</issn><issn>1875-919X</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2009</creationdate><recordtype>article</recordtype><recordid>eNotkMFLwzAYxYMoOKcn_4GcvEjd9yVNmxx1bDqYqKDgraRJOiNtOpMO1L_ejnl67_B4vPcj5BLhBlGIGQNQsxKBMzwiE5SlyBSq9-PRg5CZYnl-Ss5S-gRAiQAT8rLqtq3rXBh82FBNn3XUbeta-qiH6L_pUpuhj_5XD74PdO3rqOMPHe3w4ejctS29i722tQ6WLsLGB3dOThrdJnfxr1Pytly8zh-y9dP9an67zgzjOGTNOLgxrCmVtlzVDlhtgAvkvADDclmibazRTgFz2DhRo2IFQ1FI1NLamk_J1aF3G_uvnUtD1flkxkU6uH6XKp4zIcsCx-D1IWhin1J0TbWNvhtvVAjVHlu1x1YdsPE_jXRfFA</recordid><startdate>2009</startdate><enddate>2009</enddate><creator>Vishwas, B.C.</creator><creator>Gadia, Abhishek</creator><creator>Chaudhuri, Mainak</creator><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>2009</creationdate><title>Implementing a Parallel Matrix Factorization Library on the Cell Broadband Engine</title><author>Vishwas, B.C. ; Gadia, Abhishek ; Chaudhuri, Mainak</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c231t-f115fc2f79ad39be02bc03513360c24871dfdcae902e1fe5b1926215681a8ddb3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2009</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Vishwas, B.C.</creatorcontrib><creatorcontrib>Gadia, Abhishek</creatorcontrib><creatorcontrib>Chaudhuri, Mainak</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>Scientific programming</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Vishwas, B.C.</au><au>Gadia, Abhishek</au><au>Chaudhuri, Mainak</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Implementing a Parallel Matrix Factorization Library on the Cell Broadband Engine</atitle><jtitle>Scientific programming</jtitle><date>2009</date><risdate>2009</risdate><volume>17</volume><issue>1-2</issue><spage>3</spage><epage>29</epage><pages>3-29</pages><issn>1058-9244</issn><eissn>1875-919X</eissn><abstract>Matrix factorization (or often called decomposition) is a frequently used kernel in a large number of applications ranging from linear solvers to data clustering and machine learning. The central contribution of this paper is a thorough performance study of four popular matrix factorization techniques, namely, LU, Cholesky, QR and SVD on the STI Cell broadband engine. The paper explores algorithmic as well as implementation challenges related to the Cell chip-multiprocessor and explains how we achieve near-linear speedup on most of the factorization techniques for a range of matrix sizes. For each of the factorization routines, we identify the bottleneck kernels and explain how we have attempted to resolve the bottleneck and to what extent we have been successful. Our implementations, for the largest data sets that we use, running on a two-node 3.2 GHz Cell BladeCenter (exercising a total of sixteen SPEs), on average, deliver 203.9, 284.6, 81.5, 243.9 and 54.0 GFLOPS for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, respectively. The implementations achieve speedup of 11.2, 12.8, 10.6, 13.0 and 6.2, respectively for dense LU, dense Cholesky, sparse Cholesky, QR and SVD, when running on sixteen SPEs. We discuss the interesting interactions that result from parallelization of the factorization routines on a two-node non-uniform memory access (NUMA) Cell Blade cluster.</abstract><doi>10.1155/2009/710321</doi><tpages>27</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 1058-9244
ispartof Scientific programming, 2009, Vol.17 (1-2), p.3-29
issn 1058-9244
1875-919X
language eng
recordid cdi_proquest_miscellaneous_34258761
source Elektronische Zeitschriftenbibliothek - Frei zugängliche E-Journals; Wiley-Blackwell Open Access Titles; Alma/SFX Local Collection
title Implementing a Parallel Matrix Factorization Library on the Cell Broadband Engine
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-11T05%3A42%3A46IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Implementing%20a%20Parallel%20Matrix%20Factorization%20Library%20on%20the%20Cell%20Broadband%20Engine&rft.jtitle=Scientific%20programming&rft.au=Vishwas,%20B.C.&rft.date=2009&rft.volume=17&rft.issue=1-2&rft.spage=3&rft.epage=29&rft.pages=3-29&rft.issn=1058-9244&rft.eissn=1875-919X&rft_id=info:doi/10.1155/2009/710321&rft_dat=%3Cproquest_cross%3E34258761%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=34258761&rft_id=info:pmid/&rfr_iscdi=true