2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)最新文献

筛选
英文 中文
SMPI Courseware: Teaching Distributed-Memory Computing with MPI in Simulation SMPI课件:基于MPI的分布式内存计算仿真教学
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00006
H. Casanova, Arnaud Legrand, M. Quinson, F. Suter
{"title":"SMPI Courseware: Teaching Distributed-Memory Computing with MPI in Simulation","authors":"H. Casanova, Arnaud Legrand, M. Quinson, F. Suter","doi":"10.1109/EduHPC.2018.00006","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00006","url":null,"abstract":"It is typical in High Performance Computing (HPC) courses to give students access to HPC platforms so that they can benefit from hands-on learning opportunities. Using such platforms, however, comes with logistical and pedagogical challenges. For instance, a logistical challenge is that access to representative platforms must be granted to students, which can be difficult for some institutions or course modalities; and a pedagogical challenge is that hands-on learning opportunities are constrained by the configurations of these platforms. A way to address these challenges is to instead simulate program executions on arbitrary HPC platform configurations. In this work we focus on simulation in the specific context of distributed-memory computing and MPI programming education. While using simulation in this context has been explored in previous works, our approach offers two crucial advantages. First, students write standard MPI programs and can both debug and analyze the performance of their programs in simulation mode. Second, large-scale executions can be simulated in short amounts of time on a single standard laptop computer. This is possible thanks to SMPI, an MPI simulator provided as part of SimGrid. After detailing the challenges involved when using HPC platforms for HPC education and providing background information about SMPI, we present SMPI Courseware. SMPI Courseware is a set of in-simulation assignments that can be incorporated into HPC courses to provide students with hands-on experience for distributed-memory computing and MPI programming learning objectives. We describe some these assignments, highlighting how simulation with SMPI enhances the student learning experience.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125244154","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Peachy Parallel Assignments (EduHPC 2018) 并行作业(EduHPC 2018)
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00012
E. Ayguadé, Lluc Alvarez, Fabio Banchelli, Martin Burtscher, Arturo González-Escribano, Julian Gutierrez, D. Joiner, D. Kaeli, Fritz G. Previlon, Eduardo Rodriguez-Gutiez, David P. Bunde
{"title":"Peachy Parallel Assignments (EduHPC 2018)","authors":"E. Ayguadé, Lluc Alvarez, Fabio Banchelli, Martin Burtscher, Arturo González-Escribano, Julian Gutierrez, D. Joiner, D. Kaeli, Fritz G. Previlon, Eduardo Rodriguez-Gutiez, David P. Bunde","doi":"10.1109/EduHPC.2018.00012","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00012","url":null,"abstract":"Peachy Parallel Assignments are a resource for instructors teaching parallel and distributed programming. These are high-quality assignments, previously tested in class, that are readily adoptable. This collection of assignments includes implementing a subset of OpenMP using pthreads, creating an animated fractal, image processing using histogram equalization, simulating a storm of high-energy particles, and solving the wave equation in a variety of settings. All of these come with sample assignment sheets and the necessary starter code.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125272261","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Evaluating the Wide Area Classroom after 10,500 HPC Students 10500名HPC学生后的广域教室评估
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00009
J. Urbanic, T. Maiden
{"title":"Evaluating the Wide Area Classroom after 10,500 HPC Students","authors":"J. Urbanic, T. Maiden","doi":"10.1109/EduHPC.2018.00009","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00009","url":null,"abstract":"As of mid-2018 we have taught over 10,500 students in the course of 58 events using the Wide Area Classroom, a novel distributed teaching platform. This has been a successful effort gauged by several important metrics. We describe both the technical and logistical structure of these events as well as the specific HPC curriculums which have proven to be most popular.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130585429","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Jupyter Notebooks and User-Friendly HPC Access Jupyter笔记本和用户友好的HPC访问
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00005
Ben Glick, Jens Mache
{"title":"Jupyter Notebooks and User-Friendly HPC Access","authors":"Ben Glick, Jens Mache","doi":"10.1109/EduHPC.2018.00005","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00005","url":null,"abstract":"In the modern world, having at least a basic un- derstanding of High Performance Computing is critical even for undergraduate students. In this project, we describe our extensible ecosystem of tools which has lowered the access barrier to HPC systems for less experienced users. Our ecosystem of tools serves as the ”one-stop” interface which allows users to focus on their research and teaching without remembering a lot of commands and syntax, or struggling with details like job submission or file systems. This environment is specially tailored for education. We provide a means for teachers to easily provide students access to information and assignments, and give students their own personal HPC sandbox, including access to a fully- functional, personalized Jupyter Notebook server.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129375020","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 10
Filling the gap between education and industry: evidence-based methods for introducing undergraduate students to HPC 填补教育与产业之间的差距:以证据为基础的方法向本科生介绍HPC
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00008
Fabio Banchelli, F. Mantovani
{"title":"Filling the gap between education and industry: evidence-based methods for introducing undergraduate students to HPC","authors":"Fabio Banchelli, F. Mantovani","doi":"10.1109/EduHPC.2018.00008","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00008","url":null,"abstract":"Educational institutions provide in most cases basic theoretical background covering several computational science topics. However, High-Performance Computing (HPC) and Parallel and Distributed Computing (PDC) markets require specialized technical profiles. Even the most skilled students are often not prepared to face production HPC applications of thousands of lines nor complex computational frameworks from other disciplines nor heterogeneous multinode machines accessed by hundreds of users. In this paper, we offer an educational package for filling this gap. Leveraging the 4-years experience of the Student Cluster Competition, we present our educational journey together with the lessons learned and the outcomes of our methodology. We show how, in a time span of a semester and an affordable budget, a university can implement an educational package preparing pupils for starting competitive professional careers. Our findings also highlight that 78% of the students exposed to our methods remain within the HPC high-education, research or industry.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129054478","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
Teaching HPC Systems and Parallel Programming with Small-Scale Clusters 小型集群的HPC系统和并行编程教学
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00004
Lluc Alvarez, E. Ayguadé, F. Mantovani
{"title":"Teaching HPC Systems and Parallel Programming with Small-Scale Clusters","authors":"Lluc Alvarez, E. Ayguadé, F. Mantovani","doi":"10.1109/EduHPC.2018.00004","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00004","url":null,"abstract":"In the last decades, the continuous proliferation of High-Performance Computing (HPC) systems and data centers has augmented the demand for expert HPC system designers, administrators, and programmers. For this reason, most universities have introduced courses on HPC systems and parallel programming in their degrees. However, the laboratory assignments of these courses generally use clusters that are owned, managed and administrated by the university. This methodology has been shown effective to teach parallel programming, but using a remote cluster prevents the students from experimenting with the design, set up and administration of such systems. This paper presents a methodology and framework to teach HPC systems and parallel programming using a small-scale cluster of single-board computers. These boards are very cheap, their processors are fundamentally very similar to the ones found in HPC, and they are ready to execute Linux out of the box. So they represent a perfect laboratory playground for students experiencing how to assemble a cluster, setting it up, and configuring its system software. Also, we show that these small-scale clusters can be used as evaluation platforms for both, introductory and advanced parallel programming assignments.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114276533","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 13
A One Year Retrospective on a MOOC in Parallel, Concurrent, and Distributed Programming in Java 《Java并行、并发和分布式编程MOOC一年回顾》
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00010
Vivek Sarkar, M. Grossman, Zoran Budimlic, S. Imam
{"title":"A One Year Retrospective on a MOOC in Parallel, Concurrent, and Distributed Programming in Java","authors":"Vivek Sarkar, M. Grossman, Zoran Budimlic, S. Imam","doi":"10.1109/EduHPC.2018.00010","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00010","url":null,"abstract":"Much progress has been made on integrating parallel programming into the core Computer Science curriculum of top-tier universities in the United States. For example, \"COMP 322: Introduction to Parallel Programming\" at Rice University is a required course for all undergraduate students pursuing a bachelors degree. It teaches a wide range of parallel programming paradigms, from task-parallel to SPMD to actor-based programming. However, courses like COMP 322 do little to support members of the Computer Science community that need to develop these skills but who are not currently enrolled in a four-year program with parallel programming in the curriculum. This group includes (1) working professionals, (2) students at USA universities without parallel programming courses, or (3) students in countries other than the USA without access to a parallel programming course. To serve these groups, Rice University launched the \"Parallel, Concurrent, and Distributed Programming in Java\" Coursera specialization on July 31, 2017. In 2017, the authors of that specialization also wrote an experiences paper about launching the specialization. In this paper, the sequel to our previous publication, we look back at the first year of the Coursera specialization. In particular, we ask the following questions: (1) how did our assumptions about the student body for this course hold up?, (2) how has the course changed since launch?, and (3) what can we learn about how students are progressing through the specialization from Coursera's built-in analytics?","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125573843","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Title Page 标题页
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/eduhpc.2018.00001
{"title":"Title Page","authors":"","doi":"10.1109/eduhpc.2018.00001","DOIUrl":"https://doi.org/10.1109/eduhpc.2018.00001","url":null,"abstract":"","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116073989","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Employing Student Retention Strategies for an Introductory GPU Programming Course 在GPU编程入门课程中运用学生留存策略
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00007
Julian Gutierrez, Fritz G. Previlon, D. Kaeli
{"title":"Employing Student Retention Strategies for an Introductory GPU Programming Course","authors":"Julian Gutierrez, Fritz G. Previlon, D. Kaeli","doi":"10.1109/EduHPC.2018.00007","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00007","url":null,"abstract":"Graphics Processing Units (GPUs) have become a vital hardware resource for the industry and research community due to their high computing capabilities. Despite this, GPUs have not been introduced into the undergraduate curriculum of Computer Engineering and are barely covered in graduate courses. Bridging the gap between university curriculum and industry requirements for GPU expertise is ongoing, but this process takes time. Offering an immediate opportunity for students to learn GPU programming is key for their professional growth. The Northeastern University Computer Architecture Research Lab offers a free GPU programming course to incentivize students from all disciplines to learn how to efficiently program a GPU. In this paper, we discuss the methods used to keep students engaged in a course with no academic obligations. After applying these strategies, we were able to retain more than 80% of the students who started the course. Moreover, the students gave positive feedback on these strategies.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115285841","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Towards Developing a Repository of Logical Errors Observed in Parallel Code for Teaching Code Correctness 开发并行代码中观察到的逻辑错误存储库以教授代码正确性
2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC) Pub Date : 2018-11-01 DOI: 10.1109/EduHPC.2018.00011
Trung Nguyen Ba, R. Arora
{"title":"Towards Developing a Repository of Logical Errors Observed in Parallel Code for Teaching Code Correctness","authors":"Trung Nguyen Ba, R. Arora","doi":"10.1109/EduHPC.2018.00011","DOIUrl":"https://doi.org/10.1109/EduHPC.2018.00011","url":null,"abstract":"Debugging parallel programs can be a challenging task, especially for the beginners. While the debuggers like DDT and TotalView can be extremely useful in tracking down the program statements that are connected to the bugs, often the onus is on the programmers to reason about the logic of the program statements in order to fix the bugs in them. These debuggers may neither be able to precisely indicate the logical errors in the parallel programs nor they may provide information on fixing those errors. Therefore, there is a need for developing tools and educational content on teaching the pitfalls in parallel programming and writing correct code. Such content can be useful to guide the beginners in avoiding commonly observed logical errors and in verifying the correctness of their parallel programs. In this paper, we 1) enumerate some of the logical errors that we have seen in the parallel programs (OpenMP, MPI, and CUDA) that were written by the beginners working with us, and 2) discuss the ways to fix those errors. The errors are mainly related to the data distribution, exiting distributed for-loops, and workload-imbalance. The documentation on these logical errors can contribute in enhancing the productivity of the beginners, and can potentially help them in their debugging efforts. We have added the code samples containing logical errors and their solutions in a Github repository so that the others in the community can reproduce the errors on their systems and learn from them. The content presented in this paper may also be useful for those developing high-level tools for detecting and removing logical errors in parallel programs.","PeriodicalId":315808,"journal":{"name":"2018 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116689861","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信