This course covers advanced topics in Computing, the“C” part of the core ABC (AI model/algorithm, Big data, Computing) courses in data science.
In the first phase of this course, students will (1) learn architectures and operation principles of sequential computer systems to improve systems programming skills, (2) overall operation principles of Linux systems, such as process management, CPU scheduling, and network basics. In the second phase of this course, students will learn (1) architectures and operation principles of parallel processing systems, (2) parallelization and optimization methods, and (3) optimization methods for deep learning systems. In the third phase of this course, students will learn (1) various methods of programming parallel processing systems, such as OpenMP, MPI, OpenCL, and CUDA, (2) distributed processing platforms, such as Spark, and (3) virtualization, such as Dockers and Kubernetes.
Computing for Data Science 1