Principles of high performance computing for single-processor and parallel architectures. Detailed coverage of parallel architectures and exposure to shared-memory, distributed-memory, and hybrid parallelism. Hands-on experience with message-passing and multithreaded programming. A-F only. Pre: graduate standing in computer science or closely related field, or consent. (Once a year)