Nov 21, 2024  
2024-2025 Graduate Catalog 
    
2024-2025 Graduate Catalog
Add to Portfolio (opens a new window)

MSCS 679L - Parallel Computing


4 Credits

Parallel computing has historically played a vital role in addressing the performance demands of high-end engineering and scientific applications. However, it has now moved to center stage in light of current hardware trends and device power efficiency limits. All computer systems-embedded, game consoles, laptop, desktop, high-end supercomputers, and large-scale data center clusters-are being built using chips with an increasing number of processor cores, with little or no increase in clock speed per core. This course will introduce the concept of multicore and multiprocessor parallel programming. Topics such as Amdhal’s law, speedup, efficiency, hyper-threading, task-level vs. data-level parallelism, shared memory vs. shared-nothing algorithms, concurrent vs. parallel collections, database sharding, and debugging and testing will be discussed. Small student teams analyze, design, and build a parallel computing application using software-development best practices.



Add to Portfolio (opens a new window)