Computer architecture: parallel architectures, shared-memory and message-passing communication models, massively parallel systems built using SMP clusters, distributed-memory architectures for exploiting fine-grain parallelism; performance evaluation of computer systems; applications for driving research in high-performance architectures