Una mirada entre programación paralela y la tradicional en la práctica educativa.

Autores/as

  • Rafael Ricardo Mantilla Güiza Universitaria de Investigación y Desarrollo.

DOI:

https://doi.org/10.33304/revinv.v04n2-2014003

Palabras clave:

Programación paralela, paralelismo, multiprocesos

Resumen

En los últimos años se ha visto un gran avance en la evolución del hardware, empresas como Intel han desarrollado procesadores potentes con múltiples núcleos (core ¡3,¡5,¡7,etc.), con el fin de mejorar los tiempos de ejecución de procesos. Sin embargo el software no ha tenido el mismo crecimiento en sus lenguajes de programación, han surgido lenguajes que facilitan la programación a través de IDEs (Entornos de Desarrollo Integrados), que mejoran la interacción entre las instrucciones, sentencias, funciones, procedimientos de un programa, y en especial el entorno e interfaz del programador; pero, no en el aprovechamiento al máximo de la capacidad hardware que posee el equipo de cómputo con varios procesadores. Así surge la pregunta de investigación: ¿Cómo mejorar el rendimiento de aplicaciones desarrolladas en visual C++ aplicando técnicas de programación en paralelo con la herramienta Intel Parallel Studio XE?. El objetivo de estudio fue determinar el impacto de aplicar las técnicas de paralelismo en algoritmos de ordenamientos e instrucciones de almacenamiento implementados en el lenguaje C++ con las herramientas de Parallel Studio XE, frente a los algoritmos de ordenamiento e instrucciones de almacenamiento con técnicas de programación tradicional. El estudio es de tipo cuantitativo, con un enfoque cuasi experimental, compara dos escenarios de desarrollo. El escenario control (programación secuencial) y el escenario experimental (programación en paralelo) bajo la IDE de visual studio 2010 con su lenguaje de visual C++, incorporando librerías desarrolladas por Intel a través de su paquete Paralell Studio Xe (Padua, 2011). La programación es paralelo se usa para acelerar la resolución de problemas de alto coste computancional, que tienen por finalidad reducir los tiempos de ejecución partiendo del tiempo secuencial t(n), usando p procesadores para reducir su tiempo de ejecución así: t(n)/p. Este tiempo de ejecución depende de diversas variables: tamaño de la entrada, compilador, maquina, y el programador entre otras.

Descargas

Los datos de descargas todavía no están disponibles.

Citas

Akhter, S., & Roberts, J. (2006). Multi-Core Programming. United State of America: Intel Press.

Blair- Chappell, S., & Stokes, A. (2012). Parallel Programming with Intel Parallel Studio XE. United States of American: John Wiley & Sons.

Deitel, H., & Merrel, D. D. (2004). Cómo programar en C/C++ y Java. México: Pearson.

Foster, I. (1995). Designing and Building Parallel Programs. Chicago: Addison Wesley.

Intel. (28 de 11 de 2014). Intel Software Academic Program. Obtenido de Intel Software Academic Program: http://software.intel.com/en-us/courseware/hpc. Visitado el 30 de noviembre del 2014.

Padua, D. (2011). Encyclopedia of Parallel Computing. United State of America: Springer Science & Business Media.

Reinders, J. (2005). VTune Performance Analyzer Essentials: Measurement and Tuning Techniques for Software Developers. United States of American: Intel Press.

Supalov, A., Semin, A., Dahnken, C., & Klemm, M. (2014). Optimizing HPC Applications with Cluster Tools. United States of American: Apress.

Descargas

Publicado

2014-12-31

Cómo citar

Mantilla Güiza, R. R. (2014). Una mirada entre programación paralela y la tradicional en la práctica educativa. I+D Revista De Investigaciones, 4(2), 23–33. https://doi.org/10.33304/revinv.v04n2-2014003

Número

Sección

Articulos-V4