Open main menu

CDOT Wiki β

Changes

Fall 2015 SPO600 Weekly Schedule

426 bytes removed, 23:27, 30 August 2015
no edit summary
[[Category:Fall 2015 SPO600]]
{{Admon/important|Content being Edited|This page is being edited to adjust for the Fall 2015 version of this course. Please do not rely on this information yet.}}
{{Admon/important|It's Alive!|This [[SPO600]] weekly schedule will be updated as the course proceeds - dates and content are subject to change. The cells in the summary table will be linked to relevant resources and labs as the course progresses.}}
!Week!!Week of...!!width="28%"|Tuesday!!width="28%"|Thursday!!width="28%"|Deliverables<br/>(Summary - click for details)
|-
|1||Sep 7||style="background: #f0f0ff"|(Experience Seneca - no class)||[[#Tuesday (Sep 11)|Introduction to Software Porting, Portability, Benchmarking, and Optimization / How is code accepted into an open source project? (Lab 1)]]||[[#Week 1 Deliverables|Set up accounts, and blog a comparison of code reviews in two communities (Lab 1).]]
|-
|-style="background: #f0f0ff"
|Study Week||Oct 26||colspan="3" align="center"|Study Week - No classes! Plan Please plan to attend [http://fsoss.ca FSOSS 2015 on Thursday/Friday]
|-
|}
<!--
== Week 1 ==
=== Tuesday (Jan 13Sep 8) === No class due to the '''Experience Seneca''' orientation program. === Friday (Sep 11) ===
==== Introduction to the Problems ====
===== Build Process =====
 
Building software is a complex task that many developers gloss over. The simple act of compiling a program invokes a process with five or more stages, including pre-proccessing, compiling, optimizing, assembling, and linking. However, a complex software system will have hundreds or even thousands of source files, as well as dozens or hundreds of build configuration options, auto configuration scripts (cmake, autotools), build scripts (such as Makefiles) to coordinate the process, test suites, and more.
In this course, you will:
# Test Help develop a test framework for C compiler optoins.# Select an open source software package.# Determine the performance of all or part impact of various C compiler options on the LAMP stackselected software.# Determine how Make recommendations for the performance of one specific part of the stack could C compiler options/flags to be improved, either specifically used on the AArch64 systems (without detriment to other systems) or on all systemsarchitecture.# Prepare a fix/patch for the software to implement that performance improvement.# Prove that your set the recommended options when compiling on AArch64 and submit these changes do not cause any unacceptable performance regressions (Note: there might be performance regressions which are considered acceptable!).# Upstream your Code - Submit your code upstream, OR report to the upstream (originating) software project so that it can be incorporated into future versions of they are already using the software. This will involve going through a code review to ensure that your code is compatible with and acceptable to the upstream communityoptimal flags.
==== General Course Information ====
* All classes will be held in an [[Active Learning Classroom]] -- you are encouraged to bring your own laptop to class. If you do not have a laptop, consider signing one out of the Learning Commons for class, or using a smartphone with an HDMI adapter.
* For more course information, refer to the SPO600 Weekly Schedule (this page), the [http://www.senecacollege.ca/ssos/findWithoutSemester/spo600/sict Course Outline], and [[SPO600 Course Policies]].
< !-- * Introduction to the [http://linaro.org Linaro] Code Porting/Optimization project. -- >< !-- * Optional: You can participate in the [http://linaro.org Linaro] Code Porting/Optimization contest. For details, see the [http://www.youtube.com/watch?v=Lo1dBB3tke8 YouTube video] of Jon "maddog" Hall and Steve Mcintyre at Linaro Connect USA 2013. -- >
==== Discussion of how open source communities work ====
* Background for the [[SPO600 Code Review Lab|Code Review Lab (Lab 1)]].
 
=== Thursday (Jan 15) ===
 
* Benchmarking
* Profiling
=== Week 1 Deliverables ===
# Set up your [[SPO600 Communication Tools]] - in particular, set up a blog and add it to [http://zenit.senecac.on.ca/~chris.tyler/planet/ Planet CDOT] (via the [[Planet CDOT Feed List]]).
# Add yourself to the [[Winter Fall 2015 SPO600 Participants]] page (leave the projects columns blank).
# Generate a [[SSH#Using_Public_Keys_with_SSH|pair of keys]] for [[SSH]] and email the public key to your professor.
# Sign and return the [[Open Source Professional Option Student Agreement]].
 
# Optional but recommended: [[SPO600 Host Setup|Set up a personal Fedora system]].
# Optional but recommended: Purchase an AArch64 development board.
 
<!--
== Week 2 ==