LMRE: Un entorno multiprocesador para la enseñanza de conceptos de concurrencia en un curso CS1
DOI:
https://doi.org/10.24215/18509959.0.p.%207-15Palabras clave:
Algoritmos, Concurrencia, Paralelismo, Entorno, Multirobot, Algoritmos Concurrentes y ParalelosResumen
Se presenta un entorno visual interactivo para la enseñanza de conceptos de concurrencia y paralelismo en un curso inicial de algoritmos. El entorno LMRE (Lidi MultiRobot Environment) es una evolución del Visual Da Vinci utilizado extensamente en la introducción a la programación en varias Universidades. El artículo analiza la problemática del cambio tecnológico a partir de la introducción de los procesadores de múltiples núcleos y su impacto sobre la programación y describe una definición del entorno, así como las primitivas a utilizar en la programación de aplicaciones concurrentes. Por último se detallan aspectos de implementación del prototipo actualmente en prueba, así como la evolución del mismo para ser empleado en cursos más avanzados de concurrencia.
Descargas
Citas
[2] V. Pankratius, C. Schaefer, A. Jannesari, and W. F. Tichy, “Software engineering for multicore systems: an experience report”, Proceedings of the 1st international workshop on Multicore software engineering, pp. 53–60, 2008.
[3] T. Murphy, “High-performance computing in high schools?”, IEEE Distributed Systems Online, vol. 8, no. 8, pp. 1–3, 2007.
[4] A.-C. J. C. T. Force, “Computer science curriculum 2008: An interim revision of cs 2001”, tech. rep., ACM Press, dec 2008.
[5] C. Ivica, J. T. Riley and C. Shubert, “StarHPC - Teaching Parallel Programming within Elastic Compute Cloud”, Proceedings of the ITI 2009 31st. Int. Conf. on Information Technology Interfaces, 353-356, 2009.
[6] B. Rague, “Teaching parallel thinking to the next generation of programmers”, Journal of Education, Informatics and Cybernetics, vol. 1, no. 1, pp. 43–48, 2009.
[7] T. R. Gross, “Breadth in depth: a 1st year introduction to parallel programming”, in Proceedings of the 42nd ACM technical symposium on Computer science education, pp. 435–440, 2011.
[8] A. De Giusti, “Algoritmos, datos y programas con aplicaciones en Pascal, Delphi y Visual Da Vinci”, Pearson Education and Prentice Hall, 1 ed., 2001.
[9] A. De Giusti, L. Lanzarini and M.C. Madoz, “Abstract machines in a first course of computer science”, Proceedings of 11th International Symposium “Computer at the University” – Zagreb – Yugoeslavia – Pag. 283-291 – 1990.
[10] S. Carr, J. Mayo, and C.-k. Shene, “Threadmentor: a pedagogical tool for multithreaded programming”, ACM Journal of Educational Resources, vol. 3, pp. 1–30, march 2003.
[11] H. Farian, K. M. Anne, and M. Haas, “Teaching high-performance computing in the undergraduate college cs curriculum”, Journal of Computing Sciences in Colleges, vol. 23, no. 3, pp. 135–142, 2008.
[12] C. W. Kessler, “Teaching parallel programming early”, in Proceedings of Workshop on Developing Computer Science Education: How Can It Be Done?, p. 6, March 2006.
[13] F. Leibovich, L. De Giusti, M. Naiouf, “Parallel Algorithms on Clusters of Multicores: Comparing Message Passing vs Hybrid Programming”, WorldComp‟11, Julio 2011.
Descargas
Publicado
Cómo citar
Número
Sección
Licencia
Derechos de autor y licencias
Los artículos aceptados para publicación tendrán la licencia de Creative Commons BY-NC. Los autores deben firmar un acuerdo de distribución no exclusiva después de la aceptación del artículo.