Design, implementation and testing of extended and mixed precision BLAS

This article describes the design rationale, a C implementation, and conformance testing of a subset of the new Standard for the BLAS (Basic Linear Algebra Subroutines): Extended and Mixed Precision BLAS. Permitting higher internal precision and mixed input/output types and precisions allows us to i...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on mathematical software 2002-06, Vol.28 (2), p.152-205
Hauptverfasser: Li, Xiaoye S., Demmel, James W., Bailey, David H., Henry, Greg, Hida, Yozo, Iskandar, Jimmy, Kahan, William, Kang, Suh Y., Kapur, Anil, Martin, Michael C., Thompson, Brandon J., Tung, Teresa, Yoo, Daniel J.
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 205
container_issue 2
container_start_page 152
container_title ACM transactions on mathematical software
container_volume 28
creator Li, Xiaoye S.
Demmel, James W.
Bailey, David H.
Henry, Greg
Hida, Yozo
Iskandar, Jimmy
Kahan, William
Kang, Suh Y.
Kapur, Anil
Martin, Michael C.
Thompson, Brandon J.
Tung, Teresa
Yoo, Daniel J.
description This article describes the design rationale, a C implementation, and conformance testing of a subset of the new Standard for the BLAS (Basic Linear Algebra Subroutines): Extended and Mixed Precision BLAS. Permitting higher internal precision and mixed input/output types and precisions allows us to implement some algorithms that are simpler, more accurate, and sometimes faster than possible without these features. The new BLAS are challenging to implement and test because there are many more subroutines than in the existing Standard, and because we must be able to assess whether a higher precision is used for internal computations than is used for either input or output variables. We have therefore developed an automated process of generating and systematically testing these routines. Our methodology is applicable to languages besides C. In particular, our algorithms used in the testing code will be valuable to all other BLAS implementors. Our extra precision routines achieve excellent performance---close to half of the machine peak Megaflop rate even for the Level 2 BLAS, when the data access is stride one.
doi_str_mv 10.1145/567806.567808
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_28871040</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>28871040</sourcerecordid><originalsourceid>FETCH-LOGICAL-c373t-1e61cc52a30f43e4b1b50535b5855913d157fe9f29e99aabeb53341b654e34e43</originalsourceid><addsrcrecordid>eNotkEFLw0AQhRdRsFaP3nPyZOpMdie7OdaqVSh4UM9hk0zKSrKJ2RTqv7dtPH3D42N4PCFuERaIih4o1QbSxQnmTMyQSMc6yehczAAyE0sCuBRXIXwDQIIaZ2L9xMFt_X3k2r7hlv1oR9f5yPoqGjmMzm-jro54P7KvuDrlrdsfrn7g0oWj-7hZflyLi9o2gW_-ORdfL8-fq9d4875-Wy03cSm1HGPkFMuSEiuhVpJVgQUBSSrIEGUoKyRdc1YnGWeZtQUXJKXCIiXFUrGSc3E3_e2H7md3KJi3LpTcNNZztwt5YoxGUHAQ40kshy6Egeu8H1xrh98cIT_OlU9zTTDyDywKW7o</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>28871040</pqid></control><display><type>article</type><title>Design, implementation and testing of extended and mixed precision BLAS</title><source>ACM Digital Library Complete</source><creator>Li, Xiaoye S. ; Demmel, James W. ; Bailey, David H. ; Henry, Greg ; Hida, Yozo ; Iskandar, Jimmy ; Kahan, William ; Kang, Suh Y. ; Kapur, Anil ; Martin, Michael C. ; Thompson, Brandon J. ; Tung, Teresa ; Yoo, Daniel J.</creator><creatorcontrib>Li, Xiaoye S. ; Demmel, James W. ; Bailey, David H. ; Henry, Greg ; Hida, Yozo ; Iskandar, Jimmy ; Kahan, William ; Kang, Suh Y. ; Kapur, Anil ; Martin, Michael C. ; Thompson, Brandon J. ; Tung, Teresa ; Yoo, Daniel J.</creatorcontrib><description>This article describes the design rationale, a C implementation, and conformance testing of a subset of the new Standard for the BLAS (Basic Linear Algebra Subroutines): Extended and Mixed Precision BLAS. Permitting higher internal precision and mixed input/output types and precisions allows us to implement some algorithms that are simpler, more accurate, and sometimes faster than possible without these features. The new BLAS are challenging to implement and test because there are many more subroutines than in the existing Standard, and because we must be able to assess whether a higher precision is used for internal computations than is used for either input or output variables. We have therefore developed an automated process of generating and systematically testing these routines. Our methodology is applicable to languages besides C. In particular, our algorithms used in the testing code will be valuable to all other BLAS implementors. Our extra precision routines achieve excellent performance---close to half of the machine peak Megaflop rate even for the Level 2 BLAS, when the data access is stride one.</description><identifier>ISSN: 0098-3500</identifier><identifier>EISSN: 1557-7295</identifier><identifier>DOI: 10.1145/567806.567808</identifier><language>eng</language><ispartof>ACM transactions on mathematical software, 2002-06, Vol.28 (2), p.152-205</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c373t-1e61cc52a30f43e4b1b50535b5855913d157fe9f29e99aabeb53341b654e34e43</citedby><cites>FETCH-LOGICAL-c373t-1e61cc52a30f43e4b1b50535b5855913d157fe9f29e99aabeb53341b654e34e43</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,776,780,27901,27902</link.rule.ids></links><search><creatorcontrib>Li, Xiaoye S.</creatorcontrib><creatorcontrib>Demmel, James W.</creatorcontrib><creatorcontrib>Bailey, David H.</creatorcontrib><creatorcontrib>Henry, Greg</creatorcontrib><creatorcontrib>Hida, Yozo</creatorcontrib><creatorcontrib>Iskandar, Jimmy</creatorcontrib><creatorcontrib>Kahan, William</creatorcontrib><creatorcontrib>Kang, Suh Y.</creatorcontrib><creatorcontrib>Kapur, Anil</creatorcontrib><creatorcontrib>Martin, Michael C.</creatorcontrib><creatorcontrib>Thompson, Brandon J.</creatorcontrib><creatorcontrib>Tung, Teresa</creatorcontrib><creatorcontrib>Yoo, Daniel J.</creatorcontrib><title>Design, implementation and testing of extended and mixed precision BLAS</title><title>ACM transactions on mathematical software</title><description>This article describes the design rationale, a C implementation, and conformance testing of a subset of the new Standard for the BLAS (Basic Linear Algebra Subroutines): Extended and Mixed Precision BLAS. Permitting higher internal precision and mixed input/output types and precisions allows us to implement some algorithms that are simpler, more accurate, and sometimes faster than possible without these features. The new BLAS are challenging to implement and test because there are many more subroutines than in the existing Standard, and because we must be able to assess whether a higher precision is used for internal computations than is used for either input or output variables. We have therefore developed an automated process of generating and systematically testing these routines. Our methodology is applicable to languages besides C. In particular, our algorithms used in the testing code will be valuable to all other BLAS implementors. Our extra precision routines achieve excellent performance---close to half of the machine peak Megaflop rate even for the Level 2 BLAS, when the data access is stride one.</description><issn>0098-3500</issn><issn>1557-7295</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2002</creationdate><recordtype>article</recordtype><recordid>eNotkEFLw0AQhRdRsFaP3nPyZOpMdie7OdaqVSh4UM9hk0zKSrKJ2RTqv7dtPH3D42N4PCFuERaIih4o1QbSxQnmTMyQSMc6yehczAAyE0sCuBRXIXwDQIIaZ2L9xMFt_X3k2r7hlv1oR9f5yPoqGjmMzm-jro54P7KvuDrlrdsfrn7g0oWj-7hZflyLi9o2gW_-ORdfL8-fq9d4875-Wy03cSm1HGPkFMuSEiuhVpJVgQUBSSrIEGUoKyRdc1YnGWeZtQUXJKXCIiXFUrGSc3E3_e2H7md3KJi3LpTcNNZztwt5YoxGUHAQ40kshy6Egeu8H1xrh98cIT_OlU9zTTDyDywKW7o</recordid><startdate>200206</startdate><enddate>200206</enddate><creator>Li, Xiaoye S.</creator><creator>Demmel, James W.</creator><creator>Bailey, David H.</creator><creator>Henry, Greg</creator><creator>Hida, Yozo</creator><creator>Iskandar, Jimmy</creator><creator>Kahan, William</creator><creator>Kang, Suh Y.</creator><creator>Kapur, Anil</creator><creator>Martin, Michael C.</creator><creator>Thompson, Brandon J.</creator><creator>Tung, Teresa</creator><creator>Yoo, Daniel J.</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>200206</creationdate><title>Design, implementation and testing of extended and mixed precision BLAS</title><author>Li, Xiaoye S. ; Demmel, James W. ; Bailey, David H. ; Henry, Greg ; Hida, Yozo ; Iskandar, Jimmy ; Kahan, William ; Kang, Suh Y. ; Kapur, Anil ; Martin, Michael C. ; Thompson, Brandon J. ; Tung, Teresa ; Yoo, Daniel J.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c373t-1e61cc52a30f43e4b1b50535b5855913d157fe9f29e99aabeb53341b654e34e43</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2002</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Li, Xiaoye S.</creatorcontrib><creatorcontrib>Demmel, James W.</creatorcontrib><creatorcontrib>Bailey, David H.</creatorcontrib><creatorcontrib>Henry, Greg</creatorcontrib><creatorcontrib>Hida, Yozo</creatorcontrib><creatorcontrib>Iskandar, Jimmy</creatorcontrib><creatorcontrib>Kahan, William</creatorcontrib><creatorcontrib>Kang, Suh Y.</creatorcontrib><creatorcontrib>Kapur, Anil</creatorcontrib><creatorcontrib>Martin, Michael C.</creatorcontrib><creatorcontrib>Thompson, Brandon J.</creatorcontrib><creatorcontrib>Tung, Teresa</creatorcontrib><creatorcontrib>Yoo, Daniel J.</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>ACM transactions on mathematical software</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Li, Xiaoye S.</au><au>Demmel, James W.</au><au>Bailey, David H.</au><au>Henry, Greg</au><au>Hida, Yozo</au><au>Iskandar, Jimmy</au><au>Kahan, William</au><au>Kang, Suh Y.</au><au>Kapur, Anil</au><au>Martin, Michael C.</au><au>Thompson, Brandon J.</au><au>Tung, Teresa</au><au>Yoo, Daniel J.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Design, implementation and testing of extended and mixed precision BLAS</atitle><jtitle>ACM transactions on mathematical software</jtitle><date>2002-06</date><risdate>2002</risdate><volume>28</volume><issue>2</issue><spage>152</spage><epage>205</epage><pages>152-205</pages><issn>0098-3500</issn><eissn>1557-7295</eissn><abstract>This article describes the design rationale, a C implementation, and conformance testing of a subset of the new Standard for the BLAS (Basic Linear Algebra Subroutines): Extended and Mixed Precision BLAS. Permitting higher internal precision and mixed input/output types and precisions allows us to implement some algorithms that are simpler, more accurate, and sometimes faster than possible without these features. The new BLAS are challenging to implement and test because there are many more subroutines than in the existing Standard, and because we must be able to assess whether a higher precision is used for internal computations than is used for either input or output variables. We have therefore developed an automated process of generating and systematically testing these routines. Our methodology is applicable to languages besides C. In particular, our algorithms used in the testing code will be valuable to all other BLAS implementors. Our extra precision routines achieve excellent performance---close to half of the machine peak Megaflop rate even for the Level 2 BLAS, when the data access is stride one.</abstract><doi>10.1145/567806.567808</doi><tpages>54</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 0098-3500
ispartof ACM transactions on mathematical software, 2002-06, Vol.28 (2), p.152-205
issn 0098-3500
1557-7295
language eng
recordid cdi_proquest_miscellaneous_28871040
source ACM Digital Library Complete
title Design, implementation and testing of extended and mixed precision BLAS
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-30T18%3A58%3A13IST&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=Design,%20implementation%20and%20testing%20of%20extended%20and%20mixed%20precision%20BLAS&rft.jtitle=ACM%20transactions%20on%20mathematical%20software&rft.au=Li,%20Xiaoye%20S.&rft.date=2002-06&rft.volume=28&rft.issue=2&rft.spage=152&rft.epage=205&rft.pages=152-205&rft.issn=0098-3500&rft.eissn=1557-7295&rft_id=info:doi/10.1145/567806.567808&rft_dat=%3Cproquest_cross%3E28871040%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=28871040&rft_id=info:pmid/&rfr_iscdi=true