On-line Service for Teaching Parallel Programming

  • Marek Nowicki
  • Maciej Marchwiany
  • Maciej Szpindler
  • Piotr BałaEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9523)


With the wide adoption of the multicore and multiprocessor systems, parallel programming becomes very important element of the computer science education. However, the number of students exposed to the parallel programming is still limited and it is difficult to increase this number using traditional approach to teaching. The difficulties are caused, amongst others, by the parallel tools, libraries and programming models. The parallel programming using the message passing model is difficult, the shared memory model is easier to learn but writing codes which scales well is not easy. There is quite potential in the PGAS languages but they are not widely popularized. Finally, the teaching of scalable parallel programming requires access to the large computational systems which is not easy to obtain and even then, the operating systems and its specific features like operating and queueing systems provide students with additional challenges. In this paper we present extension of the developed by us ZawodyWeb system for on-line validation of the programs sent by the students. The ZawodyWeb system has been extended to support parallel programs written in different programming paradigms. With the help of UNICORE middleware, it allows to run students problems on the large scale production facilities. The added value is simple web interface which reduces all peculiarities of the large multiprocessor computers. The developed by us system has been verified during the parallel programming course for the undergraduate students from the computer science program.


Parallel computing Partitioned global address space PCJ On-line tools Java 



This work has been performed using the PL-Grid infrastructure. Partial support from the CHIST-ERA consortium (HPDCJ project) and National Centre for Research and Development (OCEAN project) is acknowledged.


  1. 1.
    Unicore middleware website (2014).
  2. 2.
  3. 3.
    Almeida, F., Cuenca, J., Fernández-Pascual, R., Giménez, D., Benito, J.A.P.: The spanish parallel programming contests and its use as an educational resource. In: 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops and Ph.D. Forum, pp. 1303–1306. IEEE (2012)Google Scholar
  4. 4.
    Benedyczak, K., Bała, P., van den Berghe, S., Menday, R., Schuller, B.: Key aspects of the unicore 6 security model. Future Generat. Comput. Syst. 27(2), 195–201 (2011)CrossRefGoogle Scholar
  5. 5.
    Dagum, L., Enon, R.: OpenMP: an industry standard API for shared-memory programming. IEEE Comput. Sci. Eng. 5(1), 46–55 (1998)CrossRefGoogle Scholar
  6. 6.
    Kluszczyński, R., Stolarek, M., Marczak, G., Górski, Ł., Nowicki, M., Bała, P.: Development of parallel codes using PL-grid infrastructure (2014)Google Scholar
  7. 7.
    MPI Forum: MPI: A message-passing interface standard. version 2.2, September 2019.
  8. 8.
    Nowicki, M., Bała, P.: Parallel computations in java with PCJ library. In: 2012 International Conference on High Performance Computing and Simulation (HPCS), pp. 381–387. IEEE (2012)Google Scholar
  9. 9.
    Nowicki, M., Mikulski, Ł., Pia̧tkowski, M., Kluszczyński, R., Bała, P.: On-line contests hosting service as a tool to teach computer science students programming (2013)Google Scholar
  10. 10.
    Streit, A., Bala, P., Beck-Ratzka, A., Benedyczak, K., Bergmann, S., Breu, R., Daivandy, J.M., Demuth, B., Eifer, A., Giesler, A., et al.: Unicore 6 recent and future advancements. annales des télécommunications 65(11–12), 757–762 (2010)CrossRefGoogle Scholar
  11. 11.
    Yang, D., Sinha, T., Adamson, D., Rose, C.P.: Turn on, tune in, drop out: anticipating student dropouts in massive open online courses. In: Proceedings of the 2013 NIPS Data-Driven Education Workshop, vol. 11, p. 14 (2013)Google Scholar
  12. 12.
    Yelick, K., Bonachea, D., Chen, W.Y., Colella, P., Datta, K., Duell, J., Graham, S.L., Hargrove, P., Hilfinger, P., Husbands, P., et al.: Productivity and performance using partitioned global address space languages. In: Proceedings of the 2007 International Workshop on Parallel Symbolic Computation, pp. 24–32. ACM (2007)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Marek Nowicki
    • 1
  • Maciej Marchwiany
    • 2
  • Maciej Szpindler
    • 2
  • Piotr Bała
    • 2
    Email author
  1. 1.Faculty of Mathematics and Computer ScienceNicolaus Copernicus UniversityToruńPoland
  2. 2.Interdisciplinary Centre for Mathematical and Computational ModellingUniversity of WarsawWarsawPoland

Personalised recommendations