Integrating Parallel and Distributed Computing in Early CS Courses

Integrating Parallel and Distributed Computing in Early CS Courses
复制标题

在早期计算机科学课程中集成并行和分布式计算

DOI:
10.1145/3478432.3499155
复制
发表时间:
2022
期刊:
Proceedings of the 53rd ACM Technical Symposium on Computer Science Education
影响因子:
--
通讯作者:
Weems, Charles
Weems, Charles
中科院分区:
--
文献类型:
--
作者:
Ghafoor, Sheikh;Prasad, Sushil;Weems, Charles

文献摘要

相似文献

并行和分布式计算(PDC)已经普遍存在于计算的各个方面,因此学生从一开始就必须将并行性和分布式纳入到他们应用于问题解决的计算思维中。计算机科学教育仍在教授 20 世纪的算法问题解决模型。序列、分支和循环是我们早期课程中教授的算法所需的唯一组织原则,并且我们投入了大量时间来展示如何最好地顺序处理大量数据。目前学生使用的所有计算设备在很多情况下都具有多个核心以及 GPU。他们最喜欢的大多数应用程序都使用多个内核和多个分布式处理器。通常并发提供比顺序方法更简单的解决方案。 ACM 和 ABET 建议将 PDC 纳入本科计算机科学课程。然而,我们仍在教他们使用顺序思维解决问题。在本次研讨会中,我们概述了关键的 PDC 概念,并提供了如何将它们自然地融入早期 CS 课程的示例。我们将引入已成功集成到多个机构现有计算机科学课程中的插入式和非插入式课程模块。我们将重点介绍我们正在组织的即将举行的夏季培训,我们有资金支持参加培训。
Parallel and distributed computing (PDC) has become pervasive in all aspects of computing, and thus it is essential that students include parallelism and distribution in the computational thinking that they apply to problem solving, from the very beginning. Computer science education is still teaching to a 20th century model of algorithmic problem solving. Sequence, branch, and loop are taught in our early courses as the only organizing principles needed for algorithms, and we invest considerable time in showing how best to sequentially process large volumes of data. All computing devices that students use currently have multiple cores as well as GPU in many cases. Most of their favorite applications use multiple cores and numbers of distributed processors. Often concurrency offers simpler solutions than sequential approaches. ACM and ABET have recommended including PDC in the undergraduate CS curriculum. However, we are still teaching them to solve problems using sequential thinking. In this workshop we overview the key PDC concepts and provide examples of how they may naturally be incorporated in early CS classes. We will introduce plugged and unplugged curriculum modules that have been successfully integrated in existing CS classes at multiple institutions. We will highlight the upcoming summer training that we are organizing, for which we have funding to support attendance.