Recursive MaxSquare: Cache-friendly, Parallel, Scalable in situ Rectangular Matrix Transposition

Claudio A. Parra, Travis Yu, Kyu Seon Yum, Arturo Garza, I. Scherson
{"title":"Recursive MaxSquare: Cache-friendly, Parallel, Scalable in situ Rectangular Matrix Transposition","authors":"Claudio A. Parra, Travis Yu, Kyu Seon Yum, Arturo Garza, I. Scherson","doi":"10.1109/CSCI51800.2020.00228","DOIUrl":null,"url":null,"abstract":"An in situ rectangular matrix transposition algorithm is presented based on recursively partitioning an original rectangular matrix into a maximum size square matrix and a remaining rectangular sub-matrix. To transpose the maximum size square sub-matrix, a novel cache-friendly, parallel (multithreaded) and scalable in-place square matrix transposition procedure is proposed: it requires a total of Θ(n2/2) simple memory swaps, a single element temporary storage per thread, and does not make use of complex index arithmetic in the main transposition loop. Recursion is used to transpose the remaining rectangular sub-matrix. Dubbed Recursive MaxSquare, the novel proposed rectangular matrix in-place transposition algorithm uses a generalization of the perfect shuffle/unshuffle data permutation to stitch together the recursively transposed square matrices. The shuffle/unshuffle permutations are shown to be efficiently decomposed using basic vector/segment swaps, exchanges and/or cyclic shifts (rotations). A balanced parallel cycles-based transposition is also proposed for comparison.","PeriodicalId":336929,"journal":{"name":"2020 International Conference on Computational Science and Computational Intelligence (CSCI)","volume":"18 2","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 International Conference on Computational Science and Computational Intelligence (CSCI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CSCI51800.2020.00228","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

An in situ rectangular matrix transposition algorithm is presented based on recursively partitioning an original rectangular matrix into a maximum size square matrix and a remaining rectangular sub-matrix. To transpose the maximum size square sub-matrix, a novel cache-friendly, parallel (multithreaded) and scalable in-place square matrix transposition procedure is proposed: it requires a total of Θ(n2/2) simple memory swaps, a single element temporary storage per thread, and does not make use of complex index arithmetic in the main transposition loop. Recursion is used to transpose the remaining rectangular sub-matrix. Dubbed Recursive MaxSquare, the novel proposed rectangular matrix in-place transposition algorithm uses a generalization of the perfect shuffle/unshuffle data permutation to stitch together the recursively transposed square matrices. The shuffle/unshuffle permutations are shown to be efficiently decomposed using basic vector/segment swaps, exchanges and/or cyclic shifts (rotations). A balanced parallel cycles-based transposition is also proposed for comparison.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
递归MaxSquare:缓存友好,并行,可伸缩的原位矩形矩阵转置
提出了一种基于将原始矩形矩阵递归划分为最大尺寸方阵和剩余矩形子矩阵的原位矩形矩阵转置算法。为了置换最大大小的方阵子矩阵,提出了一种新的缓存友好,并行(多线程)和可扩展的就地方阵置换过程:它需要总共Θ(n2/2)个简单的内存交换,每个线程一个元素临时存储,并且在主置换循环中不使用复杂的索引算法。递归用于对剩余的矩形子矩阵进行转置。被称为递归MaxSquare的新提出的矩形矩阵就地转置算法使用完美的洗牌/非洗牌数据排列的泛化来将递归转置的方阵拼接在一起。shuffle/unshuffle排列显示可以使用基本向量/段交换、交换和/或循环移位(旋转)有效地分解。为了进行比较,还提出了一种基于平衡并联周期的转置方法。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
First Success of Cancer Gene Data Analysis of 169 Microarrays for Medical Diagnosis Artificial Intelligence in Computerized Adaptive Testing Evidence for Monitoring the User and Computing the User’s trust Transfer of Hierarchical Reinforcement Learning Structures for Robotic Manipulation Tasks An open-source application built with R programming language for clinical laboratories to innovate process of excellence and overcome the uncertain outlook during the global healthcare crisis
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1