{"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/tiramisu-a-polyhedral-compiler-for-expressing","title":"Tiramisu: A Polyhedral Compiler for Expressing Fast and Portable Code","arxiv_id":"1804.10694","date":"2018-04-27","proceeding":null,"authors":["Riyadh Baghdadi","Jessica Ray","Malek Ben Romdhane","Emanuele Del Sozzo","Abdurrahman Akkas","Yunming Zhang","Patricia Suriana","Shoaib Kamil","Saman Amarasinghe"],"abstract":"This paper introduces Tiramisu, a polyhedral framework designed to generate\nhigh performance code for multiple platforms including multicores, GPUs, and\ndistributed machines. Tiramisu introduces a scheduling language with novel\nextensions to explicitly manage the complexities that arise when targeting\nthese systems. The framework is designed for the areas of image processing,\nstencils, linear algebra and deep learning. Tiramisu has two main features: it\nrelies on a flexible representation based on the polyhedral model and it has a\nrich scheduling language allowing fine-grained control of optimizations.\nTiramisu uses a four-level intermediate representation that allows full\nseparation between the algorithms, loop transformations, data layouts, and\ncommunication. This separation simplifies targeting multiple hardware\narchitectures with the same algorithm. We evaluate Tiramisu by writing a set of\nimage processing, deep learning, and linear algebra benchmarks and compare them\nwith state-of-the-art compilers and hand-tuned libraries. We show that Tiramisu\nmatches or outperforms existing compilers and libraries on different hardware\narchitectures, including multicore CPUs, GPUs, and distributed machines.","url_abs":"http://arxiv.org/abs/1804.10694v5","url_pdf":"http://arxiv.org/pdf/1804.10694v5.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":"tiramisu-a-polyhedral-compiler-for-expressing","repo_url":"https://github.com/AsmaBALAMANE/tiramisu","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"tiramisu-a-polyhedral-compiler-for-expressing","repo_url":"https://github.com/Huawei-MRC-OSI/optml-zoo","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"tiramisu-a-polyhedral-compiler-for-expressing","repo_url":"https://github.com/Tiramisu-Compiler/tiramisu","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"scheduling","task_name":"Scheduling"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1804.10694","atlas_url":"https://app.syntology.ai/?focus=1804.10694","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1804.10694"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/AsmaBALAMANE/tiramisu","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Tiramisu-Compiler/tiramisu","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Huawei-MRC-OSI/optml-zoo","reach":{"status":"ok"}}],"summary":{"unverified":4},"by_repo_kind":{"listed":{"samples":4,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"5838d3cfe3a91b68","entry":"get_sched_rep","repo":"Tiramisu-Compiler/tiramisu","repo_kind":"listed","path":"utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/json_to_tensor.py","file_url":"https://github.com/Tiramisu-Compiler/tiramisu/blob/HEAD/utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/json_to_tensor.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5838d3cfe3a91b68"}},{"code_sha256_prefix":"73ad93b266dd9067","entry":"linear_diophantine_default","repo":"Tiramisu-Compiler/tiramisu","repo_kind":"listed","path":"utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/json_to_tensor.py","file_url":"https://github.com/Tiramisu-Compiler/tiramisu/blob/HEAD/utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/json_to_tensor.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"73ad93b266dd9067"}},{"code_sha256_prefix":"009050c411d2a58e","entry":"pad_access_matrix","repo":"Tiramisu-Compiler/tiramisu","repo_kind":"listed","path":"utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/json_to_tensor.py","file_url":"https://github.com/Tiramisu-Compiler/tiramisu/blob/HEAD/utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/json_to_tensor.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"009050c411d2a58e"}},{"code_sha256_prefix":"dcb517c7e96902a3","entry":"seperate_vector","repo":"Tiramisu-Compiler/tiramisu","repo_kind":"listed","path":"utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/modeling.py","file_url":"https://github.com/Tiramisu-Compiler/tiramisu/blob/HEAD/utils/rl_autoscheduler/tiramisu_programs/surrogate_model_utils/modeling.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"dcb517c7e96902a3"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}