Skip to main content

SIZALIZER: Multilevel Analysis Framework for Object Size Optimization

  • Conference paper
  • First Online:
Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS 2024)

Abstract

Due to the resource constraints and the increasing environmental impact of embedded systems, the development of frameworks to optimize the footprint of instruction set architectures becomes critical. This paper presents SIZALIZER, a multi-layer analysis framework for the co-design of embedded C/C++ applications and RISC-V instruction set extensions. SIZALIZER embodies a novel approach by automating analysis across three layers: LLVM intermediate representation, executable binary code, and runtime instruction execution using techniques such as data flow graph, static binary, and dynamic execution analysis. The analysis performed with the Embench benchmark demonstrates SIZALIZER’s potential to identify optimization opportunities for both static and dynamic code sizes. The framework’s unique architecture enables it to distill actionable insights from complex software structures and guide size-optimizing ISA improvements. The proposed improvements result in a calculated static and dynamic improvement of approximately 30 %.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Embench™: A modern embedded benchmark suite. https://www.embench.org/

  2. LLVM language reference manual. https://llvm.org/docs/LangRef.html

  3. Memgraph. https://memgraph.com/

  4. RISC-V code-size analysis script. https://github.com/riscvarchive/riscv-code-size-reduction/tree/main/benchmarks

  5. Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification. Standard, TIS Committee (1995). https://refspecs.linuxfoundation.org/elf/elf.pdf

  6. Bruening, D., Amarasinghe, S.: Efficient, transparent, and comprehensive runtime code manipulation (2004)

    Google Scholar 

  7. Freitag, C., Berners-Lee, M., Widdicks, K., Knowles, B., Blair, G.S., Friday, A.: The real climate and transformative impact of ICT: a critique of estimates, trends, and regulations. Patterns 2(9) (2021)

    Google Scholar 

  8. Hennessy, J., Patterson, D.: A new golden age for computer architecture: domain-specific hardware/software co-design, enhanced. In: ACM/IEEE 45th Annual International Symposium on Computer Architecture (ISCA) (2018)

    Google Scholar 

  9. Javor, A.: Memgraph vs. Neo4j: a performance comparison. https://memgraph.com/blog/memgraph-vs-neo4j-performance-benchmark-comparison

  10. Lee, S., Shin, I., Kim, W., Lee, I., Min, S.L.: A design framework for real-time embedded systems with code size and energy constraints. ACM TECS 7(2), 1–27 (2008)

    Article  MATH  Google Scholar 

  11. Luk, C.K., et al.: Pin: building customized program analysis tools with dynamic instrumentation. ACM SIGPLAN Notices 40(6), 190–200 (2005)

    Article  MATH  Google Scholar 

  12. Mueller-Gritschneder, D., et al.: The extendable translating instruction set simulator (ETISS) interlinked with an MDA framework for fast RISC prototyping. In: 2017 International Symposium on Rapid System Prototyping (RSP), pp. 79–84 (2017)

    Google Scholar 

  13. Nethercote, N., Seward, J.: Valgrind: a framework for heavyweight dynamic binary instrumentation. ACM SIGPLAN Notices 42(6), 89–100 (2007)

    Article  MATH  Google Scholar 

  14. Song, D., et al.: BitBlaze: a new approach to computer security via binary analysis. In: Sekar, R., Pujari, A.K. (eds.) Information Systems Security, pp. 1–25. Springer, Berlin, Heidelberg (2008)

    MATH  Google Scholar 

  15. Strout, M.M., Kreaseck, B., Hovland, P.D.: Data-flow analysis for MPI programs. In: 2006 International Conference on Parallel Processing (ICPP’06), pp. 175–184. IEEE (2006)

    Google Scholar 

  16. Tjiang, S.W.K., Hennessy, J.L.: Sharlit—a tool for building optimizers. In: Proceedings of the ACM SIGPLAN 1992 Conference on Programming Language Design and Implementation, pp. 82–93. PLDI ’92, Association for Computing Machinery, New York, NY, USA (1992). https://doi.org/10.1145/143095.143120

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andreas Hager-Clukas .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2025 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Hager-Clukas, A., Schröter, J., Wallentowitz, S. (2025). SIZALIZER: Multilevel Analysis Framework for Object Size Optimization. In: Carro, L., Regazzoni, F., Pilato, C. (eds) Embedded Computer Systems: Architectures, Modeling, and Simulation. SAMOS 2024. Lecture Notes in Computer Science, vol 15226. Springer, Cham. https://doi.org/10.1007/978-3-031-78377-7_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-78377-7_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-78376-0

  • Online ISBN: 978-3-031-78377-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics