Lineal: An Efficient Linear Algebra Library | Research Square window.SnipcartSettings = { analytics: { enabled: false } }; (function() { var accessVector = localStorage.getItem('access_vector') || ''; window.dataLayer = window.dataLayer || []; if (accessVector) { window.dataLayer.push({ user: { profile: { profileInfo: { snid: accessVector } } } }); } })(); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-K279D39R'); Browse Preprints In Review Journals COVID-19 Preprints AJE Video Bytes Research Tools Research Promotion AJE Professional Editing AJE Rubriq About Preprint Platform In Review Editorial Policies Our Team Advisory Board Help Center Sign In Submit a Preprint Cite Share Download PDF Research Article Lineal: An Efficient Linear Algebra Library Kurt Böhm, Olaf Ippisch This is a preprint; it has not been peer reviewed by a journal. https://doi.org/ 10.21203/rs.3.rs-6329564/v1 This work is licensed under a CC BY 4.0 License Status: Posted Version 1 posted You are reading this latest preprint version Abstract This paper introduces Lineal, a new C++20 linear algebra library designed to solve large sparse linear systems arising from PDE discretization on attainable hardware by optimizing runtime and especially memory consumption. Lineal supports matrix-free linear systems for stencil-based problems, which can store a single value per cell to minimize memory use. This can be paired with MAMGO, Lineal’s Algebraic Multi-Grid implementation based on the algorithm used in DUNE ISTL, using a matrix-free linear system on the finest level and Compressed Sparse Row (CSR) matrices on coarser levels, drastically reducing memory consumption on the finest, and largest, level—a novel approach to our knowledge. It can additionally be combined with Lineal’s very flexible support for mixed precision to minimize memory use and the effect of reduced precision on convergence. Almost all components are fully multithreaded and many support explicit SIMD operations and/or tiling. The main evaluation—solving the stationary diffusion problem using two sets of high-resolution scans of soil samples—shows Lineal’s very good strong scaling and the effectiveness of the optimizations implemented. On the smaller dataset, Lineal outperforms hypre’s BoomerAMG, DUNE ISTL, and Ginkgo, requiring less than half the runtime and memory with CSR matrices and less than a quarter with the hybrid matrix-free approach. Only Lineal can handle the larger dataset on the test system due to its lower memory use. Additional evaluation using the SPE10 Model 2 benchmark further highlights Lineal’s strong performance and potential areas for improvement. MSC Classification: 65F10 , 65F50 , 65N22 , 65N55 , 65Y05 , 65Y15 , 65Y20 Iterative Solvers Algebraic Multigrid Matrix-free Methods Mixed Precision Multithreading Full Text Additional Declarations No competing interests reported. Supplementary Files sm1microporosities.csv sm2dependencies.pdf sm3measurements.pdf Cite Share Download PDF Status: Posted Version 1 posted You are reading this latest preprint version Research Square lets you share your work early, gain feedback from the community, and start making changes to your manuscript prior to peer review in a journal. As a division of Research Square Company, we’re committed to making research communication faster, fairer, and more useful. We do this by developing innovative software and high quality services for the global research community. Our growing team is made up of researchers and industry professionals working together to solve the most critical problems facing scientific publishing. Also discoverable on Platform About Our Team In Review Editorial Policies Advisory Board Help Center Resources Author Services Accessibility API Access RSS feed Manage Cookie Preferences © Research Square 2026 | ISSN 2693-5015 (online) Privacy Policy Terms of Service Do Not Sell My Personal Information {"props":{"pageProps":{"initialData":{"identity":"rs-6329564","acceptedTermsAndConditions":true,"allowDirectSubmit":true,"archivedVersions":[],"articleType":"Research Article","associatedPublications":[],"authors":[{"id":456626146,"identity":"3899f0bc-5de9-4380-bf20-1359d1fac732","order_by":0,"name":"Kurt Böhm","email":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyAQMAAABI0h/eAAAABlBMVEX///8AAABVwtN+AAAACXBIWXMAAA7EAAAOxAGVKw4bAAABF0lEQVRIie2PsWrDMBCGTwQyndOtyLQor2DRoS2YPEtMQF4c6AMUahBkKp1d0odwt4yGQr3oAQwa6hJolgwphWYLlZJVbjp20DdIB9L33x2Ax/MPofYgOUAEvcrW5/boAVwBVJ0KyQ9KPzEXoI2Q+4fjCvK/KWExXbVkEbPLU7VdIozwpEhXy5tbCoM6dypnNOU5UeLiej59lggTpE3GZfFKIVTuNowKM9jsJSm1UYJdhdBkRGKfQtSMf1XuSp29my4VDpvUFDujvLUdgx2UcaRtuFFMOJfBzHbpWP/+gxSJErzUgj8+mV24WvN58EAxVO7BaC1g87mIh5GetJs1jBir0/YLv2M2qN3r73GmYfd/j8fj8RzjBxA0XgMnYJbrAAAAAElFTkSuQmCC","orcid":"","institution":"Clausthal University of Technology","correspondingAuthor":true,"prefix":"","firstName":"Kurt","middleName":"","lastName":"Böhm","suffix":""},{"id":456626147,"identity":"a0bde5fe-cf0d-41fa-9b8f-11ef0ef39073","order_by":1,"name":"Olaf Ippisch","email":"","orcid":"","institution":"Clausthal University of Technology","correspondingAuthor":false,"prefix":"","firstName":"Olaf","middleName":"","lastName":"Ippisch","suffix":""}],"badges":[],"createdAt":"2025-03-28 15:53:17","currentVersionCode":1,"declarations":"","doi":"10.21203/rs.3.rs-6329564/v1","doiUrl":"https://doi.org/10.21203/rs.3.rs-6329564/v1","draftVersion":[],"editorialEvents":[],"editorialNote":"","failedWorkflow":false,"files":[{"id":82770878,"identity":"1e97ffd0-9261-4a28-93ef-2aa3f2bd9b6f","added_by":"auto","created_at":"2025-05-15 06:15:07","extension":"pdf","order_by":1,"title":"","display":"","copyAsset":false,"role":"manuscript-pdf","size":12840045,"visible":true,"origin":"","legend":"","description":"","filename":"springer.pdf","url":"https://assets-eu.researchsquare.com/files/rs-6329564/v1_covered_de2abc9b-9ee2-423e-ab11-d03bfdadd775.pdf"},{"id":82770301,"identity":"9592d956-eda3-4184-83b9-5267f1ab74fd","added_by":"auto","created_at":"2025-05-15 06:07:01","extension":"csv","order_by":0,"title":"","display":"","copyAsset":false,"role":"supplement","size":1831,"visible":true,"origin":"","legend":"","description":"","filename":"sm1microporosities.csv","url":"https://assets-eu.researchsquare.com/files/rs-6329564/v1/7457a38c9c0404295becc803.csv"},{"id":82770303,"identity":"216c5136-5868-46b1-b6db-57b788a5148f","added_by":"auto","created_at":"2025-05-15 06:07:01","extension":"pdf","order_by":1,"title":"","display":"","copyAsset":false,"role":"supplement","size":86457,"visible":true,"origin":"","legend":"","description":"","filename":"sm2dependencies.pdf","url":"https://assets-eu.researchsquare.com/files/rs-6329564/v1/1526778e595f2b81b56e5cb5.pdf"},{"id":82770304,"identity":"dbd2c879-6e7b-4183-ad2c-35ba2ad9bd7e","added_by":"auto","created_at":"2025-05-15 06:07:03","extension":"pdf","order_by":2,"title":"","display":"","copyAsset":false,"role":"supplement","size":150053,"visible":true,"origin":"","legend":"","description":"","filename":"sm3measurements.pdf","url":"https://assets-eu.researchsquare.com/files/rs-6329564/v1/a62a24265a67f98a9a52559f.pdf"}],"financialInterests":"No competing interests reported.","formattedTitle":"Lineal: An Efficient Linear Algebra Library","fulltext":[],"fulltextSource":"","fullText":"","funders":[],"hasAdminPriorityOnWorkflow":false,"hasManuscriptDocX":false,"hasOptedInToPreprint":true,"hasPassedJournalQc":"","hasAnyPriority":false,"hideJournal":true,"highlight":"","institution":"","isAcceptedByJournal":true,"isAuthorSuppliedPdf":true,"isDeskRejected":"","isHiddenFromSearch":false,"isInQc":false,"isInWorkflow":false,"isPdf":true,"isPdfUpToDate":true,"isWithdrawnOrRetracted":false,"journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true},"keywords":"Iterative Solvers, Algebraic Multigrid, Matrix-free Methods, Mixed Precision, Multithreading","lastPublishedDoi":"10.21203/rs.3.rs-6329564/v1","lastPublishedDoiUrl":"https://doi.org/10.21203/rs.3.rs-6329564/v1","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"manuscriptAbstract":"\u003cp\u003eThis paper introduces Lineal, a new C++20 linear algebra library designed to solve large sparse linear systems arising from PDE discretization on attainable hardware by optimizing runtime and especially memory consumption. Lineal supports matrix-free linear systems for stencil-based problems, which can store a single value per cell to minimize memory use. This can be paired with MAMGO, Lineal’s Algebraic Multi-Grid implementation based on the algorithm used in DUNE ISTL, using a matrix-free linear system on the finest level and Compressed Sparse Row (CSR) matrices on coarser levels, drastically reducing memory consumption on the finest, and largest, level—a novel approach to our knowledge. It can additionally be combined with Lineal’s very flexible support for mixed precision to minimize memory use and the effect of reduced precision on convergence. Almost all components are fully multithreaded and many support explicit SIMD operations and/or tiling. The main evaluation—solving the stationary diffusion problem using two sets of high-resolution scans of soil samples—shows Lineal’s very good strong scaling and the effectiveness of the optimizations implemented. On the smaller dataset, Lineal outperforms hypre’s BoomerAMG, DUNE ISTL, and Ginkgo, requiring less than half the runtime and memory with CSR matrices and less than a quarter with the hybrid matrix-free approach. Only Lineal can handle the larger dataset on the test system due to its lower memory use. Additional evaluation using the SPE10 Model 2 benchmark further highlights Lineal’s strong performance and potential areas for improvement.\u003c/p\u003e\n\u003cp\u003eMSC Classification: 65F10 , 65F50 , 65N22 , 65N55 , 65Y05 , 65Y15 , 65Y20\u003c/p\u003e","manuscriptTitle":"Lineal: An Efficient Linear Algebra Library","msid":"","msnumber":"","nonDraftVersions":[{"code":1,"date":"2025-05-15 06:06:57","doi":"10.21203/rs.3.rs-6329564/v1","editorialEvents":[{"type":"communityComments","content":0}],"status":"published","journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true}}],"origin":"","ownerIdentity":"db58bbc3-2fcb-49cd-b283-dd68a10ea7c8","owner":[],"postedDate":"May 15th, 2025","published":true,"recentEditorialEvents":[],"rejectedJournal":[],"revision":"","amendment":"","status":"posted","subjectAreas":[],"tags":[],"updatedAt":"2026-01-14T16:09:02+00:00","versionOfRecord":[],"versionCreatedAt":"2025-05-15 06:06:57","video":"","vorDoi":"","vorDoiUrl":"","workflowStages":[]},"version":"v1","identity":"rs-6329564","journalConfig":"researchsquare"},"__N_SSP":true},"page":"/article/[identity]/[[...version]]","query":{"redirect":"/article/rs-6329564","identity":"rs-6329564","version":["v1"]},"buildId":"8U1c8b4HqxoKbykW_rLl7","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[84888],"gssp":true,"scriptLoader":[]}
Text is read by the "Ask this paper" AI Q&A widget below.
Extraction quality varies by source — PMC NXML preserves structure
cleanly, OA-HTML may include some navigation residue, and OA-PDF can
have broken hyphenation. The publisher copy
(via DOI)
is the canonical version.