
Software Development for Embedded Multi-core Systems
A Practical Guide Using Embedded Intel Architecture
- 1st Edition - April 14, 2008
- Author: Max Domeika
- Language: English
- Paperback ISBN:9 7 8 - 0 - 7 5 0 6 - 8 5 3 9 - 9
- eBook ISBN:9 7 8 - 0 - 0 8 - 0 5 5 8 5 8 - 5
The multicore revolution has reached the deployment stage in embedded systems ranging from small ultramobile devices to large telecommunication servers. The transition from single… Read more

Purchase options

Institutional subscription on ScienceDirect
Request a sales quoteThe multicore revolution has reached the deployment stage in embedded systems ranging from small ultramobile devices to large telecommunication servers. The transition from single to multicore processors, motivated by the need to increase performance while conserving power, has placed great responsibility on the shoulders of software engineers. In this new embedded multicore era, the toughest task is the development of code to support more sophisticated systems. This book provides embedded engineers with solid grounding in the skills required to develop software targeting multicore processors. Within the text, the author undertakes an in-depth exploration of performance analysis, and a close-up look at the tools of the trade. Both general multicore design principles and processor-specific optimization techniques are revealed. Detailed coverage of critical issues for multicore employment within embedded systems is provided, including the Threading Development Cycle, with discussions of analysis, design, development, debugging, and performance tuning of threaded applications. Software development techniques engendering optimal mobility and energy efficiency are highlighted through multiple case studies, which provide practical “how-to” advice on implementing the latest multicore processors. Finally, future trends are discussed, including terascale, speculative multithreading, transactional memory, interconnects, and the software-specific implications of these looming architectural developments.
- This is the only book to explain software optimization for embedded multi-core systems
- Helpful tips, tricks and design secrets from an Intel programming expert, with detailed examples using the popular X86 architecture
- Covers hot topics, including ultramobile devices, low-power designs, Pthreads vs. OpenMP, and heterogeneous cores
Software Engineers, Designers, and Managers
1 - Introduction *Motivation *The Advent of Multi-core Processors *Multi-processor Systems Are Not New *Applications Will Need to Be Multi-threaded *Software Burden or Opportunity *What is Embedded? *What is Unique about Embedded?*Chapter Summary 2 – Basic System and Processor Architecture *Key Points *Performance *Brief History of Embedded Intel® Architecture Processors *Embedded Trends and Near Term Processor Impact*Tutorial on x86 Assembly Language *Chapter Summary *Related Reading 3 – Multi-core Processors & Embedded *Key Points *Motivation for Multi-core Processors *Multi-core Processor Architecture *Benefits of Multi-core Processors in Embedded *Embedded Market Segments & Multi-core Processors *Evaluating Performance of Multi-core Processors*Chapter Summary *Related Reading 4 –Moving To Multi-core Intel Architecture *Key Points *Migrating To Intel Architecture *32-bit versus 64-bit Support *Endianness: Big to Little *BIOS and Operating Systems Considerations *Enabling an SMP operating system *Tools for Multi-Core Processor Development *Chapter Summary *Related Reading5 – Scalar Optimization & Usability *Key Points *Compiler Optimizations *Optimization Process *Case Study: Database *Usability *Chapter Summary *Related Reading6 – Parallel Optimization Using Threads *Key Points *Parallelism Primer *Thread 192*Decomposition *Scalability *Parallel Execution Limiters *Threading Technology Requirements *Threading Development Cycle *Analysis *Design & Implementation *Debug *Tune *Chapter Summary *Related Reading 7 - Case Study: Data Decomposition *Key Points *AMIDE *Analysis *Design & Implement *Debug *Tune *Chapter Summary 8 - Case Study: Functional Decomposition*Key Points *Snort *Analysis *Design & Implement *Snort Debug *Tune *Chapter Summary9 – Virtualization & Partitioning *Key Points *Overview *Techniques & Design Considerations *Telecom Use case of Virtualization *Chapter Summary *Related Reading 10 – Getting Ready For Low Power Intel Architecture *Key Points *Mobile Internet Devices *Architecture *Case Study: Battery Life Toolkit *Debugging Embedded Systems *Chapter Summary 11 - Summary, Trends, and Conclusions *Trends *Conclusions Appendix I Glossary References
- No. of pages: 440
- Language: English
- Edition: 1
- Published: April 14, 2008
- Imprint: Newnes
- Paperback ISBN: 9780750685399
- eBook ISBN: 9780080558585
MD
Max Domeika
Affiliations and expertise
Senior Software Engineer, Intel Corp.Read Software Development for Embedded Multi-core Systems on ScienceDirect