Live briefing
Everything about Program optimization
Improving the efficiency of software
In computer science, program optimization, code optimization, or software optimization is the process of modifying a software system to make some aspect of it work more efficiently or use fewer resources. In general, a computer program may be optimized so that it executes more rapidly, or to make it capable of operating with less memory storage or other resources, or draw less power. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Program optimizationA 5-minute orientation
- Skim a recent paper: Verified tensor-program optimization via high-level scheduling rewritesInfluential work since 2022
- Pick up a classic book: Optimization in industryThe most-reprinted book on the subject
- Read the landmark paper: Dynamic programming algorithm optimization for spoken word recognitionCited 5,639 times
- Go sideways: Optimizing compilerA closely related topic
- Go sideways: Inline expansionA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🏆 Landmark papers (most cited)
Dynamic programming algorithm optimization for spoken word recognition
Program optimization carving for GPU computing
Continuous program optimization
Continuous program optimization: Design and evaluation
A web-based topology optimization program
Optimization of the annual construction program solutions
Graph rewrite systems for program optimization
Program optimization and parallelization using idioms
🆕 Influential since 2022
Verified tensor-program optimization via high-level scheduling rewrites
QIRO: A Static Single Assignment-based Quantum Program Representation for Optimization
Optimization of breeding program design through stochastic simulation with kernel regression
SlabCity: Whole-Query Optimization Using Program Synthesis
Optimization of breeding program design through stochastic simulation with evolutionary algorithms
📚 Books worth reading
Optimization in industryT. A. J. Nicholson · 1971
Optimization in Engineering SciencesPierre Borne, Abdelkader El Kamel · 2012
Paradigms of Combinatorial OptimizationVangelis Th Paschos · 2010
Applications of Combinatorial OptimizationVangelis Th Paschos · 2010
Linear programmingRobert J. Vanderbei · 1996
Concepts of Combinatorial OptimizationVangelis Th Paschos · 2012
Integer and combinatorial optimizationGeorge L. Nemhauser · 1988
Optimization in operations researchRonald L. Rardin · 1998
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Optimizing compiler An optimizing compiler is a compiler designed to generate code that is optimized in aspects such as minimizing program execution time, memory usage, storage…
- Inline expansion In computing, inline expansion, or inlining, is a manual or compiler optimization that replaces a function call site with the body of the called function…
- Algorithmic efficiency In computer science, algorithmic efficiency is a property of an algorithm which relates to the amount of computational resources used by the algorithm…
- Just-in-time compilation Just-in-time (JIT) compilation (also dynamic translation or run-time compilations) is compilation of computer code during execution of a program at run…
- Assembly language In computing, assembly language (alternatively assembler language or symbolic machine code), often referred to simply as assembly and commonly abbreviated…
- Profiling (computer programming) In software engineering, profiling (program profiling, software profiling) is a form of dynamic program analysis that measures, for example, the space…
- Locality of reference In computer science, locality of reference, also known as the principle of locality, is the tendency of a processor to access the same set of memory locations…
- Loop unrolling Loop unrolling, also known as loop unwinding, is a loop transformation technique that attempts to optimize a program's execution speed at the expense of…