{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,1]],"date-time":"2026-07-01T20:23:42Z","timestamp":1782937422864,"version":"3.54.5"},"publisher-location":"New York, NY, USA","reference-count":62,"publisher":"ACM","license":[{"start":{"date-parts":[[2025,3,1]],"date-time":"2025-03-01T00:00:00Z","timestamp":1740787200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by-nc\/4.0\/"}],"funder":[{"name":"NSF (National Science Foundation)","award":["1127353,2138259,2138286,2138307,2137603,2138296"],"award-info":[{"award-number":["1127353,2138259,2138286,2138307,2137603,2138296"]}]},{"name":"U.S. Department of Energy","award":["DE-FOA-0002460"],"award-info":[{"award-number":["DE-FOA-0002460"]}]},{"name":"Defense Advanced Research Projects Agency","award":["PRISM, a center in JUMP 2.0"],"award-info":[{"award-number":["PRISM, a center in JUMP 2.0"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2025,3]]},"DOI":"10.1145\/3696443.3708948","type":"proceedings-article","created":{"date-parts":[[2025,2,22]],"date-time":"2025-02-22T11:50:26Z","timestamp":1740225026000},"page":"476-492","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":5,"title":["Code Generation for Cryptographic Kernels using Multi-word Modular Arithmetic on GPU"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0009-0004-0190-4041","authenticated-orcid":false,"given":"Naifeng","family":"Zhang","sequence":"first","affiliation":[{"name":"Carnegie Mellon University, Pittsburgh, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-3529-8973","authenticated-orcid":false,"given":"Franz","family":"Franchetti","sequence":"additional","affiliation":[{"name":"Carnegie Mellon University, Pittsburgh, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2025,3]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/3560827.3563379"},{"key":"e_1_3_2_1_2_1","unstructured":"Ahmad Al Badawi and Yuriy Polyakov. 2023. Demystifying bootstrapping in fully homomorphic encryption. Cryptology ePrint Archive."},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1007\/s13389-021-00260-z"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-47721-7_24"},{"key":"e_1_3_2_1_5_1","volume-title":"23rd USENIX Security Symposium (USENIX Security 14)","author":"Ben-Sasson Eli","year":"2014","unstructured":"Eli Ben-Sasson, Alessandro Chiesa, Eran Tromer, and Madars Virza. 2014. Succinct non-interactive zero knowledge for a von neumann architecture. In 23rd USENIX Security Symposium (USENIX Security 14). 781\u2013796."},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/567806.567807"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/3474366.3486926"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP40000.2020.00050"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","unstructured":"Shawn T Brown Paola Buitrago Edward Hanna Sergiu Sanielevici Robin Scibek and Nicholas A Nystrom. 2021. Bridges-2: a platform for rapidly-evolving and data intensive research. In Practice and Experience in Advanced Research Computing. 1\u20134. https:\/\/doi.org\/10.1145\/3437359.3465593 10.1145\/3437359.3465593","DOI":"10.1145\/3437359.3465593"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISCAIE.2018.8405506"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-70278-0_1"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-10970-7_16"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00145-019-09319-x"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1177\/10943420221077964"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT52795.2021.00032"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-38991-8_5"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2011.336"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-38750-0_20"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA56546.2023.10071017"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2018.2873289"},{"key":"e_1_3_2_1_21_1","volume-title":"2024 33th International Conference on Parallel Architectures and Compilation Techniques (PACT).","author":"Fu Sophia","year":"2024","unstructured":"Sophia Fu, Naifeng Zhang, and Franz Franchetti. 2024. Accelerating High-Precision Number Theoretic Transforms using Intel AVX-512. In 2024 33th International Conference on Parallel Architectures and Compilation Techniques (PACT)."},{"key":"e_1_3_2_1_22_1","volume-title":"Gnu mp","author":"Granlund Torbj\u00f6rn","year":"1996","unstructured":"Torbj\u00f6rn Granlund. 1996. Gnu mp. The GNU Multiple Precision Arithmetic Library, 2, 2 (1996)."},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/ARITH.2016.22"},{"key":"e_1_3_2_1_24_1","volume-title":"Intel\u00ae 64 and ia-32 architectures software developer\u2019s manual","author":"Guide Part","year":"2011","unstructured":"Part Guide. 2011. Intel\u00ae 64 and ia-32 architectures software developer\u2019s manual. Volume 3B: System programming Guide, Part, 2, 11 (2011), 0\u201340."},{"key":"e_1_3_2_1_25_1","unstructured":"Shai Halevi. 2021. HElib (version 2.1.0). https:\/\/github.com\/homenc\/HElib"},{"key":"e_1_3_2_1_26_1","unstructured":"Mike Hamburg. 2015. Ed448-Goldilocks a new elliptic curve. Cryptology ePrint Archive."},{"key":"e_1_3_2_1_27_1","volume-title":"Flint: Fast library for number theory. Computeralgebra Rundbrief.","author":"Hart William B","year":"2013","unstructured":"William B Hart. 2013. Flint: Fast library for number theory. Computeralgebra Rundbrief."},{"key":"e_1_3_2_1_28_1","unstructured":"Wilfred Hughes. 2014. The Fastest BigInt In The West. https:\/\/www.wilfred.me.uk\/blog\/2014\/10\/20\/the-fastest-bigint-in-the-west\/"},{"key":"e_1_3_2_1_29_1","unstructured":"Karthik Inbasekar Yuval Shekel and Michael Asa. 2024. ICICLE v2: Polynomial API for Coding ZK Provers to Run on Specialized Hardware. Cryptology ePrint Archive."},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.3390\/computation9020009"},{"key":"e_1_3_2_1_31_1","first-page":"293","article-title":"Multiplication of many-digital numbers by automatic computers","volume":"145","author":"Karatsuba Anatolii Alekseevich","year":"1962","unstructured":"Anatolii Alekseevich Karatsuba and Yu P Ofman. 1962. Multiplication of many-digital numbers by automatic computers. In Doklady Akademii Nauk. 145, 293\u2013294.","journal-title":"Doklady Akademii Nauk."},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC50251.2020.00033"},{"key":"e_1_3_2_1_33_1","volume-title":"Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA). 1.","author":"Kitano Koji","year":"2014","unstructured":"Koji Kitano and Noriyuki Fujimoto. 2014. Multiple precision integer multiplication on GPUs. In Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA). 1."},{"key":"e_1_3_2_1_34_1","unstructured":"SCIPR LAB. 2022. libsnark: a C++ library for zkSNARK proofs. https:\/\/github.com\/scipr-lab\/libsnark"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2023.3253052"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-48965-0_8"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/3575693.3575711"},{"key":"e_1_3_2_1_38_1","volume-title":"Modular multiplication without trial division. Mathematics of computation, 44, 170","author":"Montgomery Peter L","year":"1985","unstructured":"Peter L Montgomery. 1985. Modular multiplication without trial division. Mathematics of computation, 44, 170 (1985), 519\u2013521."},{"key":"e_1_3_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/ACCESS.2019.2963826"},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/ACCESS.2023.3265583"},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11227-021-03980-5"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11227-020-03441-5"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1109\/TETC.2021.3073475"},{"key":"e_1_3_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.3390\/electronics9071141"},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/3466752.3480070"},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3470496.3527393"},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1109\/ACCESS.2023.3294446"},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2010.72"},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1109\/SEED55351.2022.00013"},{"key":"e_1_3_2_1_51_1","volume-title":"NTL: A library for doing number theory.","author":"Shoup Victor","year":"2001","unstructured":"Victor Shoup. 2001. NTL: A library for doing number theory."},{"key":"e_1_3_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISPASS57527.2023.00034"},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-031-17143-7_25"},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICCAD57390.2023.10323744"},{"key":"e_1_3_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2022.3228628"},{"key":"e_1_3_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICCD58817.2023.00061"},{"key":"e_1_3_2_1_57_1","doi-asserted-by":"publisher","unstructured":"Naifeng Zhang. 2024. Artifact for \u2018Code Generation for Cryptographic Kernels using Multi-word Modular Arithmetic on GPU\u2019. https:\/\/doi.org\/10.5281\/zenodo.14564393 10.5281\/zenodo.14564393","DOI":"10.5281\/zenodo.14564393"},{"key":"e_1_3_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPEC58863.2023.10363559"},{"key":"e_1_3_2_1_59_1","volume-title":"2023 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO).","author":"Zhang Naifeng","year":"2023","unstructured":"Naifeng Zhang and Franz Franchetti. 2023. Generating number theoretic transforms for multi-word integer data types. In 2023 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)."},{"key":"e_1_3_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISCA52012.2021.00040"},{"key":"e_1_3_2_1_61_1","volume-title":"GPU Technology Conference.","author":"Zhao Kaiyong","year":"2009","unstructured":"Kaiyong Zhao. 2009. Implementation of multiple-precision modular multiplication on gpu. In GPU Technology Conference."},{"key":"e_1_3_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1109\/CIT.2010.211"},{"key":"e_1_3_2_1_63_1","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2024.3410847"}],"event":{"name":"CGO '25: 23rd ACM\/IEEE International Symposium on Code Generation and Optimization","location":"Las Vegas NV USA","acronym":"CGO '25","sponsor":["SIGPLAN SIGPLAN Programming Languages","SIGMICRO SIGMICRO Microarchitecture","IEEE Computer Society IEEE Computer Society"]},"container-title":["Proceedings of the 23rd ACM\/IEEE International Symposium on Code Generation and Optimization"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3696443.3708948","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T01:10:13Z","timestamp":1750295413000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3696443.3708948"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,3]]},"references-count":62,"alternative-id":["10.1145\/3696443.3708948","10.1145\/3696443"],"URL":"https:\/\/doi.org\/10.1145\/3696443.3708948","relation":{},"subject":[],"published":{"date-parts":[[2025,3]]},"assertion":[{"value":"2025-03-01","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}