Содержание
- 2. Copyright © 2010, Elsevier Inc. All rights Reserved Roadmap Why we need ever-increasing performance. Why we’re
- 3. Changing times Copyright © 2010, Elsevier Inc. All rights Reserved From 1986 – 2002, microprocessors were
- 4. An intelligent solution Copyright © 2010, Elsevier Inc. All rights Reserved Instead of designing and building
- 5. Now it’s up to the programmers Adding more processors doesn’t help much if programmers aren’t aware
- 6. Why we need ever-increasing performance Computational power is increasing, but so are our computation problems and
- 7. Climate modeling Copyright © 2010, Elsevier Inc. All rights Reserved
- 8. Protein folding Copyright © 2010, Elsevier Inc. All rights Reserved
- 9. Drug discovery Copyright © 2010, Elsevier Inc. All rights Reserved
- 10. Energy research Copyright © 2010, Elsevier Inc. All rights Reserved
- 11. Data analysis Copyright © 2010, Elsevier Inc. All rights Reserved
- 12. Why we’re building parallel systems Up to now, performance increases have been attributable to increasing density
- 13. A little physics lesson Smaller transistors = faster processors. Faster processors = increased power consumption. Increased
- 14. Solution Move away from single-core systems to multicore processors. “core” = central processing unit (CPU) Copyright
- 15. Why we need to write parallel programs Running multiple instances of a serial program often isn’t
- 16. Approaches to the serial problem Rewrite serial programs so that they’re parallel. Write translation programs that
- 17. More problems Some coding constructs can be recognized by an automatic program generator, and converted to
- 18. Example Compute n values and add them together. Serial solution: Copyright © 2010, Elsevier Inc. All
- 19. Example (cont.) We have p cores, p much smaller than n. Each core performs a partial
- 20. Example (cont.) After each core completes execution of the code, is a private variable my_sum contains
- 21. Example (cont.) Once all the cores are done computing their private my_sum, they form a global
- 22. Example (cont.) Copyright © 2010, Elsevier Inc. All rights Reserved
- 23. Example (cont.) Copyright © 2010, Elsevier Inc. All rights Reserved Global sum 8 + 19 +
- 24. Copyright © 2010, Elsevier Inc. All rights Reserved But wait! There’s a much better way to
- 25. Better parallel algorithm Don’t make the master core do all the work. Share it among the
- 26. Better parallel algorithm (cont.) Repeat the process now with only the evenly ranked cores. Core 0
- 27. Multiple cores forming a global sum Copyright © 2010, Elsevier Inc. All rights Reserved
- 28. Analysis In the first example, the master core performs 7 receives and 7 additions. In the
- 29. Analysis (cont.) The difference is more dramatic with a larger number of cores. If we have
- 30. How do we write parallel programs? Task parallelism Partition various tasks carried out solving the problem
- 31. Professor P Copyright © 2010, Elsevier Inc. All rights Reserved 15 questions 300 exams
- 32. Professor P’s grading assistants Copyright © 2010, Elsevier Inc. All rights Reserved TA#1 TA#2 TA#3
- 33. Division of work – data parallelism Copyright © 2010, Elsevier Inc. All rights Reserved TA#1 TA#2
- 34. Division of work – task parallelism Copyright © 2010, Elsevier Inc. All rights Reserved TA#1 TA#2
- 35. Division of work – data parallelism Copyright © 2010, Elsevier Inc. All rights Reserved
- 36. Division of work – task parallelism Copyright © 2010, Elsevier Inc. All rights Reserved Tasks Receiving
- 37. Coordination Cores usually need to coordinate their work. Communication – one or more cores send their
- 38. What we’ll be doing Learning to write programs that are explicitly parallel. Using the C language.
- 39. Type of parallel systems Shared-memory The cores can share access to the computer’s memory. Coordinate the
- 40. Type of parallel systems Copyright © 2010, Elsevier Inc. All rights Reserved Shared-memory Distributed-memory
- 41. Terminology Concurrent computing – a program is one in which multiple tasks can be in progress
- 42. Concluding Remarks (1) The laws of physics have brought us to the doorstep of multicore technology.
- 44. Скачать презентацию