Teaching Concurrency and Parallelism Concepts with CMRE

Authors

  • Laura Cristina De Giusti Institute of Research in Computer Science III -LIDI (III- LIDI) – School of Computer Science – UNLP Argentina
  • Fabiana Yael Leibovich Institute of Research in Computer Science III -LIDI (III- LIDI) – School of Computer Science – UNLP Argentina
  • Franco Chichizola Institute of Research in Computer Science III -LIDI (III- LIDI) – School of Computer Science – UNLP Argentina
  • Marcelo Naiouf Institute of Research in Computer Science III -LIDI (III- LIDI) – School of Computer Science – UNLP Argentina

Keywords:

Heterogeneous Processors, Energy Consumption, Parallel algorithms, Parallelism, Concurrency

Abstract

Possible methodologies for teaching the concepts of processor heterogeneity and its impact on speedup and efficiency in a parallel system are discussed, as well as energy efficiency of parallel algorithms based on processor power. CMRE (Concurrent Multi Robot Environment) is expanded to be able to consider different virtual clocks in each robot (processor), as well as the cost – both in relation to time and energy consumption – of the operations carried out by the robots (Move, Put Down / Pick Up / Message / Inform). In this paper, we analyze some examples to show how concepts are introduced to students.

Downloads

Download data is not yet available.

References

[1] Hoare C. “Communicating Sequential Processes”. Prentice Hall, 1985.
[2] Dijkstra E. W. “Finding the Correctness Proof of a Concurrent Program”. In Program Construction, International Summer Schoo, Friedrich L. Bauer and Manfred Broy (Eds.). Springer-Verlag, 24-34, 1978.
[3] Hansen P. B. “The Architecture of Concurrent Processes”. Prentice Hall, 1977.
[4] Dasgupta S. “Computer Architecture. A Moder Synthesis. Volume 2: Advanced Topics”. Jhon Wilet & Sons. 1989.
[5] ACM Curriculum Committee on Computer Science. “Curriculum ‘68: Recommendations for the undergraduate program in computer science”. Communications of the ACM, 11(3):151-197. 1968.
[6] ACM Curriculum Committee on Computer Science. “Curriculum ‘78: Recommendations for the undergraduate program in computer science”. Communications of the ACM, 22(3):147-166. 1979.
[7] ACM Two-Year College Education Committee. “Guidelines for associate-degree and certificate programs to support computing in a networked environment”. New York: The Association for Computing Machinery. 1999.
[8] Gepner P., Kowalik M.F. “Multi-Core Processors: New Way to Achieve High System Performance”. In: Proceeding of International Symposium on Parallel Computing in Electrical Engineering 2006 (PAR ELEC 2006). Pp. 9-13. 2006.
[9] McCool M. “Scalable Programming Models for Massively Parallel Multicores”. Proceedings of the IEEE, 96(5): 816, -831, 2008, 17, 21.
[10] Hoonlor A., Szymanski B. K., Zaki M. J., Thompson J. “An Evolution of Computer Science Research”. Communications of the ACM. 2013.
[11] ACM/IEEE-CS Joint Task Force on Computing Curricula. “Computer Science Curricula 2013”. Report from the Task Force. 2013.
[12] ACM/IEEE-CS Joint Task Force on Computing Curricula. “Computer Engineering 2004: Curriculum Guidelines for Undergraduate Degree Programs in Computer Engineering”. Report in the Computing Curricula Series. 2004.
[13] ACM/IEEE-CS Joint Interim Review Task Force. “Computer Science Curriculum 2008: An Interim Revision of CS 2001”. Report from the Interim Review Task Force. 2008.
[14] De Giusti, L., Leibovich, F., Sanchez, M., Chichizola, F., Naiouf, M., De Giusti, A. “Desafíos y herramientas para la enseñanza temprana de Concurrencia y Paralelismo”. Congreso Argentino de Ciencias de la Computación (CACIC), 2014.
[15] AMD. “Evolución de la tecnología de múltiple núcleo”.http://multicore.amd.com/es-ES/AMD-Multi-Core/resources/Technology-Evolution. 2009.
[16] De Giusti, A., De Giusti L., Leibovich, F., Sanchez, M., Rodriguez Eguren, S. “Entorno interactivo multirrobot para el aprendizaje de conceptos de Concurrencia y Paralelismo”. Congreso Tecnología en Educación, Educación en Tecnología. 2014.
[17] NodeJs API. https://nodejs.org/api/http.html
[18] Mc Cool M, “Programming models for scalable multicore programming”, 2007, http://www.hpcwire.com/features/17902939.html.
[19] Dongarra J. , Foster I., Fox G., Gropp W., Kennedy K., Torzcon L., White A. “Sourcebook of Parallel computing”. Morgan Kaufmann Publishers 2002. ISBN 1558608710.
[20] Grama A., Gupta A., Karpyis G., Kumar V. “Introduction to Parallel Computing”. Pearson – Addison Wesley 2003. ISBN: 0201648652. Second Edition (Chapter 3).
[21] Balladini J., Rucci E., De Giusti A., Naiouf M., Suppi R., Rexachs D., Luque E. “Power Characterisation of Shared-Memory HPC Systems”. Computer Science & Technology Series – XVIII Argentine Congress of Computer Science Selected Papers. Pp. 53-65. 2013.
[22] Brown D. J., “Toward Energy-Efficient Computing”, Magazine Communications of the ACM Volume 53 Issue 3, March 2010.

Downloads

Published

2016-11-01

How to Cite

De Giusti, L. C., Leibovich, F. Y., Chichizola, F., & Naiouf, M. (2016). Teaching Concurrency and Parallelism Concepts with CMRE. Journal of Computer Science and Technology, 16(02), p. 95–100. Retrieved from https://journal.info.unlp.edu.ar/JCST/article/view/495

Issue

Section

Invited Articles

Most read articles by the same author(s)

1 2 > >>