Difference between revisions of "Winter 2016 SPO600 Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
(Schedule Summary Table)
Line 14: Line 14:
 
!Week!!Week of...!!width="28%"|Tuesday!!width="28%"|Friday!!width="28%"|Deliverables<br/>(Summary - click for details)
 
!Week!!Week of...!!width="28%"|Tuesday!!width="28%"|Friday!!width="28%"|Deliverables<br/>(Summary - click for details)
 
|-
 
|-
|1||Jan 11||[[#Tuesday (Jan 12)|Introduction to Software Porting, Portability, Benchmarking, and Optimization / How is code accepted into an open source project? (Lab 1)]]||[[#Friday (Jan 15)|Compiled C Lab (Lab 2)]]||[[#Week 1 Deliverables|Set up accounts, and blog a comparison of code reviews in two communities (Lab 1) and a comparison of code compiled with various compiler options (Lab 2).]]
+
|1||Jan 11||[[#Tuesday (Jan 12)|Introduction to Software Porting, Portability, Benchmarking, and Optimization / How is code accepted into an open source project? (Lab 1)]]||[[#Friday (Jan 15)|Overview of Building Software]]||[[#Week 1 Deliverables|Set up accounts, and blog a comparison of code reviews in two communities (Lab 1).]]
 
|-
 
|-
  
|2||Jan 18||[[#Tuesday (Jan 19)|Compiled C Lab (Lab 2)]]||[[#Friday (Jan 22)|Compiler Optimizations]]||[[#Week 2 Deliverables|Blog about the Compiled C Lab (Lab 2)]]
+
|2||Jan 18||[[#Tuesday (Jan 19)|Computer Architecture Overview]]||[[#Friday (Jan 22)|Assembly Lab (Lab 2)]]||[[#Week 2 Deliverables|Blog about the Assembly Lab (Lab 2)]]
 
|-
 
|-
  
|3||Jan 25||[[#Tuesday (Jan 26)|Compiled C Lab (Lab 2)]]||[[#Friday (Jan 29)|Compiler Optimizations]]||[[#Week 3 Deliverables|Be prepared to present your topic.]]
+
|3||Jan 25||[[#Tuesday (Jan 26)|Compiled C Lab (Lab 3)]]||[[#Friday (Jan 29)|Software Optimization]]||[[#Week 3 Deliverables|Blog about the Compiled C Lab (Lab 3)]]
 
|-
 
|-
  
|4||Feb 1||[[#Tuesday (Feb 2)|Presentations on compiler options.]]||[[#Friday (Feb 5)|Algorithm Selection Lab (Lab 3)]]||[[#Week 4 Deliverables|Blog about your presentation and about your experience building code (Lab 3).]]
+
|4||Feb 1||[[#Tuesday (Feb 2)|Algorithm Selection Lab (Lab 4)]]||[[#Friday (Feb 5)|SIMD and Auto-Vectorization (Lab 5)]]||[[#Week 4 Deliverables|Blog about the Algorithm Selection Lab (Lab 4) and the Auto-Vectorization Lab (Lab 5).]]
 
|-
 
|-
  
|5||Feb 8|||[[#Tuesday (Feb 9)|Discussion/hacking on the Algorithm Selection Lab (Lab 3)]]||[[#Friday (Feb 12)|Algorithm Selection (continued) and Benchmarks]]||[[#Week 5 Deliverables|Blog your Lab 3 results.]]
+
|5||Feb 8|||[[#Tuesday (Feb 9)|Inline Assembler Lab (Lab 6)]]||[[#Friday (Feb 12)|Memory Barriers and Synchronization]]||[[#Week 5 Deliverables|Blog your Inline Assembler Lab (Lab 6) results.]]
 
|-
 
|-
  
|6||Feb 15||[[#Tuesday (Feb 16)|Algorithm Selection (continued) / Start to plan a compiler options test tool.]]||[[#Friday (Feb 19)|Plan & build a compiler options test tool.]]||[[#Week 6 Deliverables|Blog about your design recommendations for the compiler options test tool.]]
+
|6||Feb 15||[[#Tuesday (Feb 16)|Project Overview]]||[[#Friday (Feb 19)|Project Selection]]||[[#Week 6 Deliverables|Blog about your selected project.]]
 
|-
 
|-
  
|7||Feb 22||[[#Tuesday (Feb 23)|Build the compiler options test tool.]]||[[#Friday (Feb 26)|Project selection.]]||[[#Week 7 Deliverables|Blog about the compiler options test tool and your selected project.]]
+
|7||Feb 22||[[#Tuesday (Feb 23)|Project Startup]]||[[#Friday (Feb 26)|Project Stage I Updates]]||[[#Week 7 Deliverables|Blog about your Stage I updates.]]
  
 
|-style="background: #f0f0ff"
 
|-style="background: #f0f0ff"
|Study Week||Feb 29||colspan="3" align="center"|Study Week - No classes! Please plan to attend [http://fsoss.ca FSOSS 2015 on Thursday/Friday]
+
|Study Week||Feb 29||colspan="3" align="center"|Study Week - No classes!
 
|-
 
|-
  
Line 41: Line 41:
 
|-
 
|-
  
|9||Mar 14||[[#Tuesday (Mar 15)|Computer Architecture Overview]]||[[#Friday (Mar 18)|Assembler lab (Lab 4)]]||[[#Week 9 Deliverables|Blog about your project work and Lab 4.]]
+
|9||Mar 14||[[#Tuesday (Mar 15)|Presentations]]||[[#Friday (Mar 18)|Presentations]]||[[#Week 9 Deliverables|Blog about your presentation.]]
 
|-
 
|-
  
|10||Mar 22||[[#Tuesday (Mar 23)|Discussion & Hack Session]]||[[#Friday (Mar 26)|Discussion & Hack Session - Framework]]||[[#Week 10 Deliverables|Blog about your project progress.]]
+
|10||Mar 22||[[#Tuesday (Mar 23)|Project Stage II Updates]]||[[#Friday (Mar 26)|Discussion & Hack Session]]||[[#Week 10 Deliverables|Blog about your Stage II updates.]]
 
|-
 
|-
  
|11||Mar 28||[[#Tuesday (Mar 29)|SIMD and Auto-vectorization (Lab 5)]]||[[#Friday (Apr 1)|Framework Discussion and Hack Session]]||[[#Week 11 Deliverables|Blog about SIMD/vectorization (Lab 5).]]
+
|11||Mar 28||[[#Tuesday (Mar 29)|Guest Lecture]]||[[#Friday (Apr 1)|Discussion & Hack Session]]||[[#Week 11 Deliverables|Blog about your project.]]
 
|-
 
|-
  
|12||Apr 4||[[#Tuesday (Apr 5)|Benchmarking Discussions and Hack Session]]||[[#Friday (Apr 8)|Memory Barriers, Spinlocks, Inline Assembler, and Tail Call Optimizations]]||[[#Week 12 Deliverables|Blog about your work.]]
+
|12||Apr 4||[[#Tuesday (Apr 5)|Discussion & Hack Session]]||[[#Friday (Apr 8)|Discussion & Hack Session]]||[[#Week 12 Deliverables|Blog about your project.]]
 
|-
 
|-
  
|13||Apr 11||[[#Tuesday (Apr 12)|Project Status - Stage II]]||[[#Friday (Apr 15)|Wrap-up Discussion]]||[[#Week 13 Deliverables|Blog about your project progress - this will be used to assign your 3rd project marks.]]
+
|13||Apr 11||[[#Tuesday (Apr 12)|Project Stage III Updates]]||[[#Friday (Apr 15)|Wrap-up Discussion]]||[[#Week 13 Deliverables|Blog about your project, including the Stage III Update, and write a wrap-up post about the course.]]
 
|-
 
|-
  

Revision as of 15:51, 5 January 2016


Important.png
This is a draft only!
It is still under construction and content may change. Do not rely on this information.

Schedule Summary Table

This is a summary/index table. Please follow the links in each cell for additional detail which will be added below as the course proceeds -- especially for the Deliverables column.

Week Week of... Tuesday Friday Deliverables
(Summary - click for details)
1 Jan 11 Introduction to Software Porting, Portability, Benchmarking, and Optimization / How is code accepted into an open source project? (Lab 1) Overview of Building Software Set up accounts, and blog a comparison of code reviews in two communities (Lab 1).
2 Jan 18 Computer Architecture Overview Assembly Lab (Lab 2) Blog about the Assembly Lab (Lab 2)
3 Jan 25 Compiled C Lab (Lab 3) Software Optimization Blog about the Compiled C Lab (Lab 3)
4 Feb 1 Algorithm Selection Lab (Lab 4) SIMD and Auto-Vectorization (Lab 5) Blog about the Algorithm Selection Lab (Lab 4) and the Auto-Vectorization Lab (Lab 5).
5 Feb 8 Inline Assembler Lab (Lab 6) Memory Barriers and Synchronization Blog your Inline Assembler Lab (Lab 6) results.
6 Feb 15 Project Overview Project Selection Blog about your selected project.
7 Feb 22 Project Startup Project Stage I Updates Blog about your Stage I updates.
Study Week Feb 29 Study Week - No classes!
8 Mar 7 Linaro Connect - No classes. Prepare for your presentation. Prepare for your presentation.
9 Mar 14 Presentations Presentations Blog about your presentation.
10 Mar 22 Project Stage II Updates Discussion & Hack Session Blog about your Stage II updates.
11 Mar 28 Guest Lecture Discussion & Hack Session Blog about your project.
12 Apr 4 Discussion & Hack Session Discussion & Hack Session Blog about your project.
13 Apr 11 Project Stage III Updates Wrap-up Discussion Blog about your project, including the Stage III Update, and write a wrap-up post about the course.
Exam Week Dec 14 Exam Week - No exam in this course!

Evaluation

Category Percentage Evaluation Dates
Communication 20% 5% each: End of January, end of February, end of March, end of course.
Quizzes 10% May be held during any class, usually at the start of class. A minimum of 5 one-page quizzes will be given. No make-up/retake option is offered if you miss a quiz. Lowest 3 scores will not be counted.
Labs 10% See deliverables column above.
Project work 60% 3 stages: 15% (TBA) / 20% (TBA) / 25% (TBA)