{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:31:56Z","timestamp":1750221116293,"version":"3.41.0"},"reference-count":52,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2019,3,14]],"date-time":"2019-03-14T00:00:00Z","timestamp":1552521600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Intel Corporation through Parallel Computing Center grants to RWTH Aachen and UT Austin"},{"DOI":"10.13039\/100000997","name":"Arnold and Mabel Beckman Foundation","doi-asserted-by":"crossref","id":[{"id":"10.13039\/100000997","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100001659","name":"Deutsche Forschungsgemeinschaft","doi-asserted-by":"crossref","award":["GSC 111"],"award-info":[{"award-number":["GSC 111"]}],"id":[{"id":"10.13039\/501100001659","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Math. Softw."],"published-print":{"date-parts":[[2019,3,31]]},"abstract":"<jats:p>\n            In addition to tensor contractions, one of the most pronounced computational bottlenecks in the nonorthogonally spin-adapted forms of the quantum chemistry methods CCSDT and CCSDTQ, and their approximate forms\u2014including CCSD(T) and CCSDT(Q)\u2014are spin summations. At a first sight, spin summations are operations similar to tensor transpositions, but a closer look reveals additional challenges to high-performance calculations, including temporal locality and scattered memory accesses. This article explores a sequence of algorithmic solutions for spin summations, each exploiting individual properties of either the underlying hardware (e.g., caches, vectorization) or the problem itself (e.g., factorizability). The final algorithm combines the advantages of all the solutions while avoiding their drawbacks; this algorithm achieves high performance through parallelization and vectorization, and by exploiting the temporal locality inherent to spin summations. Combined, these optimizations result in speedups between 2.4\u00d7 and 5.5\u00d7 over the NCC quantum chemistry software package. In addition to such a performance boost, our algorithm can perform the spin summations\n            <jats:italic>in-place<\/jats:italic>\n            , thus reducing the memory footprint by 2\u00d7 over an\n            <jats:italic>out-of-place<\/jats:italic>\n            variant.\n          <\/jats:p>","DOI":"10.1145\/3301319","type":"journal-article","created":{"date-parts":[[2019,3,14]],"date-time":"2019-03-14T17:11:58Z","timestamp":1552583518000},"page":"1-22","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["Spin Summations"],"prefix":"10.1145","volume":"45","author":[{"given":"Paul","family":"Springer","sequence":"first","affiliation":[{"name":"AICES, RWTH Aachen, Aachen, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Devin","family":"Matthews","sequence":"additional","affiliation":[{"name":"ICES, UT Austin, Austin, TX"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Paolo","family":"Bientinesi","sequence":"additional","affiliation":[{"name":"AICES, RWTH Aachen, Aachen, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2019,3,14]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevA.20.1"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0010-4655(99)00542-1"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC.2014.60"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1103\/RevModPhys.79.291"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2004.840311"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.1950567"},{"volume-title":"Computer Systems: A Programmer\u2019s Perspective.","year":"2003","author":"Bryant Randal","key":"e_1_2_1_7_1"},{"key":"e_1_2_1_8_1","doi-asserted-by":"crossref","unstructured":"R. J. Buenker and S. Krebs. 1999. The configuration-driven approach for multireference configuration interaction calculations. In Recent Advances in Multireference Methods K. Hirao (Ed.). World Scientific River Edge NJ 1--29.  R. J. Buenker and S. Krebs. 1999. The configuration-driven approach for multireference configuration interaction calculations. In Recent Advances in Multireference Methods K. Hirao (Ed.). World Scientific River Edge NJ 1--29.","DOI":"10.1142\/9789812812186_0001"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2692916.2555253"},{"volume-title":"Proceedings of the 6th International Symposium on High-Performance Computer Architecture (HPCA-6). 195--205","author":"Chatterjee S.","key":"e_1_2_1_10_1"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.1727484"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.5555\/1413370.1413375"},{"volume-title":"Towards an efficient use of the BLAS library for multilinear tensor contractions. Applied Mathematics and Computation 235 (May","year":"2014","author":"Napoli Edoardo Di","key":"e_1_2_1_13_1"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/71.914776"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.1575193"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1981.234523"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/1356052.1356053"},{"volume-title":"Proceedings of the International Conference on Computational Sciences (ICCS\u201901)","author":"Gunnels John A.","key":"e_1_2_1_18_1"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.3467878"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1021\/jp9051215"},{"volume-title":"Proceedings of the ACM\/IEEE 2002 Conference on Supercomputing. 6.","year":"2002","author":"He Y.","key":"e_1_2_1_21_1"},{"key":"e_1_2_1_22_1","unstructured":"T. Helgaker P. J\u00f8rgensen and J. Olsen. 2013. Molecular Electronic-Structure Theory. Wiley New York NY.  T. Helgaker P. J\u00f8rgensen and J. Olsen. 2013. Molecular Electronic-Structure Theory. Wiley New York NY."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1021\/jp034596z"},{"key":"e_1_2_1_24_1","unstructured":"Intel Corporation. 2015. Intel 64 and IA-32 Architectures Optimization Reference Manual. Available at http:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/manuals\/64-ia-32-architectures-optimization-manual.pdf.  Intel Corporation. 2015. Intel 64 and IA-32 Architectures Optimization Reference Manual. Available at http:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/manuals\/64-ia-32-architectures-optimization-manual.pdf."},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1021\/jp811082p"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10766-015-0366-5"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.1290014"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.463930"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.procs.2012.04.044"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1152154.1152190"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cpc.2014.12.013"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1021\/ct1007247"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2381056.2381073"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1137\/16M108968X"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1021\/ct301024v"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.4907278"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/1122018.1122054"},{"volume-title":"Memory bandwidth and machine balance in current high performance computers","year":"1995","author":"McCalpin John D.","key":"e_1_2_1_38_1"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC.2010.2"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1063\/1.452353"},{"volume-title":"Hennessy","year":"2007","author":"Patterson David A.","key":"e_1_2_1_41_1"},{"volume-title":"Proceedings of the 15th Annual Conference of the International Speech Communication Association.","year":"2014","author":"Sak Ha\u015fim","key":"e_1_2_1_42_1"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1080\/00268978300100661"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/3157733"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/3104988"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/2935323.2935328"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/3091966.3091968"},{"key":"e_1_2_1_48_1","unstructured":"J. F. Stanton J. Gauss M. E. Harding P. G. Szalay A. A. Auer R. J. Bartlett etal 2014. CFOUR Coupled-Cluster techniques for Computational Chemistry a quantum-chemical program package with the integral packages MOLECULE (J. Alml\u00f6f and P. R. Taylor) PROPS (P. R. Taylor) ABACUS (T. Helgaker H. J. Jensen P. J\u00f8rgensen and J. Olsen) and ECP routines by A. V. Mitin and C. van W\u00fcllen. For the current version see http:\/\/www.cfour.de.  J. F. Stanton J. Gauss M. E. Harding P. G. Szalay A. A. Auer R. J. Bartlett et al. 2014. CFOUR Coupled-Cluster techniques for Computational Chemistry a quantum-chemical program package with the integral packages MOLECULE (J. Alml\u00f6f and P. R. Taylor) PROPS (P. R. Taylor) ABACUS (T. Helgaker H. J. Jensen P. J\u00f8rgensen and J. Olsen) and ECP routines by A. V. Mitin and C. van W\u00fcllen. For the current version see http:\/\/www.cfour.de."},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1016\/0304-3991(91)90109-J"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/2764454"},{"key":"e_1_2_1_51_1","unstructured":"Andrey Vladimirov. 2013. Multithreaded Transposition of Square Matrices With Common Code for Intel Xeon Processors and Intel Xeon Phi Coprocessors. Available at https:\/\/hgpu.org\/?p&equals;11002.  Andrey Vladimirov. 2013. Multithreaded Transposition of Square Matrices With Common Code for Intel Xeon Processors and Intel Xeon Phi Coprocessors. Available at https:\/\/hgpu.org\/?p&equals;11002."},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPSW.2014.43"}],"container-title":["ACM Transactions on Mathematical Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3301319","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3301319","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T01:02:04Z","timestamp":1750208524000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3301319"}},"subtitle":["A High-Performance Perspective"],"short-title":[],"issued":{"date-parts":[[2019,3,14]]},"references-count":52,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2019,3,31]]}},"alternative-id":["10.1145\/3301319"],"URL":"https:\/\/doi.org\/10.1145\/3301319","relation":{},"ISSN":["0098-3500","1557-7295"],"issn-type":[{"type":"print","value":"0098-3500"},{"type":"electronic","value":"1557-7295"}],"subject":[],"published":{"date-parts":[[2019,3,14]]},"assertion":[{"value":"2017-05-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-11-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2019-03-14","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}