Software Performance Engineering for Foundation Model-Powered Software
Haoxiang Zhang, Shi Chang, Arthur Leung, Kishanthan Thangarajah, Boyuan Chen, Hanan Lutfiyya, Ahmed E. Hassan

TL;DR
This paper emphasizes the importance of Software Performance Engineering in Foundation Model-based software, addressing challenges in design, communication, tuning, and deployment to ensure efficiency and performance.
Contribution
It identifies key challenges in performance engineering for FMware and discusses innovative solutions based on literature and practical experience.
Findings
Performance engineering is often overlooked in FMware development.
Four key challenges are identified: architecture, communication, tuning, deployment.
Continuous performance monitoring is crucial for FMware efficiency.
Abstract
The rise of Foundation Models (FMs) like Large Language Models (LLMs) is revolutionizing software development. Despite the impressive prototypes, transforming FMware into production-ready products demands complex engineering across various domains. A critical but overlooked aspect is performance engineering, which aims at ensuring FMware meets performance goals such as throughput and latency to avoid user dissatisfaction and financial loss. Often, performance considerations are an afterthought, leading to costly optimization efforts post-deployment. FMware's high computational resource demands highlight the need for efficient hardware use. Continuous performance engineering is essential to prevent degradation. This paper highlights the significance of Software Performance Engineering (SPE) in FMware, identifying four key challenges: cognitive architecture design (i.e., the structural…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Advanced Software Engineering Methodologies · Model-Driven Software Engineering Techniques
