skip to main content
10.1145/3656019.3676944acmconferencesArticle/Chapter ViewAbstractPublication PagespactConference Proceedingsconference-collections
research-article

Toast: A Heterogeneous Memory Management System

Published: 13 October 2024 Publication History

Abstract

Modern applications employ several heterogeneous memory types for improved performance, security, and reliability. To manage them, programmers must currently digress from the traditional load/store interface and rely on various custom libraries specific to each memory type, thus introducing programmability, performance, portability, and protection challenges.
To overcome these challenges, we propose Toast, a compiler-based approach that offers a simplified programming model based on the established load/store interface along with programmable error-handling and memory consistency enforcement mechanisms and a protection library for memory safety.
We implement Toast in the Clang/LLVM compiler framework accompanied by a runtime library, employing software storage capabilities and hardware-based protection mechanisms. Our evaluation based on four applications, which use heterogeneous memory types, shows that Toast improves the programmability, portability, and protection of applications, while offering performance on par with a hand-optimized version of the application.

References

[1]
[n. d.]. Armv 8.5 - A: Memory Tagging Extension. https://documentation-service.arm.com/static/624ea580caabfd7b3c13e23f?token=. Last accessed: Oct 2020.
[2]
[n. d.]. C/C++11 mappings to processors. https://www.cl.cam.ac.uk/ pes20/cpp/cpp0xmappings.html.
[3]
[n. d.]. Domains. https://developer.arm.com/documentation/ddi0211/k/memory-management-unit/memory-access-control/domains. Last accessed: Oct 2020.
[4]
[n. d.]. eRPC: a log store application. https://github.com/erpc-io/eRPC/tree/master/apps/log. https://github.com/erpc-io/eRPC/tree/master/apps/log Last accessed: Jan, 2022.
[5]
[n. d.]. eRPC-Raft. https://github.com/erpc-io/eRPC/tree/master/apps/smr.
[6]
[n. d.]. Intel DPDK. http://dpdk.org/.
[7]
[n. d.]. Intel Network Adapter Driver for PCIe* 40 Gigabit Ethernet Network Connections under Linux*. https://www.intel.com/content/www/us/en/download/18026/intel-network-adapter-driver-for-pcie-40-gigabit-ethernet-network-connections-under-linux.html. Last accessed: Jan, 2022.
[8]
[n. d.]. Intel Persistent Memory Development Kit (PMDK). https://pmem.io/pmdk/.
[9]
[n. d.]. Intel Software Guard Extensions (Intel SGX). https://software.intel.com/en-us/sgx.
[10]
[n. d.]. Intel Storage Performance Development Kit. http://www.spdk.io.
[11]
[n. d.]. Intel® 64 and IA-32 Architectures Software Developer Manuals. https://software.intel.com/content/www/us/en/develop/articles/intel-sdm.html. Last accessed: Oct 2020.
[12]
[n. d.]. Linux* Base Driver for Intel Gigabit Ethernet Network Connections. https://www.intel.com/content/www/us/en/support/ articles/000005480/ethernet-products.html. Last accessed: Jan, 2022.
[13]
[n. d.]. oneAPI. https://www.oneapi.com/. Last accessed: Dec, 2021.
[14]
[n. d.]. OpenMP: The OpenMP API specification for parallel programming. https://www.openmp.org/. Last accessed: Dec 2021.
[15]
[n. d.]. Project Verona: Research programming language for concurrent ownership. https://microsoft.github.io/verona/. Last accessed: Oct, 2022.
[16]
[n. d.]. YCSB. https://github.com/brianfrankcooper/YCSB.
[17]
1990. PA-RISC 1.1 Architecture and Instruction Set: Reference Manual. Hewlett Packard. https://books.google.de/books?id=UahBuAAACAAJ
[18]
Martín Abadi, Mihai Budiu, Úlfar Erlingsson, and Jay Ligatti. 2009. Control-Flow Integrity Principles, Implementations, and Applications. (2009).
[19]
V. Adve, Guohua Jin, J. Mellor-Crummey, and Qing Yi. 1998. High Performance Fortran Compilation Techniques for Parallelizing Scientific Codes. In SC ’98: Proceedings of the 1998 ACM/IEEE Conference on Supercomputing.
[20]
Jade Alglave, Will Deacon, Richard Grisenthwaite, Antoine Hacquard, and Luc Maranget. 2021. Armed Cats: Formal Concurrency Modelling at Arm. ACM Trans. Program. Lang. Syst. 43, 2, Article 8 (2021), 54 pages. https://doi.org/10.1145/3458926
[21]
Jade Alglave, Luc Maranget, and Michael Tautschnig. 2014. Herding cats: modelling, simulation, testing, and data-mining for weak memory. ACM Trans. Program. Lang. Syst. 36, 2 (2014), 7:1–7:74. https://doi.org/10.1145/2627752
[22]
J.Gold Associates. [n. d.]. oneAPI: Software Abstraction for a Heterogeneous Computing World. https://jgoldassociates.com/ White_Papers/OneAPI_Whitepaper.pdf.
[23]
Hagit Attiya, Amotz Bar-Noy, and Danny Dolev. 1995. Sharing Memory Robustly in Message-passing Systems. J. ACM (1995).
[24]
Oren Avissar, Rajeev Barua, and Dave Stewart. 2001. Heterogeneous Memory Management for Embedded Systems. In Proceedings of the 2001 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASE’01).
[25]
Maurice Bailleu, Dimitra Giantsidi, Vasilis Gavrielatos, Do Le Quoc, Vijay Nagarajan, and Pramod Bhatotia. 2021. Avocado: A Secure In-Memory Distributed Storage System. In 2021 USENIX Annual Technical Conference (ATC’21).
[26]
Maurice Bailleu, Jörg Thalheim, Pramod Bhatotia, Christof Fetzer, Michio Honda, and Kapil Vaswani. 2019. SPEICHER: Securing LSM-based Key-Value Stores using Shielded Execution. In 17th USENIX Conference on File and Storage Technologies (FAST).
[27]
Mahesh Balakrishnan, Dahlia Malkhi, John D. Davis, Vijayan Prabhakaran, Michael Wei, and Ted Wobber. 2013. CORFU: A Distributed Shared Log. (2013).
[28]
Mark Batty, Scott Owens, Susmit Sarkar, Peter Sewell, and Tjark Weber. 2011. Mathematizing C++ concurrency. In POPL’11. ACM, 55–66. https://doi.org/10.1145/1926385.1926394
[29]
Andrew Baumann, Paul Barham, Pierre-Evariste Dagand, Tim Harris, Rebecca Isaacs, Simon Peter, Timothy Roscoe, Adrian Schüpbach, and Akhilesh Singhania. 2009. The Multikernel: A New OS Architecture for Scalable Multicore Systems. In Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles (Big Sky, Montana, USA) (SOSP ’09). Association for Computing Machinery, New York, NY, USA, 29–44. https://doi.org/10.1145/1629575.1629579
[30]
Viktors Berstis. 1980. In Proceedings of the 7th Annual Symposium on Computer Architecture (ISCA ’80). http://doi.acm.org/10.1145/800053.801932
[31]
Andrea Bittau, Petr Marchenko, Mark Handley, and Brad Karp. 2008. Wedge: Splitting Applications into Reduced-Privilege Compartments. (2008).
[32]
Soham Chakraborty and Viktor Vafeiadis. 2016. Validating optimizations of concurrent C/C++ programs. In CGO’16. ACM, 216–226. https://doi.org/10.1145/2854038.2854051
[33]
Soham Chakraborty and Viktor Vafeiadis. 2017. Formalizing the Concurrency Semantics of an LLVM Fragment. In CGO ’17. IEEE, 100–110.
[34]
Soham Chakraborty and Viktor Vafeiadis. 2019. Grounding Thin-Air Reads with Event Structures. 3, POPL (2019). https://doi.org/10.1145/3290383
[35]
Wei-Yu Chen, C. Iancu, and K. Yelick. 2005. Communication optimizations for fine-grained UPC applications. In 14th International Conference on Parallel Architectures and Compilation Techniques (PACT’05).
[36]
Clang: a C language family frontend for LLVM [n. d.]. Clang: a C language family frontend for LLVM. https://clang.llvm.org/. https://clang.llvm.org/Last accessed: Jan, 2021.
[37]
CXL™ Consortium. 2024/09/17 13:07:18. Compute Express Link™: The Breakthrough CPU-to-Device Interconnect. https://www.computeexpresslink.org/.
[38]
Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. 2010. Benchmarking cloud serving systems with YCSB. In Proceedings of the 1st ACM Symposium on Cloud computing (SoCC).
[39]
LWN-Jonathan Corbet. [n. d.]. Memory Protection Keys. https://lwn.net/Articles/643797/. https://lwn.net/Articles/643797/ Last accessed: Oct, 2022.
[40]
Intel Corporation. [n. d.]. C++ Transactions for Persistent Memory Programming. https://www.intel.com/content/www/us/en/developer/articles/technical/c-plus-plus-transactions-for-persistent-memory-programming.html.
[41]
Intel Corporation. [n. d.]. OpenCL™ 2.0 Shared Virtual Memory Overview. https://www.intel.com/content/www/us/en/developer/articles/technical/opencl-20-shared-virtual-memory-overview.html.
[42]
Intel Corporation. [n. d.]. What is SYCL? Quick Guide to SYCL Implementations. https://www.intel.com/content/www/us/en/developer/articles/technical/quick-guide-to-sycl-implementations.html#gs.56e52p.
[43]
William J Dally, Stephen W Keckler, Nick Carter, Andrew Chang, Marco Fillo, and Whay S Lee. 1994. M-Machine architecture v1. Technical Report. 0. Technical Report–MIT Concurrent VLSI Architecture Memo 58, Massachusetts Institute of Technology.
[44]
Aleksandar Dragojević, Dushyanth Narayanan, Miguel Castro, and Orion Hodson. 2014. FaRM: Fast Remote Memory. In 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI).
[45]
Alexandre Eichenberger, K. O’Brien, Peng Wu, Tong Chen, P. Oden, Dan Prener, J.C. Shepherd, Byoungro So, Zehra Sura, A. Wang, Tao Zhang, Peng Zhao, and Michael Gschwind. 2005. Optimizing Compiler for the CELL Processor. In 14th International Conference on Parallel Architectures and Compilation Techniques (PACT’05).
[46]
Úlfar Erlingsson, Martín Abadi, Michael Vrable, Mihai Budiu, and George C. Necula. 2006. XFI: Software Guards for System Address Spaces. In 7th USENIX Symposium on Operating Systems Design and Implementation (OSDI 06).
[47]
Adrien Ghosn, Marios Kogias, Mathias Payer, James R. Larus, and Edouard Bugnion. 2021. Enclosure: Language-Based Restriction of Untrusted Libraries. In Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS ’21 (Virtual, USA).
[48]
Google. [n. d.]. Fuchsia. https://fuchsia.dev/. https://fuchsia.dev/ Last accessed: Oct, 2022.
[49]
The Khronos® Group. [n. d.]. SYCL Overview. https://www.khronos.org/sycl/.
[50]
Chuanxiong Guo, Haitao Wu, Zhong Deng, Gaurav Soni, Jianxi Ye, Jitu Padhye, and Marina Lipshteyn. 2016. RDMA over Commodity Ethernet at Scale. In Proceedings of the 2016 ACM SIGCOMM Conference (Florianopolis, Brazil) (SIGCOMM ’16). 202–215.
[51]
Andreas Haas, Andreas Rossberg, Derek L. Schuff, Ben L. Titzer, Michael Holman, Dan Gohman, Luke Wagner, Alon Zakai, and JF Bastien. 2017. Bringing the Web up to Speed with WebAssembly. SIGPLAN Not. (2017).
[52]
Matthias Hille, Nils Asmussen, Pramod Bhatotia, and Hermann Härtig. 2019. SemperOS: A Distributed Capability System. In 2019 USENIX Annual Technical Conference (USENIX ATC 19). USENIX Association, Renton, WA, 709–722. https://www.usenix.org/conference/atc19/presentation/hille
[53]
Michio Honda, Giuseppe Lettieri, Lars Eggert, and Douglas Santry. 2018. PASTE: A Network Programming Interface for Non-Volatile Main Memory. In 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI).
[54]
Merle E. Houdek, Frank G. Soltis, and Roy L. Hoffman. 1981. IBM System/38 Support for Capability-Based Addressing. In ISCA.
[55]
Terry Ching-Hsiang Hsu, Kevin Hoffman, Patrick Eugster, and Mathias Payer. 2016. Enforcing Least Privilege Memory Views for Multithreaded Applications. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security.
[56]
J. Huang, X. Ouyang, J. Jose, M. Wasi-ur-Rahman, H. Wang, M. Luo, H. Subramoni, C. Murthy, and D. K. Panda. 2012. High-Performance Design of HBase with RDMA over InfiniBand. In 2012 IEEE 26th International Parallel and Distributed Processing Symposium (IPDPS).
[57]
ISO/IEC 14882. 2011. Programming Language C++.
[58]
ISO/IEC 9899. 2011. Programming Language C.
[59]
Minwen Ji, Alistair Veitch, and John Wilkes. 2003. Seneca: Remote Mirroring Done Write. In 2003 USENIX Annual Technical Conference (USENIX ATC 03).
[60]
Anuj Kalia, Michael Kaminsky, and David Andersen. 2019. Datacenter RPCs can be General and Fast. In 16th USENIX Symposium on Networked Systems Design and Implementation (NSDI).
[61]
Anuj Kalia, Michael Kaminsky, and David G. Andersen. 2016. Design Guidelines for High Performance RDMA Systems. In 2016 USENIX Annual Technical Conference (USENIX ATC 16). USENIX Association, Denver, CO, 437–450. https://www.usenix.org/conference/atc16/technical-sessions/presentation/kalia
[62]
Jeehoon Kang, Hur, Chung-Kil, Ori Lahav, Viktor Vafeiadis, and Derek Dreyer. 2017. A promising semantics for relaxed-memory concurrency. In POPL’17. ACM.
[63]
Taehoon Kim, Joongun Park, Jaewook Woo, Seungheun Jeon, and Jaehyuk Huh. 2019. ShieldStore: Shielded In-Memory Key-Value Storage with SGX. In Proceedings of the Fourteenth EuroSys Conference 2019 (EuroSys).
[64]
Gerwin Klein, June Andronick, Kevin Elphinstone, Gernot Heiser, David Cock, Philip Derrin, Dhammika Elkaduwe, Kai Engelhardt, Rafal Kolanski, Michael Norrish, Thomas Sewell, Harvey Tuch, and Simon Winwood. 2010. SeL4: Formal Verification of an Operating-System Kernel. Commun. ACM 53, 6 (jun 2010), 107–115. https://doi.org/10.1145/1743546.1743574
[65]
Genode Labs. [n. d.]. Genode. https://genode.org/. https://genode.org/ Last accessed: Oct, 2022.
[66]
Ori Lahav, Viktor Vafeiadis, Jeehoon Kang, Chung-Kil Hur, and Derek Dreyer. 2017. Repairing Sequential Consistency in C/C++11. In PLDI 2017. 618–632. https://doi.org/10.1145/3062341.3062352
[67]
R.P. LaRowe, C.S. Ellis, and M.A. Holliday. 1992. Evaluation of NUMA memory management through modeling and measurements. IEEE Transactions on Parallel and Distributed Systems.
[68]
Chris Lattner and Vikram Adve. 2004. LLVM: A Compilation Framework for Lifelong Program Analysis and Transformation. In CGO. San Jose, CA, USA, 75–88.
[69]
Hyeontaek Lim, Dongsu Han, David G. Andersen, and Michael Kaminsky. 2014. MICA: A Holistic Approach to Fast In-Memory Key-Value Storage. In 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI 14). USENIX Association, Seattle, WA, 429–444. https://www.usenix.org/conference/nsdi14/technical-sessions/presentation/lim
[70]
Felix Xiaozhu Lin and Xu Liu. 2016. Memif: Towards Programming Heterogeneous Memory Asynchronously. In Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’16).
[71]
Joshua Lind, Christian Priebe, Divya Muthukumaran, Dan O’Keeffe, Pierre-Louis Aublin, Florian Kelbert, Tobias Reiher, David Goltzsche, David Eyers, Rüdiger Kapitza, Christof Fetzer, and Peter Pietzuch. 2017. Glamdring: Automatic Application Partitioning for Intel SGX. In Proceedings of the 2017 USENIX Conference on Usenix Annual Technical Conference.
[72]
James Litton, Anjo Vahldiek-Oberwagner, Eslam Elnikety, Deepak Garg, Bobby Bhattacharjee, and Peter Druschel. 2016. Light-Weight Contexts: An OS Abstraction for Safety and Performance. In 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 16).
[73]
N. A. Lynch and A. A. Shvartsman. 1997. Robust emulation of shared memory using dynamic quorum-acknowledged broadcasts. In Proceedings of IEEE 27th International Symposium on Fault Tolerant Computing (FtCS).
[74]
Deepak Majeti, Rajkishore Barik, Jisheng Zhao, Max Grossman, Vivek Sarkar, Dieter Mey, Michael Alexander, Paolo Bientinesi, Mario Cannataro, Carsten Clauss, Alexandru Costan, Gabor Kecskemeti, Christine Morin, Laura Ricci, Julio Sahuquillo, Martin Schulz, Vittorio Scarano, Stephen L. Scott, and Josef Weidendorfer. 2014. Compiler-Driven Data Layout Transformation for Heterogeneous Platforms. In Euro-Par 2013: Parallel Processing Workshops. Springer Berlin Heidelberg.
[75]
Robin Morisset, Pankaj Pawan, and Francesco Zappa Nardelli. 2013. Compiler testing via a theory of sound optimisations in the C11/C++11 memory model. In PLDI’13. ACM, 187–196. https://doi.org/10.1145/2491956.2491967
[76]
R. M. Needham and R. D.H. Walker. 1977. The Cambridge CAP Computer and Its Protection System. In Proceedings of the Sixth ACM Symposium on Operating Systems Principles (West Lafayette, Indiana, USA) (SOSP ’77). Association for Computing Machinery, New York, NY, USA, 1–10. https://doi.org/10.1145/800214.806541
[77]
NVIDIA. [n. d.]. CUDA Toolkit. https://developer.nvidia.com/cuda-toolkit.
[78]
Meni Orenbach, Yan Michalevsky, Christof Fetzer, and Mark Silberstein. 2019. CoSMIX: A Compiler-based System for Secure Memory Instrumentation and Execution in Enclaves. In 2019 USENIX Annual Technical Conference (USENIX ATC 19).
[79]
Scott Owens. 2010. Reasoning about the Implementation of Concurrency Abstractions on x86-TSO. In ECOOP. 478–503.
[80]
Soyeon Park, Sangho Lee, Wen Xu, HyunGon Moon, and Taesoo Kim. 2019. libmpk: Software Abstraction for Intel Memory Protection Keys (Intel MPK). In 2019 USENIX Annual Technical Conference (USENIX ATC 19). USENIX Association, Renton, WA, 241–254. https://www.usenix.org/conference/atc19/presentation/park-soyeon
[81]
Anton Podkopaev, Ori Lahav, and Viktor Vafeiadis. 2019. Bridging the Gap between Programming Languages and Hardware Weak Memory Models. Proc. ACM Program. Lang. 3, POPL (2019). https://doi.org/10.1145/3290382
[82]
William Pugh. 1990. Skip Lists: A Probabilistic Alternative to Balanced Trees. Communication of ACM (CACM) (1990).
[83]
Christopher Pulte, Shaked Flur, Will Deacon, Jon French, Susmit Sarkar, and Peter Sewell. 2018. Simplifying ARM concurrency: multicopy-atomic axiomatic and operational models for ARMv8. PACMPL 2, POPL (2018), 19:1–19:29. https://doi.org/10.1145/3158107
[84]
Azalea Raad, John Wickerson, Gil Neiger, and Viktor Vafeiadis. 2019. Persistency Semantics of the Intel-X86 Architecture. Proc. ACM Program. Lang. 4, POPL, Article 11 (dec 2019), 31 pages. https://doi.org/10.1145/3371079
[85]
Susmit Sarkar, Kayvan Memarian, Scott Owens, Mark Batty, Peter Sewell, Luc Maranget, Jade Alglave, and Derek Williams. 2012. Synchronising C/C++ and POWER. In PLDI’12. ACM, 311–322. https://doi.org/10.1145/2254064.2254102
[86]
sdk, sgx, intel [n. d.]. Intel Software Guard Extensions SDK for Linux. https://01.org/intel-softwareguard-extensions. https://01.org/intel-softwareguard-extensions
[87]
Lluís Vilanova, Muli Ben-Yehuda, Nacho Navarro, Yoav Etsion, and Mateo Valero. 2014. CODOMs: Protecting software with Code-centric memory Domains. In 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).
[88]
Robert Wahbe, Steven Lucco, Thomas E. Anderson, and Susan L. Graham. 1993. Efficient Software-Based Fault Isolation. (1993).
[89]
Perry H. Wang, Jamison D. Collins, Gautham N. Chinya, Hong Jiang, Xinmin Tian, Milind Girkar, Nick Y. Yang, Guei-Yuan Lueh, and Hong Wang. 2007. EXOCHI: architecture and programming environment for a heterogeneous multi-core multithreaded system. In Proceedings of the 28th ACM SIGPLAN Conference on Programming Language Design and Implementation (San Diego, California, USA) (PLDI ’07). Association for Computing Machinery, New York, NY, USA, 156–166. https://doi.org/10.1145/1250734.1250753
[90]
Robert N. M. Watson, Jonathan Anderson, Ben Laurie, and Kris Kennaway. 2012. A Taste of Capsicum: Practical Capabilities for UNIX. Commun. ACM 55, 3 (mar 2012), 97–104. https://doi.org/10.1145/2093548.2093572
[91]
Robert N. M. Watson, Jonathan Woodruff, Peter G. Neumann, Simon W. Moore, Jonathan Anderson, David Chisnall, Nirav Dave, Brooks Davis, Khilan Gudka, Ben Laurie, Steven J. Murdoch, Robert Norton, Michael Roe, Stacey Son, and Munraj Vadera. 2015. CHERI: A Hybrid Capability-System Architecture for Scalable Software Compartmentalization. In 2015 IEEE Symposium on Security and Privacy.
[92]
Emmett Witchel, Junghwan Rhee, and Krste Asanović. 2005. Mondrix: Memory Isolation for Linux Using Mondriaan Memory Protection. In Proceedings of the Twentieth ACM Symposium on Operating Systems Principles.
[93]
Ian H. Witten and John G. Cleary. 1983. An introduction to the architecture of the Intel iAPX 432. Software & Microsystems (1983).
[94]
Bennet Yee, David Sehr, Gregory Dardyk, J. Bradley Chen, Robert Muth, Tavis Ormandy, Shiki Okasaka, Neha Narula, and Nicholas Fullagar. 2009. Native Client: A Sandbox for Portable, Untrusted x86 Native Code. In 2009 30th IEEE Symposium on Security and Privacy.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PACT '24: Proceedings of the 2024 International Conference on Parallel Architectures and Compilation Techniques
October 2024
375 pages
ISBN:9798400706318
DOI:10.1145/3656019
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 October 2024

Permissions

Request permissions for this article.

Check for updates

Badges

Author Tags

  1. Heterogeneous memory
  2. Memory management
  3. Memory protection
  4. Memory safety
  5. Performance
  6. Portability
  7. Programmability

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Funding Sources

  • Erc starting grant
  • Schwerpunktprogramm from Deutsche Forschungsgemeinschaft

Conference

PACT '24
Sponsor:

Acceptance Rates

Overall Acceptance Rate 121 of 471 submissions, 26%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 130
    Total Downloads
  • Downloads (Last 12 months)130
  • Downloads (Last 6 weeks)18
Reflects downloads up to 17 Feb 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media