Refactoring-based learning for fine-grained lock in concurrent programming course

被引:3
|
作者
Zhang, Yang [1 ]
机构
[1] Hebei Univ Sci & Technol, Sch Informat Sci & Engn, Shijiazhuang 050000, Hebei, Peoples R China
关键词
computer education; concurrent programming; fine-grained lock; learning effectiveness; refactoring tools;
D O I
10.1002/cae.22469
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Fine-grained lock is frequently used to mitigate lock contention in the multithreaded program running on a shared-memory multicore processor. However, a concurrent program based on the fine-grained lock is hard to write, especially for beginners in the concurrent programming course. How to help participants learn fine-grained lock has become increasingly important and urgent. To this end, this paper presents a novel refactoring-based approach to enhance the learning effectiveness of fine-grained locks. Two refactoring tools are introduced to provide illustrating examples for participants by converting original coarse-grained locks into fine-grained ones automatically. Learning effectiveness and limitations are discussed when refactoring tools are applied. We evaluate students' outcomes with two benchmarks and compare their performance in Fall 2018 with those in Fall 2019. We also conduct experiments on students' outcomes by dividing them into two groups (A and B) in a controlled classroom where participants in group A learn the fine-grained locks with the help of refactoring tools while those in group B do not access these tools. Evaluation of the results when they have been taught with the refactoring-based approach reveals a significant improvement in the students' learning.
引用
收藏
页码:505 / 516
页数:12
相关论文
共 50 条
  • [31] A survey of fine-grained visual categorization based on deep learning
    Xie Yuxiang
    Gong Quanzhi
    Luan Xidao
    Yan Jie
    Zhang Jiahui
    JOURNAL OF SYSTEMS ENGINEERING AND ELECTRONICS, 2023,
  • [32] METRIC LEARNING BASED FINE-GRAINED CLASSIFICATION FOR POLSAR IMAGERY
    Ni, Jun
    Jia, Yunzhe
    Yin, Qiang
    Zhou, Yongsheng
    Zhang, Fan
    IGARSS 2020 - 2020 IEEE INTERNATIONAL GEOSCIENCE AND REMOTE SENSING SYMPOSIUM, 2020, : 716 - 719
  • [33] A fine-grained parallel programming model for grid computing
    Yang, GW
    Wang, Q
    Wu, YW
    Huang, DZ
    2004 IEEE INTERNATIONAL CONFERENCE ON SERVICES COMPUTING, PROCEEDINGS, 2004, : 613 - 616
  • [34] Fine-grained parallel SDN virtualization programming framework
    Song, Ping
    Liu, Yi
    Liu, Chi
    Zhang, Jing-Jing
    Qian, De-Pei
    Hao, Qin-Fen
    Ruan Jian Xue Bao/Journal of Software, 2014, 25 (10): : 2220 - 2234
  • [35] A FINE-GRAINED VIEW OF PHENOTYPES AND LOCALITY IN GENETIC PROGRAMMING
    McDermott, James
    Galvan-Lopez, Edgar
    O'Neill, Michael
    GENETIC PROGRAMMING THEORY AND PRACTICE IX, 2011, : 57 - 76
  • [36] Tensor Ranks and the Fine-Grained Complexity of Dynamic Programming
    Alman, Josh
    Turok, Ethan
    Yu, Hantao
    Zhang, Hengzhi
    15TH INNOVATIONS IN THEORETICAL COMPUTER SCIENCE CONFERENCE, ITCS 2024, 2024,
  • [37] Towards a Fine-grained Analysis of Complexity of Programming Tasks
    Duran, Rodrigo
    PROCEEDINGS OF THE 2017 ACM CONFERENCE ON INTERNATIONAL COMPUTING EDUCATION RESEARCH (ICER 17), 2017, : 271 - 272
  • [38] Fine-grained time course of verb aspect processing
    Minor, Serge
    Mitrofanova, Natalia
    Ramchand, Gillian
    PLOS ONE, 2022, 17 (02):
  • [39] Incremental Learning Method for Fine-Grained Bird Recognition Based on Prompt Learning
    Zhu, Tong
    Zhang, Haimiao
    Qiu, Jun
    LASER & OPTOELECTRONICS PROGRESS, 2024, 61 (24)
  • [40] Beyond Backtracking: Connections in Fine-Grained Concurrent Separation Logic
    Mulder, Ike
    Czajka, Lukasz
    Krebbers, Robbert
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (PLDI):