{"title":"SymTensor的codease release 1.3","authors":"Yang Gao, P. Helms, G. Chan, Edgar Solomonik","doi":"10.21468/scipostphyscodeb.10-r1.3","DOIUrl":null,"url":null,"abstract":"Tensor contractions are ubiquitous in computational chemistry and\nphysics, where tensors generally represent states or operators and\ncontractions express the algebra of these quantities. In this context,\nthe states and operators often preserve physical conservation laws,\nwhich are manifested as group symmetries in the tensors. These group\nsymmetries imply that each tensor has block sparsity and can be stored\nin a reduced form. For nontrivial contractions, the memory footprint and\ncost are lowered, respectively, by a linear and a quadratic factor in\nthe number of symmetry sectors. State-of-the-art tensor contraction\nsoftware libraries exploit this opportunity by iterating over blocks or\nusing general block-sparse tensor representations. Both approaches\nentail overhead in performance and code complexity. With intuition aided\nby tensor diagrams, we present a technique, irreducible representation\nalignment, which enables efficient handling of Abelian group symmetries\nvia only dense tensors, by using contraction-specific reduced forms.\nThis technique yields a general algorithm for arbitrary group symmetric\ncontractions, which we implement in Python and apply to a variety of\nrepresentative contractions from quantum chemistry and tensor network\nmethods. As a consequence of relying on only dense tensor contractions,\nwe can easily make use of efficient batched matrix multiplication via\nIntel’s MKL and distributed tensor contraction via the Cyclops library,\nachieving good efficiency and parallel scalability on up to 4096 Knights\nLanding cores of a supercomputer.","PeriodicalId":430271,"journal":{"name":"SciPost Physics Codebases","volume":"6 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-02-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Codebase release 1.3 for SymTensor\",\"authors\":\"Yang Gao, P. Helms, G. Chan, Edgar Solomonik\",\"doi\":\"10.21468/scipostphyscodeb.10-r1.3\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Tensor contractions are ubiquitous in computational chemistry and\\nphysics, where tensors generally represent states or operators and\\ncontractions express the algebra of these quantities. In this context,\\nthe states and operators often preserve physical conservation laws,\\nwhich are manifested as group symmetries in the tensors. These group\\nsymmetries imply that each tensor has block sparsity and can be stored\\nin a reduced form. For nontrivial contractions, the memory footprint and\\ncost are lowered, respectively, by a linear and a quadratic factor in\\nthe number of symmetry sectors. State-of-the-art tensor contraction\\nsoftware libraries exploit this opportunity by iterating over blocks or\\nusing general block-sparse tensor representations. Both approaches\\nentail overhead in performance and code complexity. With intuition aided\\nby tensor diagrams, we present a technique, irreducible representation\\nalignment, which enables efficient handling of Abelian group symmetries\\nvia only dense tensors, by using contraction-specific reduced forms.\\nThis technique yields a general algorithm for arbitrary group symmetric\\ncontractions, which we implement in Python and apply to a variety of\\nrepresentative contractions from quantum chemistry and tensor network\\nmethods. As a consequence of relying on only dense tensor contractions,\\nwe can easily make use of efficient batched matrix multiplication via\\nIntel’s MKL and distributed tensor contraction via the Cyclops library,\\nachieving good efficiency and parallel scalability on up to 4096 Knights\\nLanding cores of a supercomputer.\",\"PeriodicalId\":430271,\"journal\":{\"name\":\"SciPost Physics Codebases\",\"volume\":\"6 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-02-24\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"SciPost Physics Codebases\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.21468/scipostphyscodeb.10-r1.3\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"SciPost Physics Codebases","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.21468/scipostphyscodeb.10-r1.3","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Tensor contractions are ubiquitous in computational chemistry and
physics, where tensors generally represent states or operators and
contractions express the algebra of these quantities. In this context,
the states and operators often preserve physical conservation laws,
which are manifested as group symmetries in the tensors. These group
symmetries imply that each tensor has block sparsity and can be stored
in a reduced form. For nontrivial contractions, the memory footprint and
cost are lowered, respectively, by a linear and a quadratic factor in
the number of symmetry sectors. State-of-the-art tensor contraction
software libraries exploit this opportunity by iterating over blocks or
using general block-sparse tensor representations. Both approaches
entail overhead in performance and code complexity. With intuition aided
by tensor diagrams, we present a technique, irreducible representation
alignment, which enables efficient handling of Abelian group symmetries
via only dense tensors, by using contraction-specific reduced forms.
This technique yields a general algorithm for arbitrary group symmetric
contractions, which we implement in Python and apply to a variety of
representative contractions from quantum chemistry and tensor network
methods. As a consequence of relying on only dense tensor contractions,
we can easily make use of efficient batched matrix multiplication via
Intel’s MKL and distributed tensor contraction via the Cyclops library,
achieving good efficiency and parallel scalability on up to 4096 Knights
Landing cores of a supercomputer.