domingo, 3 de junio de 2018

Aplicación de encuesta y análisis de resultados

Diseño de Encuesta
Para profundizar la investigación, nos proponen realizar una encuesta para conocer la opinión de personas sobre nuestro tema de investigación.
Este es el diseño sobre el cual me basé para realizar mis encuestas:

Encuesta sobre el tema Clúster
Buenos días, las siguientes preguntas buscan informar acerca del conocimiento general sobre el tema Clúster, responda con honestidad.
Sexo:
Edad:
1.- ¿Cuál es tu nivel de estudios?
a) Secundario            b) Preparatoria          c) Universitario o mayor
2.- ¿Sabes lo que es un Clúster?
a) Si                b) No               c) No completamente claro
3.- ¿Conoces lo que es el HPC (Procesamiento de alto rendimiento)?
a) Si                b) No               c) No completamente claro
4.- ¿Qué es el procesamiento en paralelo?
R:
5.- ¿Has tenido inconvenientes al utilizar aparatos tecnológicos debido a que trabajan muy “lento” o se “congelan”?
a) A menudo              b) No              c) En ocasiones
6.- Los inconvenientes anteriores suelen ser debidos a falta de capacidad de procesamiento, ¿Crees que existan aplicaciones que requieran mucha más capacidad de procesamiento de lo de un computador común?
a) Si                b) No
7.- ¿Te interesa el tema de procesamiento de alto rendimiento?
a) Si                b) No               c) Un poco
8.- ¿Crees que sea costoso conseguir capacidades altas de procesamiento?
a) Si                b) No
9.- ¿Conoces lugares o aplicaciones donde se necesite HPC?
a) Si                b) No
¿Cuáles? R:
10.- En México existen proyectos de Clústeres, ¿Te gustaría conocer más sobre ellos?
a) Si                b) No

Resultados de la Encuesta
Apliqué la encuesta a estudiantes y maestros del Centro Universitario de la Ciénega que se encuentra en mi localidad.



Los encuestados en su mayoría desconocían el tema Clúster y HPC



Aunque la mayoría de encuestados desconocían el tema, todos han tenido problemas de rendimiento en sus aparatos al menos en ocasiones y creen que hay aplicaciones que requieren aún más capacidad de procesamiento del común.



Los encuestados se mostraron en gran parte interesados por el tema, sin embargo, muchos desconocían sus aplicaciones.



Por último, los encuestados están interesados en conocer sobre los proyectos desarrollados en nuestro país.



Conclusión:
Como conclusión, podemos ver que los estudiantes y profesores universitarios desconocen sobre el tema, sin embargo, están interesados en él y les gustaría conocer sobre proyectos desarrollados en México.

sábado, 2 de junio de 2018

Reto "Pamela y sus amigos"

Reto. "Pamela y sus amigos"

Pamela y sus tres amigos se van a reunir el sábado en la noche para cena, cada uno hará un platillo (Rodríguez, también).

Determina el nombre completo de cada uno de los comensales, así como el tipo de comida que preparará (uno de los muchachos que irán cocinará ravioles).

1.      Fernando no llevará estofado.
2.      Como la señorita Barrios está a dieta, le dijo a Vargas que sólo podrá comer el platillo que ella misma preparará.
3.      Tina le pidió a la persona que preparará la ensalada que la hiciera de vegetales crudos porque le encantan.
4.      Diego y Ríos piensan que como la chica que va a cocina el estofado es muy delgada, será la única que podrá disfrutar libremente de todos los platillos.
5.      Rodríguez, que hará el pastel, le preguntó a Fernando y a Tina de qué sabor lo preferían.

Pool de Nombres:
Pamela, Fernando, Tina y Diego
Pool de Apellidos:
Barrios, Vargas, Ríos y Rodríguez
Pool de Comida:
Ravioles, Ensalada, Estofado, Pastel


Condiciones:
1.- Fernando NO cocino – Estofado
2.- Pamela o Tina se apellida Barrios y llevo Ensalada
3.- Tina NO llevo Ensalada
4.- Pamela o Tina NO se apellida Ríos y llevo Estofado
5.- Pamela o Diego se apellida Rodríguez y llevo Pastel

Deducciones:
1.- Como las chicas cocinaran Ensalada y Estofado (2 y 4) y Rodríguez le pregunto a Fernando sobre el sabor (5), entonces Diego Rodríguez llevara el pastel.
2.- Dada la deducción anterior, Fernando llevara los ravioles.
3.- Dado que Tina le pregunto a la chica sobre la ensalada (3), Tina cocinara estofado.
4.- Como el único nombre de chica que queda es Pamela, ella llevara la ensalada y su apellido es Barrios por la condición 2.
5.-Quedando 2 apellidos libres, Ríos y Vargas, nos dirigimos a la condición 4, donde se declara que Ríos no es quien cocina el estofado, por lo tanto, combinando esto con la deducción 3, Tina Vargas cocinara estofado, por ende, recordando la deducción 2, Fernando Ríos llevara los ravioles.

