BME 194 Home Page

Resource-efficient Programming


Content:
The course teaches students to write programs that use computer resources (time and memory) efficiently. The students will learn to measure resource usage and modify programs to get better performance. Programming exercises in the course will be done in the c programming language, as it is a simple, low-level language which has few hidden costs, making the effect of program changes for efficiency easier to understand. It is also commonly the language of choice for programmers who care about how efficient their programs are.
Target audience:
The course is particularly appropriate for programmers working at the limits of their hardware (bioinformaticians, game programmers, and embedded system programs).
Prerequisites:
CMPS 12B or 13H, CMPE 16, and MATH 19A. Students must already know how to program in a block-structured language (such as java, c, or Pascal); must have had an introduction to recursion and induction, logic, probability, and combinatorics; and must understand differentiation well enough to be able to optimize functions. CMPS 101 and CMPE 12C are not required prerequisites, but mastering the material in those classes would make resource-efficient programming easier.
Requirements satisfied:
The course can be used by bioinformatics majors as their dvanced programming elective (in place of CMPE 177, CMPS 104A, or CMPS 109). Students in other majors will have to petition their Undergraduate Directors to have the course counted as an elective.

Index of class offerings

Class Information for Winter 2004



slug icon to go to School of Engineering home page SoE home     UCSC Bioinformatics Home Page     BME 194 home page    

Questions about page content should be directed to

Kevin Karplus
Computer Engineering
University of California, Santa Cruz
Santa Cruz, CA 95064
USA
karplus@soe.ucsc.edu
1-831-459-4250