{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,3]],"date-time":"2026-04-03T02:55:46Z","timestamp":1775184946057,"version":"3.50.1"},"reference-count":47,"publisher":"IOP Publishing","issue":"2","license":[{"start":{"date-parts":[[2023,4,10]],"date-time":"2023-04-10T00:00:00Z","timestamp":1681084800000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2023,4,10]],"date-time":"2023-04-10T00:00:00Z","timestamp":1681084800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/iopscience.iop.org\/info\/page\/text-and-data-mining"}],"funder":[{"name":"National Science Foundation","award":["1931469"],"award-info":[{"award-number":["1931469"]}]},{"DOI":"10.13039\/100000015","name":"US Department of Energy","doi-asserted-by":"crossref","award":["DE-AC02-76SF00515"],"award-info":[{"award-number":["DE-AC02-76SF00515"]}],"id":[{"id":"10.13039\/100000015","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["iopscience.iop.org"],"crossmark-restriction":false},"short-container-title":["Mach. Learn.: Sci. Technol."],"published-print":{"date-parts":[[2023,6,1]]},"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>Recurrent neural networks have been shown to be effective architectures for many tasks in high energy physics, and thus have been widely adopted. Their use in low-latency environments has, however, been limited as a result of the difficulties of implementing recurrent architectures on field-programmable gate arrays (FPGAs). In this paper we present an implementation of two types of recurrent neural network layers\u2014long short-term memory and gated recurrent unit\u2014within the hls4ml framework. We demonstrate that our implementation is capable of producing effective designs for both small and large models, and can be customized to meet specific design requirements for inference latencies and FPGA resources. We show the performance and synthesized designs for multiple neural networks, many of which are trained specifically for jet identification tasks at the CERN Large Hadron Collider.<\/jats:p>","DOI":"10.1088\/2632-2153\/acc0d7","type":"journal-article","created":{"date-parts":[[2023,3,2]],"date-time":"2023-03-02T17:47:31Z","timestamp":1677779251000},"page":"025004","update-policy":"https:\/\/doi.org\/10.1088\/crossmark-policy","source":"Crossref","is-referenced-by-count":15,"title":["Ultra-low latency recurrent neural network inference on FPGAs for physics applications with hls4ml"],"prefix":"10.1088","volume":"4","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-8720-6615","authenticated-orcid":true,"given":"Elham E","family":"Khoda","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8411-9620","authenticated-orcid":false,"given":"Dylan","family":"Rankin","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5545-6513","authenticated-orcid":false,"given":"Rafael","family":"Teixeira de Lima","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8189-3741","authenticated-orcid":true,"given":"Philip","family":"Harris","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9516-0311","authenticated-orcid":false,"given":"Scott","family":"Hauck","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6214-8500","authenticated-orcid":true,"given":"Shih-Chieh","family":"Hsu","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-3386-6869","authenticated-orcid":false,"given":"Michael","family":"Kagan","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3651-0232","authenticated-orcid":false,"given":"Vladimir","family":"Loncar","sequence":"additional","affiliation":[]},{"given":"Chaitanya","family":"Paikara","sequence":"additional","affiliation":[]},{"given":"Richa","family":"Rao","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4244-2061","authenticated-orcid":false,"given":"Sioni","family":"Summers","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0235-1053","authenticated-orcid":false,"given":"Caterina","family":"Vernieri","sequence":"additional","affiliation":[]},{"given":"Aaron","family":"Wang","sequence":"additional","affiliation":[]}],"member":"266","published-online":{"date-parts":[[2023,4,10]]},"reference":[{"key":"mlstacc0d7bib1","doi-asserted-by":"publisher","DOI":"10.1088\/1748-0221\/13\/07\/P07027","article-title":"Fast inference of deep neural networks in FPGAs for particle physics","volume":"13","author":"Duarte","year":"2018","journal-title":"J. Instrum."},{"key":"mlstacc0d7bib2","doi-asserted-by":"publisher","DOI":"10.1088\/2632-2153\/aba042","article-title":"Compressing deep neural networks on FPGAs to binary and ternary precision with hls4ml","volume":"2","author":"Ngadiuba","year":"2020","journal-title":"Mach. Learn.: Sci. Technol."},{"key":"mlstacc0d7bib3","doi-asserted-by":"publisher","DOI":"10.1088\/2632-2153\/ac0ea1","article-title":"Fast convolutional neural networks on FPGAs with hls4ml","volume":"2","author":"\u00c5arrestad","year":"2021","journal-title":"Mach. Learn.: Sci. Technol."},{"key":"mlstacc0d7bib4","doi-asserted-by":"crossref","DOI":"10.1109\/H2RC51942.2020.00010","article-title":"FPGAs-as-a-service toolkit (FaaST)","author":"Rankin","year":"2020"},{"key":"mlstacc0d7bib5","doi-asserted-by":"publisher","first-page":"1735","DOI":"10.1162\/neco.1997.9.8.1735","article-title":"Long short-term memory","volume":"9","author":"Hochreiter","year":"1997","journal-title":"Neural Comput."},{"key":"mlstacc0d7bib6","doi-asserted-by":"crossref","DOI":"10.3115\/v1\/D14-1179","article-title":"Learning phrase representations using RNN encoder-decoder for statistical machine translation","author":"Cho","year":"2014"},{"key":"mlstacc0d7bib7","article-title":"On the difficulty of training recurrent neural networks","author":"Pascanu","year":"2012"},{"key":"mlstacc0d7bib8","article-title":"Identification of jets containing b-hadrons with recurrent neural networks at the atlas experiment","author":"","year":"2017"},{"key":"mlstacc0d7bib9","article-title":"Identification of hadronic tau lepton decays using neural networks in the atlas experiment","author":"","year":"2019"},{"key":"mlstacc0d7bib10","article-title":"Sequence-based machine learning models in jet physics","author":"de Lima","year":"2021"},{"key":"mlstacc0d7bib11","article-title":"Development of a vertex finding algorithm using recurrent neural network","author":"Goto","year":"2021"},{"key":"mlstacc0d7bib12","doi-asserted-by":"publisher","first-page":"40","DOI":"10.1016\/j.nima.2017.06.020","article-title":"Using lstm recurrent neural networks for monitoring the lhc superconducting magnets","volume":"867","author":"Wielgosz","year":"2017","journal-title":"Nucl. Instrum. Methods Phys. Res. A"},{"key":"mlstacc0d7bib13","first-page":"pp 73","article-title":"Investigating deep neural networks for gravitational wave detection in advanced ligo data","author":"Schmitt","year":"2019"},{"key":"mlstacc0d7bib14","article-title":"KamNet: an integrated spatiotemporal deep neural network for rare event search in KamLAND-Zen","author":"Li","year":"2022"},{"key":"mlstacc0d7bib15","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevX.10.011006","article-title":"Using a recurrent neural network to reconstruct quantum dynamics of a superconducting qubit from physical observations","volume":"10","author":"Flurin","year":"2020","journal-title":"Phys. Rev. X"},{"key":"mlstacc0d7bib16","article-title":"CERN Accelerating science (n.d.)","year":"2016"},{"key":"mlstacc0d7bib17","doi-asserted-by":"crossref","DOI":"10.1145\/3020078.3021744","article-title":"FINN","author":"Umuroglu","year":"2017"},{"key":"mlstacc0d7bib18","article-title":"fastmachinelearning\/hls4ml","author":"","year":"2022"},{"key":"mlstacc0d7bib19","article-title":"Keras","author":"Chollet","year":"2015"},{"key":"mlstacc0d7bib20","first-page":"pp 1070","article-title":"Fpga implementation of deep-learning recurrent neural networks with sub-millisecond real-time latency for bci-decoding of large-scale neural sensors (104 nodes)","author":"Heelan","year":"2018"},{"key":"mlstacc0d7bib21","article-title":"Recurrent neural networks hardware implementation on FPGA","author":"Chang","year":"2015"},{"key":"mlstacc0d7bib22","doi-asserted-by":"crossref","DOI":"10.1109\/SiPS.2016.48","article-title":"Fpga-based low-power speech recognition with recurrent neural networks","author":"Lee","year":"2016"},{"key":"mlstacc0d7bib23","first-page":"pp 1","article-title":"A configurable cloud-scale dnn processor for real-time AI","author":"Fowers","year":"2018"},{"key":"mlstacc0d7bib24","article-title":"ESE: efficient speech recognition engine with compressed LSTM on FPGA","author":"Han","year":"2016"},{"key":"mlstacc0d7bib25","doi-asserted-by":"publisher","first-page":"19","DOI":"10.1007\/s41781-021-00066-y","article-title":"Artificial neural networks on FPGAs for real-time energy reconstruction of the atlas LAr calorimeters","volume":"5","author":"Aad","year":"2021","journal-title":"Comput. Softw. Big Sci."},{"key":"mlstacc0d7bib26","first-page":"p 6","article-title":"Accelerating recurrent neural networks for gravitational wave experiments","author":"Que","year":"2021"},{"key":"mlstacc0d7bib27","doi-asserted-by":"crossref","DOI":"10.1109\/FPL.2018.00024","article-title":"Finn-l: library extensions and design trade-off analysis for variable precision lstm networks on FPGAs","author":"Rybalkin","year":"2018"},{"key":"mlstacc0d7bib28","author":"Coussy","year":"2008","edition":"1st edn"},{"key":"mlstacc0d7bib29","doi-asserted-by":"publisher","first-page":"1591","DOI":"10.1109\/TCAD.2015.2513673","article-title":"A survey and evaluation of FPGA high-level synthesis tools","volume":"35","author":"Nane","year":"2016","journal-title":"IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst."},{"key":"mlstacc0d7bib30","article-title":"Catapult high-level synthesis","author":"","year":"2020"},{"key":"mlstacc0d7bib31","article-title":"Vivado","author":"","year":"2022"},{"key":"mlstacc0d7bib32","first-page":"30","article-title":"Vivado design suite","volume":"5","author":"Feist","year":"2012","journal-title":"White Paper"},{"key":"mlstacc0d7bib33","article-title":"HLS4ML LHC Jet dataset (30 particles)","author":"Pierini","year":"2020"},{"key":"mlstacc0d7bib34","doi-asserted-by":"publisher","first-page":"JHEP07(2014)079","DOI":"10.1007\/JHEP07(2014)079","article-title":"The automated computation of tree-level and next-to-leading order differential cross sections and their matching to parton shower simulations","author":"Alwall","year":"2014","journal-title":"J. High Energy Phys."},{"key":"mlstacc0d7bib35","doi-asserted-by":"publisher","first-page":"244","DOI":"10.1016\/j.nuclphysb.2012.10.003","article-title":"Parton distributions with LHC data","volume":"867","author":"Ball","year":"2013","journal-title":"Nucl. Phys. B"},{"key":"mlstacc0d7bib36","doi-asserted-by":"publisher","first-page":"159","DOI":"10.1016\/j.cpc.2015.01.024","article-title":"An introduction to pythia 8.2","volume":"191","author":"Sj\u00f6strand","year":"2015","journal-title":"Comput. Phys. Commun."},{"key":"mlstacc0d7bib37","doi-asserted-by":"publisher","first-page":"3024","DOI":"10.1140\/epjc\/s10052-014-3024-y","article-title":"Tuning pythia 8.1: the monash 2013 tune","volume":"74","author":"Skands","year":"2014","journal-title":"Eur. Phys. J. C"},{"key":"mlstacc0d7bib38","doi-asserted-by":"publisher","DOI":"10.1088\/1748-0221\/13\/01\/T01003","article-title":"The importance of calorimetry for highly-boosted jet substructure","volume":"13","author":"Coleman","year":"2018","journal-title":"J. Instrum."},{"key":"mlstacc0d7bib39","first-page":"pp 807","article-title":"Rectified linear units improve restricted boltzmann machines","author":"Nair","year":"2010"},{"key":"mlstacc0d7bib40","article-title":"Adam: a method for stochastic optimization","author":"Kingma","year":"2015"},{"key":"mlstacc0d7bib41","article-title":"MC: TTbar sample from the CMS HEP Tutorial","author":"Sander"},{"key":"mlstacc0d7bib42","article-title":"The Quick, Draw! Dataset","author":""},{"key":"mlstacc0d7bib43","author":"","year":"2022"},{"key":"mlstacc0d7bib44","article-title":"The Phase-2 upgrade of the CMS Level-1 trigger","author":"","year":"2020"},{"key":"mlstacc0d7bib45","article-title":"Long Short-Term Memory (LSTM) networks with jet constituents for boosted top tagging at the LHC","author":"Egan","year":"2017"},{"key":"mlstacc0d7bib46","doi-asserted-by":"publisher","first-page":"JHE10(2018)093","DOI":"10.1007\/JHEP10(2018)093","article-title":"Jet charge and machine learning","author":"Fraser","year":"2018","journal-title":"J. High Energy Phys."},{"key":"mlstacc0d7bib47","doi-asserted-by":"publisher","first-page":"2179","DOI":"10.1109\/TNS.2021.3087100","article-title":"A reconfigurable neural network ASIC for detector front-end data compression at the HL-LHC","volume":"68","author":"Di Guglielmo","year":"2021","journal-title":"IEEE Trans. Nucl. Sci."}],"container-title":["Machine Learning: Science and Technology"],"original-title":[],"link":[{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7","content-type":"text\/html","content-version":"am","intended-application":"text-mining"},{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7\/pdf","content-type":"application\/pdf","content-version":"am","intended-application":"text-mining"},{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7\/pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7\/pdf","content-type":"application\/pdf","content-version":"am","intended-application":"syndication"},{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7\/pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7\/pdf","content-type":"application\/pdf","content-version":"am","intended-application":"similarity-checking"},{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7\/pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,4,10]],"date-time":"2023-04-10T03:45:34Z","timestamp":1681098334000},"score":1,"resource":{"primary":{"URL":"https:\/\/iopscience.iop.org\/article\/10.1088\/2632-2153\/acc0d7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,4,10]]},"references-count":47,"journal-issue":{"issue":"2","published-online":{"date-parts":[[2023,4,10]]},"published-print":{"date-parts":[[2023,6,1]]}},"URL":"https:\/\/doi.org\/10.1088\/2632-2153\/acc0d7","relation":{"has-review":[{"id-type":"doi","id":"10.1088\/2632-2153\/ACC0D7\/v1\/review1","asserted-by":"object"},{"id-type":"doi","id":"10.1088\/2632-2153\/ACC0D7\/v1\/decision1","asserted-by":"object"},{"id-type":"doi","id":"10.1088\/2632-2153\/ACC0D7\/v2\/review1","asserted-by":"object"},{"id-type":"doi","id":"10.1088\/2632-2153\/ACC0D7\/v2\/decision1","asserted-by":"object"},{"id-type":"doi","id":"10.1088\/2632-2153\/ACC0D7\/v2\/response1","asserted-by":"object"}]},"ISSN":["2632-2153"],"issn-type":[{"value":"2632-2153","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,4,10]]},"assertion":[{"value":"Ultra-low latency recurrent neural network inference on FPGAs for physics applications with hls4ml","name":"article_title","label":"Article Title"},{"value":"Machine Learning: Science and Technology","name":"journal_title","label":"Journal Title"},{"value":"paper","name":"article_type","label":"Article Type"},{"value":"\u00a9 2023 The Author(s). Published by IOP Publishing Ltd","name":"copyright_information","label":"Copyright Information"},{"value":"2022-09-26","name":"date_received","label":"Date Received","group":{"name":"publication_dates","label":"Publication dates"}},{"value":"2023-03-01","name":"date_accepted","label":"Date Accepted","group":{"name":"publication_dates","label":"Publication dates"}},{"value":"2023-04-10","name":"date_epub","label":"Online publication date","group":{"name":"publication_dates","label":"Publication dates"}}]}}