Instructor: Erez
Petrank, erez
cs.technion.ac.il, office: Taub 528. Phone:
829-4942.
|
Num |
Talk Title |
Presentation |
Assigned to: |
| 1 | Administration, Allen-Kennedy Chapter 1 | final version | Erez Petrank |
| 2 | Chapter 2 Dependence Theory | final version | Liza Fireman |
| 3 | Chapter 3 Dependence Testing, (thru 3.3.2) | final version | Rotem Oshman & Rachel Tzoref |
| 4 | Chapter 3 Dependence Testing, (3.3.3 to end) | final version | |
| 5 | Chapter 4 Preliminary Transformations | final version | Harel Paz |
| 6 | Chapter 5 Fine grained parallelization (thru 5.4) | final version | Haim Kermany & Mirit Shalem |
| 7 | Chapter 5 Fine grained parallelization (5.5 on) | final version | |
| 8 | Chapter 6 Coarse grained parallelization (thru 6.2) | final version | Danny Guez |
| 9 | Chapter 6 Coarse grained parallelization 2 (6.3 on) | final version | Yaniv Carmeli |
| 10 | Chapter 7 Control dependence | presentation version, | Yoni Peleg |
| 11 | Chapter 8 Register management 1 (thru 8.4) | final version | Anastasia Braginsky |
| 12 | Chapter 8 Register management 2 (8.5-end) | final version | Omer Yehezkely |
| 13 | Chapter 9 Cache management | final version | Sivan Bercovici |
| 14 | Chapter 10 Scheduling | final version | Vladimir Yanovsky |
| 15 | Chapter 11 Interprocedural 1 (thru 11.2.4) | final version | Gabi Kliot |
| 16 | Chapter 11 Interprocedural 2 (11.2.5 to end) | final version | Li-Tal Mashiach |
| 17 | Chapter 12 C++ and Hardware | final version | Tali Shragai |
Reception hours: Wednesdays 13:30-14:25. (If this is not a good time for you, contact me by email to schedule an alternative.)
In the seminar we will study optimization algorithms for parallelizing programs on parallel and distributed platforms. We will start by briefly describing modern platforms. We will go over the theoretical foundations required to undersstand dependencies between instructions. We will discuss basic compiler transformations that are executed to improve the potential for subsequent parallelization. Then, we will study the actual parallelization procedure. This is a wide topic that will consist of several sub-topics. We will discuss cache behavior relevant issues. Finally, we will discuss automatic parallelization for distributed systems, where not only the computation must be partitioned between the processors, but also the corresponding data.
The seminar will focus on the algorithmic ideas and the the foundational issues underlying these optimizations.
We will cover chapters from the following two books:הרישום יהיה אישי ואנו ננסה להתאים את הנושאים לרקע של הסטודנטים. נא לשלוח email למרצה (erez@cs) הכולל את הטקסט הבא (או משהו שקול לו): "ברצוני להירשם לסמינר בשפות תכנות בסמסטר חורף תשס"ו. שמי ... מספר סטודנט: ... אני סטודנט שנה ... לתואר .... ולקחתי את הקורסים הרלוונטיים הבאים: ..." נא לציין קורסים העשויים להיות רלוונטיים מתחומים של שפות תכנות, אלגוריתמים מתקדמים, תכנות ואלגוריתמים מקבילים ומבוזרים, וקורסי בחירה תיאורטיים.