{"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/stripe-tensor-compilation-via-the-nested","title":"Stripe: Tensor Compilation via the Nested Polyhedral Model","arxiv_id":"1903.06498","date":"2019-03-14","proceeding":null,"authors":["Tim Zerrell","Jeremy Bruestle"],"abstract":"Hardware architectures and machine learning (ML) libraries evolve rapidly.\nTraditional compilers often fail to generate high-performance code across the\nspectrum of new hardware offerings. To mitigate, engineers develop hand-tuned\nkernels for each ML library update and hardware upgrade. Unfortunately, this\napproach requires excessive engineering effort to scale or maintain with any\ndegree of state-of-the-art performance. Here we present a Nested Polyhedral\nModel for representing highly parallelizable computations with limited\ndependencies between iterations. This model provides an underlying framework\nfor an intermediate representation (IR) called Stripe, amenable to standard\ncompiler techniques while naturally modeling key aspects of modern ML\ncomputing. Stripe represents parallelism, efficient memory layout, and multiple\ncompute units at a level of abstraction amenable to automatic optimization. We\ndescribe how Stripe enables a compiler for ML in the style of LLVM that allows\nindependent development of algorithms, optimizations, and hardware\naccelerators. We also discuss the design exploration advantages of Stripe over\nkernel libraries and schedule-based or schedule-space-based code generation.","url_abs":"http://arxiv.org/abs/1903.06498v1","url_pdf":"http://arxiv.org/pdf/1903.06498v1.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":"stripe-tensor-compilation-via-the-nested","repo_url":"https://github.com/plaidml/plaidml","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[{"task_slug":"code-generation","task_name":"Code Generation"},{"task_slug":"model","task_name":"model"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}