160 likes | 253 Views
John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879. Machine Learning for Solving Systems Problems Syllabus Slides. Short Bio. John Cavazos <cavazos@cis> Assistant Professor, CIS Research
E N D
John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879 Machine Learning for Solving Systems Problems Syllabus Slides
Short Bio • John Cavazos <cavazos@cis> • Assistant Professor, CIS • Research • Applying machine learning to hard systems problems • Compiling for advanced architectures • Interplay between compiler and architecture • Nitty-gritty things that happen in compiler back-ends • Rethinking fundamental structure of optimizing compilers
Lecture 1: Overview • Structure of Course • The Rest of the Course • Administrivia
Structure of the Course • First 5-8 lectures by me! • Student presentations (30 mins.) • More about this later. • Two Projects • Team projects (2 or 3 per team) • Project reports due for Project 1 and 2 • Amount of work proportional to size of team • Presentation due (if time permits) for Project 2
Options for Project 1 • Iterative compilation • Architecture exploration • Cybersecurity • Other?
Project 1: Iterative compilation • Optimize a program using iterative compilation • Improve code running on multicores or GPUs • Use one of the following infrastructures available • Milepost GCC (www.ctuning.org) • JikesRVM (www.jikesrvm.org) • Rose compiler (www.rosecompiler.org) • Open64 (www.open64.net) • PoCC (http://www-roc.inria.fr/~pouchet/software/pocc/) • Optimize, Run, Measure, Repeat • Use different optimizations (or even different compilers)
Project 1: Arch Exploration • Search architecture configurations in a simulator • Find best configuration for performance or energy • Use one of the following infrastructures available • Arch Explorer (www.archexplorer.org) • SimpleScalar (www.simplescalar.com) • Find best architecture configuration for a benchmark • Vary different architecture components
Project 1: Cybersecurity • Extract characteristics of malware • Look at the following • Malware database (malwaredatabase.net) • Our own database (ask instructor) • Use static analysis or binary instrumentation tools • Cluster / Visualize program characteristics • Likely have to use your own computer for this!
Project 1: Your own research! • Suggest a project involving your own research • Will have to convince your team members • Only by approval of instructor • Has to solve a “systems” problem
Project 1 (cont’d) • Goal : Familiarization with an environment • Deliverables: • 1) Project Report • 2 page per team member (No Fluff!) • Template available online (font size, margins,etc.) • 2) Experience Reports • 5 minute presentation describing positives/negatives • Handout available next week • This week: Try out systems from previous slide
Project 2 • Can be a continuation of project 1 or a change • Must be a more in-depth project • 2 checkpoints • Checkpoint 1: Proposal to instructor • Checkpoint 2: Mid-point status • Project Report (~4 pgs per team member) • Conference paper format • Project presentation (if time permits) • Handout available in a couple weeks
Basis for Grading • Paper Presentation (25%) • Review 2 papers (15%) • 1 page per review (sample reviews available online) • Projects (60%) • Project 1 (20%) • Project report / Experience presentation reports • Project 2 (40%) • Checkpoints / Project report / presentation (if time permits) No Midterm or Final!
Several Related Venues • Statistical and Machine learning approaches to ARchitecture and compilaTion Workshop (SMART) • www.ctuning.org/workshop-smart10 • international Workshop on Automatic Performance Tuning (iWAPT) • www.iwapt.org • Workshop on Tackling Computer Systems Problems with Machine Learning Techniques (SysML) • www.usenix.org/event/sysml08/ • Many major systems conferences publish work in this area! • PLDI, CGO, ASPLOS, PACT, ISCA, MICRO, LCTES
Background/References • Compiler / Architecture / Machine learning background not required but helpful • No textbook for the class
Project Guidelines • Project reports should be • Well-written and formatted correctly • Properly referenced • Results should be presented with graphs • Intellectual merit most important factor • Negative result is fine • However, must demonstrate something interesting Think of this as a conference submission!
Expectations • Class participation • Ask questions • Challenge all speakers. • NOT a lecture class or a passive experience. ACTIVE learning. • Most common project problem: Not getting started • Ask for help if you need it! • I will hold office hours in my lab (Smith 102). • Require lab visits to show me status!