Masters Thesis: Measurement-driven DSP Superoptimization
publicerat av Ericsson
- Företag
- Ericsson
- Ort
- Linköping
- Sista ansökningsdag
- Ej angiven
- Nivå
- Master/civilingenjör (30 hp)
- Passar program
- Computer Science, Computer Engineering
Beskrivning
Ericsson’s EMCA architecture includes a custom DSP whose applications must meet demanding real-time and memory constraints. Building on an earlier thesis that adapted the Souper superoptimizer to this target, this project investigates replacing fixed instruction costs with measurements and estimates from the compiler back-end. The goal is to identify better code optimizations while assessing whether the gains justify a slower search.
The assignment
- Review current research and techniques in superoptimization.
- Compile candidate code fragments for the DSP and use the resulting cycle and code-size estimates to guide the optimization search, comparing the benefits with the additional compilation cost.
- Extend the superoptimizer’s support for DSP-specific operations, such as multiply-accumulate and bit-field intrinsics.
- Evaluate the approach offline on production DSP applications, measuring performance gains and reductions in memory footprint.
- Deliver proposed optimizations for incorporation into the production compiler rather than integrating the superoptimizer itself into compilation.
Who we are looking for
- Master’s student in Computer Science or Computer Engineering.
- Experience programming in C/C++ and an interest in low-level code, compilers and assembly optimization.
- Knowledge of LLVM development and formal methods, or willingness to learn them.
What we offer
- Hands-on work with the potential to improve Ericsson’s production compiler and DSP application performance.
- Practical experience with SMT-based program reasoning, target-specific compiler passes, VLIW instructions and hardware constraints.
- An opportunity to tackle technically challenging problems alongside a team of innovators.
Practical details
Location: Linköping. Recruitment reference: 791221.
Förkunskapskrav
Applicants should be studying for a master’s degree in Computer Science or Computer Engineering, have C/C++ experience and be interested in low-level programming, compilers and assembly optimization. LLVM development and formal methods skills are relevant, but may also be developed during the project.
Texten är en sammanfattning av Ericssons annons. Läs hela annonsen och ansök hos Ericsson