Resultados:
Diego Rodríguez llevara pastel.
Pamela Barrios llevara ensalada.
Tina Vargas cocinara estofado.
Fernando Ríos los ravioles.

viernes, 25 de mayo de 2018

Guion y Entrevista


Guion de Entrevista

Objetivo: Aprender sobre el tema de HPC y clústeres, los conceptos principales, los requisitos y las funciones o aplicaciones que tienen los susodichos.
La entrevista va dirigida a ingenieros mexicanos que elaboraron un clúster dentro de nuestro país.

1.- ¿Qué es un clúster computacional?
 
2.- ¿Qué es el HPC (High Performance Computing)?

3.- ¿Qué tipos de clúster existen?

4.- ¿Cómo funciona el procesamiento en paralelo?

5.- ¿Qué requisitos son necesarios a la hora de diseñar un clúster?

6.- ¿Qué software se utiliza?

7.- ¿Cómo está compuesto (Hardware) su clúster?

8.- ¿Qué problemas surgieron durante la elaboración del clúster?

9.- ¿Cuáles son las principales funciones que realiza?

10.- Por último, ¿Alguna recomendación para entusiasmados en el tema de HPC para realizar su propio clúster?


Basandome en el guión previo, busque proyectos de HPC realizados en México para conseguir entrevistar a alguien conocedor del tema. Mi busqueda me llevo al clúster desarrollado en el CIMAT (Centro de Investigación en Matemáticas) en Guanajuato.

Ahi logre ponerme en contacto con el Ingeniero Iván Agustín Munguía Torres, quien amablemente me presto de su tiempo para atender la entrevista.
 
  

Entrevista Aplicada

Nombre de entrevistado: Iván Agustín Munguía Torres

Función: Ingeniero colaborador del proyecto

Lugar de entrevista: Vía e-mail

Fecha de la entrevista: 25 de mayo 2018, 4:00 p.m

Objetivo: Aprender sobre el tema de HPC y clústeres, los conceptos principales, los requisitos y las funciones o aplicaciones que tienen los susodichos.
La entrevista va dirigida a ingenieros mexicanos que elaboraron un clúster dentro de nuestro país.

Presentación al Entrevistado:
¡Hola buenas tardes! 
Mi nombre es Joel y soy un aspirante a ingresar a estudios universitarios en el área de desarrollo de software y tengo un curso propedéutico donde debo realizar una investigación sobre un tema relacionado a la carrera.

Me llamó mucho la atención todo lo relacionado sobre High Performance Computing y en mi investigación, me topé con su proyecto.

Si no fuera mucha molestia, ¿podría apoyarme contestando las siguientes cuestiones?  o bien, otorgarme la oportunidad de entrevistarlo?”

Iván: Ok, excelente, y como dicen por ahí "No hay preguntas tontas". De la misma manera no hay preguntas “simples” talvez para alguien de alto nivel son simples, pero para ti son complejas, ¡entonces se vale preguntar!

Preguntas:

Yo: 1.- ¿Qué es un clúster computacional?

Entrevistado: Un Clúster es un conjunto de computadoras interconectadas, con el propósito de trabajar de manera coordinada para resolver un problema


Y: 2.- ¿Qué es el HPC (High Performance Computing)?

E: HPC = Computo de alto rendimiento, 
En el computo "standard" tu PC (Personal Computer = Computadora personal) realiza operaciones con un procesador standard (digamos un procesador de dos cores), con la memoria RAM estándar, digamos unos 4 GB de memoria RAM. 
El computo que realiza un clúster es llamado de alto rendimiento por que usa procesadores de muchos más núcleos (24, 48 núcleos, por maquina) con niveles de memoria RAM muy altos (12 GB de RAM por maquina) y además, muchas computadoras interconectadas. 
El artículo que leíste el clúster tiene un poder de computo de 216 cores, y de 455.3 GB de RAM. ¡Si revisas la lista de las 500 supercomputadoras (clústeres) más importantes del mundo, la numero uno cuenta con 10,649,600 de cores! Por eso es llamado computo de alto rendimiento HPC
Esta es la lista


Y: 3.- ¿Qué tipos de clúster existen?

