توضیحاتی در مورد کتاب :
انقلاب چند هستهای به مرحله استقرار در سیستمهای تعبیهشده از دستگاههای اولترا موبایل کوچک تا سرورهای بزرگ مخابراتی رسیده است. انتقال از پردازندههای تک هستهای به پردازندههای چند هستهای، با انگیزه نیاز به افزایش عملکرد و در عین حال صرفهجویی در مصرف انرژی، مسئولیت بزرگی را بر دوش مهندسان نرمافزار گذاشته است. در این دوره چند هستهای تعبیهشده جدید، سختترین کار توسعه کد برای پشتیبانی از سیستمهای پیچیدهتر است. این کتاب مهارتهای لازم برای توسعه نرمافزاری که پردازندههای چند هستهای را هدف قرار میدهد، به مهندسان تعبیهشده ارائه میدهد. در متن، نویسنده به کاوش عمیق در تحلیل عملکرد و نگاهی نزدیک به ابزارهای تجارت می پردازد. هم اصول کلی طراحی چند هستهای و هم تکنیکهای بهینهسازی خاص پردازنده نشان داده شدهاند. پوشش مفصلی از مسائل حیاتی برای استخدام چند هسته ای در سیستم های تعبیه شده، از جمله چرخه توسعه نخ، با بحث در مورد تجزیه و تحلیل، طراحی، توسعه، اشکال زدایی، و تنظیم عملکرد برنامه های کاربردی رشته ای ارائه شده است. تکنیکهای توسعه نرمافزار که تحرک بهینه و بهرهوری انرژی را ایجاد میکنند، از طریق مطالعات موردی متعدد برجسته میشوند، که توصیههای عملی «چگونگی» را برای اجرای آخرین پردازندههای چند هستهای ارائه میدهند. در نهایت، روندهای آینده مورد بحث قرار میگیرند، از جمله مقیاس تراشه، چند رشتهای حدسی، حافظه تراکنشی، اتصالات متقابل، و پیامدهای خاص نرمافزاری این پیشرفتهای معماری در حال ظهور. فهرست مطالب فصل 1 - مقدمه فصل 2 - سیستم اصلی و معماری پردازنده فصل 3 - پردازنده های چند هسته ای
توضیحاتی در مورد کتاب به زبان اصلی :
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 ContentsChapter 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 * Get up to speed on multicore design! This is the only book to explain software optimization for embedded multicore 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