Software Development for Embedded Multi-core Systems -  Max Domeika

Software Development for Embedded Multi-core Systems (eBook)

A Practical Guide Using Embedded Intel Architecture

(Autor)

eBook Download: PDF
2011 | 1. Auflage
440 Seiten
Elsevier Science (Verlag)
978-0-08-055858-5 (ISBN)
Systemvoraussetzungen
43,95 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
The 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.
Table of Contents
Chapter 1 - Introduction
Chapter 2 - Basic System and Processor Architecture
Chapter 3 - Multi-core Processors & Embedded
Chapter 4 -Moving To Multi-core Intel Architecture
Chapter 5 - Scalar Optimization & Usability
Chapter 6 - Parallel Optimization Using Threads
Chapter 7 - Case Study: Data Decomposition
Chapter 8 - Case Study: Functional Decomposition
Chapter 9 - Virtualization & Partitioning
Chapter 10 - Getting Ready For Low Power Intel Architecture
Chapter 11 - Summary, Trends, and Conclusions
Appendix I
Glossary
References
*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
The 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 "e;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

Front Cover 1
Software Development for Embedded Multi-core Systems: A Practical Guide Using Embedded Intel® Architecture 4
Copyright Page 5
Contents 6
Preface 10
Acknowledgments 14
Chapter 1: Introduction 16
1.1 Motivation 18
1.2 The Advent of Multi-core Processors 19
1.3 Multiprocessor Systems Are Not New 19
1.4 Applications Will Need to be Multi-threaded 21
1.5 Software Burden or Opportunity 23
1.6 What is Embedded? 25
1.7 What is Unique About Embedded? 28
Chapter Summary 29
Chapter 2: Basic System and Processor Architecture 32
Key Points 32
2.1 Performance 34
2.2 Brief History of Embedded Intel® Architecture Processors 35
2.3 Embedded Trends and Near Term Processor Impact 52
2.4 Tutorial on x86 Assembly Language 54
Chapter Summary 68
Related Reading 69
Chapter 3: Multi-core Processors and Embedded 70
Key Points 70
3.1 Motivation for Multi-core Processors 71
3.2 Multi-core Processor Architecture 72
3.3 Benefits of Multi-core Processors in Embedded 77
3.4 Embedded Market Segments and Multi-core Processors 78
3.5 Evaluating Performance of Multi-core Processors 84
Chapter Summary 102
Related Reading 103
Chapter 4: Moving to Multi-core Intel Architecture 104
Key Points 104
4.1 Migrating to Intel Architecture 106
4.2 Enabling an SMP OS 126
4.3 Tools for Multi-Core Processor Development 132
Chapter Summary 151
Related Reading 152
Chapter 5: Scalar Optimization and Usability 154
Key Points 154
5.1 Compiler Optimizations 158
5.2 Optimization Process 168
5.3 Usability 176
Chapter Summary 185
Related Reading 185
Chapter 6: Parallel Optimization Using Threads 188
Key Points 188
6.1 Parallelism Primer 190
6.2 Threading Development Cycle 199
Chapter Summary 221
Related Reading 222
Chapter 7: Case Study: Data Decomposition 224
Key Points 224
7.1 A Medical Imaging Data Examiner 224
Chapter Summary 260
Chapter 8: Case Study: Functional Decomposition 262
Key Points 262
8.1 Snort 263
8.2 Analysis 266
8.3 Design and Implement 273
8.4 Snort Debug 295
8.5 Tune 297
Chapter Summary 301
Chapter 9: Virtualization and Partitioning 302
Key Points 302
9.1 Overview 302
9.2 Virtualization and Partitioning 305
9.3 Techniques and Design Considerations 319
9.4 Telecom Use Case of Virtualization 337
Chapter Summary 357
Related Reading 359
Chapter 10: Getting Ready for Low Power Intel Architecture 362
Key Points 362
10.1 Architecture 364
10.2 Debugging Embedded Systems 377
Chapter Summary 397
Chapter 11: Summary, Trends, and Conclusions 400
11.1 Trends 402
11.2 Conclusions 407
Appendix A 408
Glossary 410
A 410
B 411
C 412
D 413
E 413
F 414
G 414
H 414
I 415
J 416
K 416
L 416
M 416
N 417
O 418
P 418
R 419
S 419
T 420
V 421
W 422
X 422
Index 424
A 424
B 424
C 425
D 425
E 426
F 427
G 427
H 427
I 427
J 428
K 428
L 429
M 429
N 430
O 430
P 431
Q 432
R 432
S 432
T 433
U 434
V 434
W 434
X 434
Z 435

Erscheint lt. Verlag 8.4.2011
Sprache englisch
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Software Entwicklung
Technik Bauwesen
Technik Elektrotechnik / Energietechnik
ISBN-10 0-08-055858-5 / 0080558585
ISBN-13 978-0-08-055858-5 / 9780080558585
Haben Sie eine Frage zum Produkt?
PDFPDF (Adobe DRM)
Größe: 4,2 MB

Kopierschutz: Adobe-DRM
Adobe-DRM ist ein Kopierschutz, der das eBook vor Mißbrauch schützen soll. Dabei wird das eBook bereits beim Download auf Ihre persönliche Adobe-ID autorisiert. Lesen können Sie das eBook dann nur auf den Geräten, welche ebenfalls auf Ihre Adobe-ID registriert sind.
Details zum Adobe-DRM

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen eine Adobe-ID und die Software Adobe Digital Editions (kostenlos). Von der Benutzung der OverDrive Media Console raten wir Ihnen ab. Erfahrungsgemäß treten hier gehäuft Probleme mit dem Adobe DRM auf.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen eine Adobe-ID sowie eine kostenlose App.
Geräteliste und zusätzliche Hinweise

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Entwicklung von GUIs für verschiedene Betriebssysteme

von Achim Lingott

eBook Download (2023)
Carl Hanser Verlag GmbH & Co. KG
39,99
Das Handbuch für Webentwickler

von Philip Ackermann

eBook Download (2023)
Rheinwerk Computing (Verlag)
49,90