Supervisor's Name: Laurie Hendren
Supervisor's Email: hendren [at] cs.mcgill.ca
Supervisor's Phone: 7391
Supervisor's Website: http://www.sable.mcgill.ca/~hendren
Supervisor's department: Computer Science
Course number: COMP 396 (Computer Science)
Term: Fall 2012-2013
Project start date: September 4, 2012
Project end date: December 4, 2012
Project title: A study of the efficiency of vector computations in MATLAB
Project description: MATLAB is a scientific programming languages that historically has been interepreted, and which has a large builtin library for mathematical computations. HIstorically, programmers have been advised to program using vector (or array) operations, since this reduces the overall interpretation time and maximizes the use of the optimized libraries. However, with the advent of JIT (just-in-time) compilers for MATLAB, this general programming approach may not provide the best performance. The purpose of this project is to develop a suite of benchmarks, with pairs of benchmarks - one using vectorized (array) operations, and one with explicit loops. These benchmarks will then be used to evaluate the performance on interpreted systems and on system with JIT compilers (including Mathworks MATLAB and the McLAB JIT). A report will summarize the results and provide new insights into the best advice to give Matlab programmers.
Prerequisite: 1 term completed at McGill + CGPA of 3.0 or higher; or permission of instructor.
Grading scheme (The final report must be worth at least 50% of final grade): Benchmarks 20%, Milestones, 10%, Final report 70%
Project status: This project is taken. The professor has no more '396' projects this term.
How students can apply: N/A; this project is filled.
Ethics, safety, and training: Supervisors are responsible for the ethics and safety compliance of undergraduate students. This project involves NEITHER animal subjects, nor human subjects, nor biohazardous substances, nor radioactive materials, nor handling chemicals, nor using lasers.