TransPimLib: Efficient Transcendental Functions for Processing-in-Memory Systems
Processing-in-memory (PIM) promises to alleviate the data movement bottleneck in modern computing systems. However, current real-world PIM systems have the inherent disadvantage that their hardware is more constrained than in conventional processors (CPU, GPU), due to the difficulty and cost of buil...
Saved in:
Published in | 2023 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS) pp. 235 - 247 |
---|---|
Main Authors | , , , , , |
Format | Conference Proceeding |
Language | English |
Published |
IEEE
01.04.2023
|
Subjects | |
Online Access | Get full text |
DOI | 10.1109/ISPASS57527.2023.00031 |
Cover
Abstract | Processing-in-memory (PIM) promises to alleviate the data movement bottleneck in modern computing systems. However, current real-world PIM systems have the inherent disadvantage that their hardware is more constrained than in conventional processors (CPU, GPU), due to the difficulty and cost of building processing elements near or inside the memory. As a result, general-purpose PIM architectures support fairly limited instruction sets and struggle to execute complex operations such as transcendental functions and other hard-to-calculate operations (e.g., square root). These operations are particularly important for some modern workloads, e.g., activation functions in machine learning applications. In order to provide support for transcendental (and other hardto-calculate) functions in general-purpose PIM systems, we present TransPimLib, a library that provides CORDIC-based and LUT-based methods for trigonometric functions, hyperbolic functions, exponentiation, logarithm, square root, etc. We develop an implementation of TransPimLib for the UPMEM PIM architecture and perform a thorough evaluation of TransPimLib's methods in terms of performance and accuracy, using microbenchmarks and three full workloads (Blackscholes, Sigmoid, Softmax). We open-source all our code and datasets at https://github.com/CMU-SAFARI/transpimlib. |
---|---|
AbstractList | Processing-in-memory (PIM) promises to alleviate the data movement bottleneck in modern computing systems. However, current real-world PIM systems have the inherent disadvantage that their hardware is more constrained than in conventional processors (CPU, GPU), due to the difficulty and cost of building processing elements near or inside the memory. As a result, general-purpose PIM architectures support fairly limited instruction sets and struggle to execute complex operations such as transcendental functions and other hard-to-calculate operations (e.g., square root). These operations are particularly important for some modern workloads, e.g., activation functions in machine learning applications. In order to provide support for transcendental (and other hardto-calculate) functions in general-purpose PIM systems, we present TransPimLib, a library that provides CORDIC-based and LUT-based methods for trigonometric functions, hyperbolic functions, exponentiation, logarithm, square root, etc. We develop an implementation of TransPimLib for the UPMEM PIM architecture and perform a thorough evaluation of TransPimLib's methods in terms of performance and accuracy, using microbenchmarks and three full workloads (Blackscholes, Sigmoid, Softmax). We open-source all our code and datasets at https://github.com/CMU-SAFARI/transpimlib. |
Author | Oliveira, Geraldo F. Item, Maurus Gomez-Luna, Juan Sadrosadati, Mohammad Guo, Yuxin Mutlu, Onur |
Author_xml | – sequence: 1 givenname: Maurus surname: Item fullname: Item, Maurus organization: ETH Zürich – sequence: 2 givenname: Geraldo F. surname: Oliveira fullname: Oliveira, Geraldo F. organization: ETH Zürich – sequence: 3 givenname: Juan surname: Gomez-Luna fullname: Gomez-Luna, Juan organization: ETH Zürich – sequence: 4 givenname: Mohammad surname: Sadrosadati fullname: Sadrosadati, Mohammad organization: ETH Zürich – sequence: 5 givenname: Yuxin surname: Guo fullname: Guo, Yuxin organization: ETH Zürich – sequence: 6 givenname: Onur surname: Mutlu fullname: Mutlu, Onur organization: ETH Zürich |
BookMark | eNotjNFKwzAYRiPohc69gUheoPVP0iz5vRtj00HFQuf1SNJEAmsqSb3Y2zvUq49zOHx35DpNyRPyyKBmDPBp33frvpdKclVz4KIGAMGuyBIVaiFBoBIIt6Q7ZJNKF8c22me6DSG66NNMf7XzabiAOdHdd3JznFKhYcq0y5PzpcT0WcVUvflxymfan8vsx3JPboI5Fb_83wX52G0Pm9eqfX_Zb9ZtFTk0cxWsRBsst0ozNmihlFPcuiCNllZLp7z3TAFHAyC5Fs1qhQNnAl2DqA0XC_Lw9xsv5fErx9Hk85EBk5oLED8us03O |
CODEN | IEEPAD |
ContentType | Conference Proceeding |
DBID | 6IE 6IL CBEJK RIE RIL |
DOI | 10.1109/ISPASS57527.2023.00031 |
DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP All) 1998-Present |
DatabaseTitleList | |
Database_xml | – sequence: 1 dbid: RIE name: IEEE Xplore url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/ sourceTypes: Publisher |
DeliveryMethod | fulltext_linktorsrc |
EISBN | 9798350397390 |
EndPage | 247 |
ExternalDocumentID | 10158230 |
Genre | orig-research |
GroupedDBID | 6IE 6IL CBEJK RIE RIL |
ID | FETCH-LOGICAL-i204t-fb59bfb2b7811d8377c72bcf5a85b85c7eee17029a0052834669d2139c4998a23 |
IEDL.DBID | RIE |
IngestDate | Thu Jan 18 11:14:52 EST 2024 |
IsPeerReviewed | false |
IsScholarly | false |
Language | English |
LinkModel | DirectLink |
MergedId | FETCHMERGED-LOGICAL-i204t-fb59bfb2b7811d8377c72bcf5a85b85c7eee17029a0052834669d2139c4998a23 |
PageCount | 13 |
ParticipantIDs | ieee_primary_10158230 |
PublicationCentury | 2000 |
PublicationDate | 2023-April |
PublicationDateYYYYMMDD | 2023-04-01 |
PublicationDate_xml | – month: 04 year: 2023 text: 2023-April |
PublicationDecade | 2020 |
PublicationTitle | 2023 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS) |
PublicationTitleAbbrev | ISPASS |
PublicationYear | 2023 |
Publisher | IEEE |
Publisher_xml | – name: IEEE |
Score | 1.9111154 |
Snippet | Processing-in-memory (PIM) promises to alleviate the data movement bottleneck in modern computing systems. However, current real-world PIM systems have the... |
SourceID | ieee |
SourceType | Publisher |
StartPage | 235 |
SubjectTerms | activation functions Computer architecture Graphics processing units Instruction sets Libraries Machine learning processing-in-memory processing-near-memory Software transcendental functions |
Title | TransPimLib: Efficient Transcendental Functions for Processing-in-Memory Systems |
URI | https://ieeexplore.ieee.org/document/10158230 |
hasFullText | 1 |
inHoldings | 1 |
isFullTextHit | |
isPrint | |
link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3PS8MwFA5uJ08qTvxNDl5TkyxZUm8iG1PcKMzBbqNJEyhiJ9Ie9K_3Je1UBMFbCfS1zUv53kve9z2ErlJntWGsIBawhQjpGQGUGxHhhfaUFZ6qwHeezUfTpXhYyVVHVo9cGOdcLD5zSbiMZ_nFxjZhqwz-cCbDwVAP9WCdtWStjvXLaHp9v8huFwuIP7hKQlfwoE0Ymsf9aJsSUWOyh-bb57XFIs9JU5vEfvySYvz3C-2jwTdBD2df0HOAdlx1iLKIO1n58liaGzyO2hBwO47DNra6hUgbTwDJ4mLDEK_ijigAVkhZkVmou33HnYz5AC0n46e7KekaJpCSU1ETb2RqvOEm0EcLSD2VVdxYL3MtjZZWwQcwRXmah91gPQSnpAWHGNBC3qNzPjxC_WpTuWOEQ1hnFRiD9EN4sCKMBK9SqyyjudMnaBCmY_3aamKstzNx-sf4GdoNLmlrXs5Rv35r3AXAeW0uoxs_ATJyoSo |
linkProvider | IEEE |
linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3PS8MwFA46D3pSceJvc_CamnTJknoT2dh0G4VtsNto0gSK2Il0B_3rfUk7FUHwVgJ9bfNSvveS930PoZvEGqUZy4kBbCFcOEYA5bqEO64cZbmj0vOdx5PuYM4fF2LRkNUDF8ZaG4rPbOQvw1l-vjJrv1UGfzgT_mBoG-0A8HNR07Ua3i-jye1wmt5PpxCBxDLyfcG9OqFvH_ejcUrAjf4-mmyeWJeLPEfrSkfm45cY479f6QC1vyl6OP0Cn0O0ZcsjlAbkSYuXUaHvcC-oQ8DtOAyb0OwWYm3cBywLyw1DxIobqgBYIUVJxr7y9h03QuZtNO_3Zg8D0rRMIEVMeUWcFol2OtaeQJpD8imNjLVxIlNCK2EkfACTNE4yvx-sOuCWJI8hCjSQ-ags7hyjVrkq7QnCPrAzEoxBAsIdWOFagF-pkYbRzKpT1PbTsXytVTGWm5k4-2P8Gu0OZuPRcjScPJ2jPe-eugLmArWqt7W9BHCv9FVw6SfSfKR3 |
openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=2023+IEEE+International+Symposium+on+Performance+Analysis+of+Systems+and+Software+%28ISPASS%29&rft.atitle=TransPimLib%3A+Efficient+Transcendental+Functions+for+Processing-in-Memory+Systems&rft.au=Item%2C+Maurus&rft.au=Oliveira%2C+Geraldo+F.&rft.au=Gomez-Luna%2C+Juan&rft.au=Sadrosadati%2C+Mohammad&rft.date=2023-04-01&rft.pub=IEEE&rft.spage=235&rft.epage=247&rft_id=info:doi/10.1109%2FISPASS57527.2023.00031&rft.externalDocID=10158230 |