开始日期: 2024-06-29
课时安排: 7周在线小组科研学习+5周不限时论文指导学习
适合人群
适合年级 (Grade): 大学生及以上
适合专业 (Major): 对计算机科学、计算机工程、游戏引擎开发等领域感兴趣的学生
学生需要至少熟练使用一门编程语言并修读过算法与数据结构,具备软件开发及并行编程经验的申请者优先
建议选修: Python编程与数据处理
导师介绍
Rakesh
伊利诺伊大学香槟分校 (UIUC)终身正教授
Rakesh导师现任伊利诺伊大学厄巴纳香槟分校电子和计算机工程系的终身正教授,导师的研究兴趣在于计算机工程与用于机器学习的计算机硬件。导师的研究成果曾获ISCA最具影响力论文奖、十年最具影响力论文奖、及其他最佳论文奖与提名(IEEE MICRO Top Picks、ASPLOS、HPCA、CASES、SELSE、IEEE CAL)。他的教学成果受广泛认可,并获得了多份杰出教学奖。除学术研究外,导师行业经验也极为丰富,曾担任Hyperion Core, Inc(微处理器芯片初创公司)的联合创始人和首席架构师。
项目背景
从智能手机,到多核cpu和gpu,再到世界上最大的超级计算机和网站,全面地利用多核计算机处理器资源,减少内存及时间开销已成为程序设计时的必须考虑的要素。并行程序设计理念也因此诞生,它旨在提高计算机的运行速度和系统的处理能力,在总体设计和逻辑设计中广泛采用并行操作技术,使各部件并行工作,以提高系统效率。本项目的目标是提供对设计现代并行计算系统所涉及的基本原理和工程权衡的深刻理解,同时教授有效利用这些机器所必需的并行编程技术。因为编写好的并行程序需要了解机器的关键性能特征,所以本项目将涵盖并行硬件和软件设计,围绕着不同类别的并行架构,及在这些架构上的编程模型展开。
项目介绍
本项目将循序渐进地讲述共享存储器多线程编程的基础知识,详细解释当今多处理器硬件(多核处理器、图形处理器、加速器、数据中心、仓库规模和超级计算机)对并发程序设计的支持方式,全面考察主流的并发数据结构及其关键设计要素。学生将在导师指导下,针对现有问题,遵循并行程序设计原理,开发或优化机器学习算法。在项目结束时,提交项目报告,进行成果展示。
This course is designed to give students a detailed overview of the key approaches and current research directions in parallel programming and architecture. Using a fast-paced, but still detailed set of lectures, the course will cover different classes of parallel architectures, including multi-core and many-core processors, GPUs, accelerators, datacenters, and warehouse-scale and supercomputers. We will cover key concepts underlying the performance and correctness of execution on these architectures (e.g., coherence, consistency, synchronization, SIMD, etc.). We will also provide an overview of programming models for these architectures (openMP/MPI/CUDA, etc). The lectures will be accompanied with a set of group-based project assignments that will provide students hands-on experience with different machine learning algorithms to solve important tasks.
个性化研究课题参考 Suggested Research Fields:
基于GPU的星图配准算法并行程序设计 Parallel Programming Design of Star Image Registration Based on GPU
多核CPU和并行程序设计语言中的横向局部性与纵向局部性对比研究 A Comparative Study of Horizontal and Vertical Locality in Multi-core CPU and Parallel programming
多核处理器关键技术及发展趋势研究 Research on Development Trend and Key Techniques for Multi-core Processors
在电子游戏中实现并行编程 Parallel Programming in Video Games
项目大纲
共享内存处理器,消息传递处理器,多核和多核处理器 Shared memory processors, message passing processors, multi-core and many-core processors
同步,缓存连贯性性和一致性,openMP/MPI Synchronization, Cache coherence and consistency, openMP/MPI
图像处理器, 单指令多数据流,加速器,CUDA GPUs, SIMD, accelerators, CUDA
数据中心、数据库规模和超级计算机 Datacenters, Warehouse-scale and supercomputers
项目回顾与成果展示 Program review and presentation
论文辅导 Project deliverable tutoring
项目收获
7周在线小组科研学习+5周不限时论文指导学习 共125课时
项目报告
优秀学员获主导师Reference Letter
EI/CPCI/Scopus/ProQuest/Crossref/EBSCO或同等级别索引国际会议全文投递与发表指导(可用于申请)
结业证书
成绩单