E: Según la wikipedia hay 3 tipos 
·         HPCC (High Performance Computing Clusters: clústeres de alto rendimiento).
·         HA o HACC (High Availability Computing Clusters: clústeres de alta disponibilidad).
·         HT o HTCC (High Throughput Computing Clusters: clústeres de alta eficiencia).


Y: 4.- ¿Cómo funciona el procesamiento en paralelo?

E: Un programa de computadora, por ejemplo, los programas de c++ que escribes son una secuencia de instrucciones. En principio cada una de estas instrucciones se ejecuta de manera secuencial (primero una luego la siguiente, etc) El procesamiento en paralelo consiste en ejecutar múltiples instrucciones al mismo tiempo, cada una en un core del procesador, de manera que si un procesador tiene 48 cores, la ejecución del programa seria en teoría 48 veces más rápida que en un procesador con un solo core (en la práctica no es tan rápido ya que algunas instrucciones no se pueden paralelizar)


Y: 5.- ¿Qué requisitos son necesarios a la hora de diseñar un clúster?

E: La sección de Diseño de Clúster -> Consideraciones explica muy bien los requisitos.
“Este apartado es muy extenso para describir en pocas palabras, visitar link para leer las consideraciones: http://www.redalyc.org/html/416/41620956003/


Y: 6.- ¿Qué software se utiliza?

E: En principio solo necesitas un sistema operativo, y tu programa que correrás en el clúster. Sin embargo, dependiendo de las aplicaciones que quieras realizar, ya existe software comercial especializado que te ayuda con la tarea (movimiento de partículas, deformación de sólidos, transferencia de calor, simulación de choques)
Nuestro clúster como dice el artículo, tiene instalado 
Sistema operativo: Rocks Clúster Linux 5.3 (64 bits)
Compiladores: GCC 4.5.2. Soporte para C, C++, Fortran y OpenMP
Librería de manejo de mensajes: Open-MPI 1.5.3
Software de pre y post procesamiento: GiD 9.0.6


Y: 7.- ¿Cómo está compuesto (Hardware) su clúster?

E: La sección de hardware en el artículo da los detalles específicos (modelo de procesador, memoria, numero de nodos, etc)
El clúster está compuesto por 32 nodos con las siguientes características:
• Nodo Maestro:
- Procesador: AMD Quad Core Opteron 2350
HE (8 núcleos), Memoria: 12 GB, Disco Duros: SATA 250 GB,
1 TB. Ambos de 7200 revoluciones por minuto.
• 16 Nodos Esclavos:
- Procesador: 2 x AMD Quad Core Opteron 2350 HE (8 núcleos), Disco Duro: SATA 160 GB, Memoria: 12 GB con velocidad de 667Mhz.
• 15 Nodos Esclavos:
- Procesador: Intel(R) Xeon(R) CPU E5502 (4 núcleos), Disco Duro: SATA 160 GB, Memoria:
16 GB con velocidad de 1333 MHz.

El hardware adicional es el siguiente:
• Interconexión de Red
• Switch Linksys: 48 puertos, 1Gbps, modelo SLM2048. Para administración interna.
• Switch SMC: 48 puertos. 1 Gbps (red interna). Modelo SMC8150L2. Capa 2.
• Switch Linksys: 24 puertos. 1 Gbps, modelo SRW2024 (red externa).
• Sistema de energía ininterrumpida (UPS) de 30 KVA, salida senoidal, tres salidas 120 v y entrada de 220 v. El equipo trabaja a 120 v.

Recursos totales del clúster:
• Núcleos de unidades de procesamiento (cores): 216
• Capacidad en memoria: 455.3 GB
• Capacidad en disco: 5.7 TB”


Y: 8.- ¿Qué problemas surgieron durante la elaboración del clúster?

E: El gasto de energía eléctrica fue un reto (Son varias máquinas y si consumen mucha energía)
Refrigerar las maquinas apropiadamente también fue un reto. 


Y: 9.- ¿Cuáles son las principales funciones que realiza?

E: Principalmente correr experimentos de algoritmos para generación de artículos de investigación. También se utiliza para corres experimentos de las tesis de estudiantes de Licenciatura, maestría y doctorado


Y: 10.- Por último, ¿Alguna recomendación para entusiasmados en el tema de HPC para realizar su propio clúster?   

E: Yo te recomendaría comenzar con aprender computo paralelo OpenMP, cualquier PC en estos días trae más de un Core así que no necesitas nada especializado para comenzar

Si lo que quieres es aprender a configurar un clúster, podrías comenzar utilizando máquinas virtuales en virtual box. 

Si lo que quieres es físicamente armar un clúster, talvez conseguir algunas RaspberryPi para crear un clúster no tan costoso


Espero que las respuestas te sirvan Joel 

Saludos