Workshop on Teaching Computational Science and Bridging the HPC Talent Gap with Computational Science Research Methods (WTCS) Session 2

Time and Date: 14:10 - 15:50 on 13th June 2017

Room: HG D 1.2

Chair: Angela B. Shiflet

526 Using Cognitive Computing for Learning Parallel Programming: An IBM Watson Solution [abstract]
Abstract: While modern parallel computing systems provide high performance resources, utilizing them to the highest extent requires advanced programming expertise. Programming for parallel computing systems is much more difficult than programming for sequential systems. OpenMP is an extension of C++ programming language that enables to express parallelism using compiler directives. While OpenMP alleviates parallel programming by reducing the lines of code that the programmer needs to write, deciding how and when to use these compiler directives is up to the programmer. Novice programmers may make mistakes that may lead to performance degradation or unexpected program behavior. Cognitive computing has shown impressive results in various domains, such as health or marketing. In this paper, we describe the use of IBM Watson cognitive system for education of novice parallel programmers. Using the dialogue service of the IBM Watson we have developed a solution that assists the programmer in avoiding common OpenMP mistakes. To evaluate our approach we have conducted a survey with a number of novice parallel programmers at the Linnaeus University, and obtained encouraging results with respect to usefulness of our approach.
Adrian Chozas, Suejb Memeti and Sabri Pllana
132 Building a Community of Practice to Prepare the HPC Workforce [abstract]
Abstract: It has been well documented for more than 30 years, that significantly more effort is needed to prepare the HPC workforce needed today and well into the future. The Blue Waters Virtual School of Computational Science (VSCSE) provides an innovative model for addressing this critical need. The VSCSE uses a Small Private Online Course (SPOC) approach to providing graduate level credit courses to students at multiple institutions. In this paper, we describe the rationale for this approach, a description of the implementation, findings from external evaluations, and lessons learned. The paper concludes with recommendations for future strategies to build on this work to address the workforce needs of our global society.
Katharine Cahill, Scott Lathrop and Steven Gordon
440 Unit testing and specs based grading in an introductory scientific parallel computing course [abstract]
Abstract: In this talk we discuss design considerations for an undergraduate introductory scientific computing course, why these considerations led to a specs-based grading scheme, and some techinical detail on how specs-based grading was accomplished using unit tests. The course is part of the Computational Science major at Rose-Hulman Institute of Technology. This major attracts a wide range of students, most of whom have a second major. As such, students have a wide range of background experiences, proficiencies, and potential uses for parallel computing. In this talk we discuss: 1. Selection of material and grading scheme to keep the course approachable to students with relatively weak background, keep most of the content relevant to most of the students, and provide a challenge to the students with a strong background. 2. How specs-based grading was implemented. One of the tradiational challenges with specs-based grading is in developing specifications that are clear to the students, maintain the integrity of the project, and are easily verifiable by the instructor. This is particularly difficult in a parallel computing course, where "write code that produces the correct answer" is not an acceptable specification, but rather "write code that produces the correct answer by using a reasonable algorithm". We present a unit testing scheme that allows both the instructor and the student to asses the efficiency and basic design of student code -- without having to actually read the student code. This led to a significant improvement in student understanding, quality of submitted code, and instructor satisfaction.
Joseph Eichholz
358 Bridging Gaps with Scientific Workflows: Experiences from an Interdisciplinary Project Course [abstract]
Abstract: At the Workshop on Teaching Computational Science at ICCS 2015, we presented an approach to use scientific workflows in computational science education. Concretely, we described how we used a process modelling and execution framework for scientific workflow projects in the scope of a computer science course for Master students with a background in natural sciences. We also reported on a variant of the course that served the converse purpose, namely to teach the basics of scientific workflows this time to Bachelor students of a Computer Science study program (who are in the process of acquiring solid programming and software development skills, but have hardly any background in other scientific disciplines). Furthermore, we envisaged to offer a course that brings both groups together, with project work carried out in interdisciplinary pairs consisting of a student of a natural science subject and a computer science partner - a constellation that many students are likely to find themselves in after graduation. Meanwhile, we have been able to actually implement this variant of the course. Taking on the roles of the “domain expert” and the “programmer”, respectively, the interdisciplinary pairs worked together on one problem - from different perspectives, but with the workflow model being the means to bridge the gap between their areas of expertise. The experiences with this interdisciplinary project course were very positive. The students designed and implemented larger and more complex scientific workflows than those in the previous years. In the course evaluation they reported that although in the beginning they found it difficult to follow their partner from the other domain, they were impressed how much that improved during the project work, and that they enjoyed and valued this experience. Encouraged by these outcomes, we plan to continue and extend the course concept in the future.
Anna-Lena Lamprecht