Block-Based Programming Abstractions for Explicit Parallel Computing

被引:0
|
作者
Feng, Annette [1 ]
Tilevich, Eli [2 ]
Feng, Wu-chun [1 ,2 ]
机构
[1] Virginia Tech, Dept Comp Sci, Blacksburg, VA 24061 USA
[2] Virginia Tech, Dept Elect & Comp Engn, Blacksburg, VA USA
关键词
explicit parallel computing; computer science education; block-based programming; visual programming; parallel computational patterns;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
With the majority of computing devices now featuring multiple computing cores, modern programmers need to be able to write programs that utilize these cores in parallel to extract the requisite levels of performance. Despite the need for such explicit parallel computing, few programmers are properly groomed in the mindset and the practices of parallel computing. Block-based programming languages, such as Scratch and Snapl, have proven to be a highly effective means of teaching fundamental programming concepts to a wide student audience. Nevertheless, the rich feature-set of mainstream block-based programming environments lack abstractions for explicit parallel programming, thus missing the opportunity to introduce this increasingly important programming concept at a time when the students' minds are most receptive. This paper reports on the results of an NSF-sponsored project for adding and integrating explicit programming abstractions, including producer-consumer, master-worker, and MapReduce, to block-based languages. We describe our reference implementation of adding the producer-consumer abstraction to Snap! and an educational project that utilizes this abstraction. This project clearly demonstrate the key features of parallel processing, without unduly burdening the programmer with the low-level details that this programming model typically entails. Our initial results show great potential in introducing the key concepts of parallel computing via block-based programming.
引用
收藏
页码:71 / 75
页数:5
相关论文
共 50 条
  • [41] A Block-Based Parallel Decoding Architecture for Convolutional Codes
    Su, Chengyi
    Zhang, Yu
    Pan, Changyong
    Wan, Xiaofeng
    2010 5TH INTERNATIONAL ICST CONFERENCE ON COMMUNICATIONS AND NETWORKING IN CHINA (CHINACOM), 2010,
  • [42] On the Definition of Service Abstractions for Parallel Computing
    Paulino, Herve
    PARALLEL PROCESSING AND APPLIED MATHEMATICS, PART II, 2010, 6068 : 74 - 81
  • [43] An automatic feedback model for learning programming via block-based programming platforms
    Cakiroglu, Unal
    Mumcu, Suheda
    COMPUTER APPLICATIONS IN ENGINEERING EDUCATION, 2023, 31 (05) : 1398 - 1411
  • [44] Predicting programming performance by using process behavior in a block-based programming environment
    Fu, Qian
    Tang, Wenjing
    Zheng, Yafeng
    Ma, Haotian
    Zhong, Tianlong
    INTERACTIVE LEARNING ENVIRONMENTS, 2024, 32 (06) : 2371 - 2385
  • [45] A Comparison of Block-Based Programming Platforms for Learning Programming and Creating Simple Application
    AbdulSamad, Umar
    Romli, Rohaida
    ADVANCES ON INTELLIGENT INFORMATICS AND COMPUTING: HEALTH INFORMATICS, INTELLIGENT SYSTEMS, DATA SCIENCE AND SMART COMPUTING, 2022, 127 : 630 - 640
  • [46] Transitioning from Block-based to Text-based Programming Languages
    Moors, Luke
    Luxton-Reilly, Andrew
    Denny, Paul
    2018 6TH INTERNATIONAL CONFERENCE ON LEARNING AND TEACHING IN COMPUTING AND ENGINEERING (LATICE), 2018, : 57 - 64
  • [47] How Block Categories Affect Learner Satisfaction with a Block-Based Programming Interface
    Rodriguez, Fernando J.
    Price, Kimberly Michelle
    Isaac, Joseph, Jr.
    Boyer, Kristy Elizabeth
    Gardner-McCune, Christina
    2017 IEEE SYMPOSIUM ON VISUAL LANGUAGES AND HUMAN-CENTRIC COMPUTING (VL/HCC), 2017, : 201 - 205
  • [48] Adaptive Immediate Feedback for Block-Based Programming: Design and Evaluation
    Marwan, Samiha
    Akram, Bita
    Barnes, Tiffany
    Price, Thomas W.
    IEEE TRANSACTIONS ON LEARNING TECHNOLOGIES, 2022, 15 (03): : 406 - 420
  • [49] Blockly Goes to Work: Block-based Programming for Industrial Robots
    Weintrop, David
    Shepherd, David C.
    Francis, Patrick
    Franklin, Diana
    2017 IEEE BLOCKS AND BEYOND WORKSHOP (B&B), 2017, : 29 - 36
  • [50] Synthesizing a Progression of Subtasks for Block-Based Visual Programming Tasks
    Tercan, Alperen
    Ghosh, Ahana
    Eniser, Hasan Ferit
    Christakis, Maria
    Singla, Adish
    AI FOR EDUCATION WORKSHOP, 2024, 257 : 129 - 138