{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/parallelization-of-an-ubiquitous-sequential","title":"Efficient Parallelization of a Ubiquitous Sequential Computation","arxiv_id":"2311.06281","date":"2023-10-27","proceeding":null,"authors":["Franz A. Heinsen"],"abstract":"We find a succinct expression for computing the sequence $x_t = a_t x_{t-1} + b_t$ in parallel with two prefix sums, given $t = (1, 2, \\dots, n)$, $a_t \\in \\mathbb{R}^n$, $b_t \\in \\mathbb{R}^n$, and initial value $x_0 \\in \\mathbb{R}$. On $n$ parallel processors, the computation of $n$ elements incurs $\\mathcal{O}(\\log n)$ time and $\\mathcal{O}(n)$ space. Sequences of this form are ubiquitous in science and engineering, making efficient parallelization useful for a vast number of applications. We implement our expression in software, test it on parallel hardware, and verify that it executes faster than sequential computation by a factor of $\\frac{n}{\\log n}$.","url_abs":"https://arxiv.org/abs/2311.06281v4","url_pdf":"https://arxiv.org/pdf/2311.06281v4.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"parallelization-of-an-ubiquitous-sequential","repo_url":"https://github.com/glassroom/heinsen_sequence","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}