wc

wc

Regla mnemotécnica

wcWord Count

El comando wc nos permite contar el número de palabras que contiene un fichero. Lo mejor es ilustrarlo con ejemplos:

 $ cat lista
100
101
102
103
104
105
106
107
108
109
$ wc lista
10  10  40 lista

la primera columna es el número de palabras, la segunda el número de columnas y el tercero el número de bytes.

Una opción muy práctica es

$ wc -l lista
10 lista

nos da directamente el número de líneas que hay en el fichero.

 

Acelerando la TDT con GPUs

La implementación de algoritmos que usará la futura Televisión Digital Terrestre (TDT) para su ejecución en tarjetas gráficas (GPUs) dispara su rendimiento y permite a los investigadores de la UPV/EHU investigar sobre las soluciones más adecuadas para la próxima generación de TDT.

Las señales digitales y en concreto las de TDT cuando son enviadas llevan la información redundada, duplicada en cierto grado, de tal modo que si durante la transmisión algunos bits se pierden o corrompen se puede recuperar la señal original en el dispositivo receptor. Esto se hace mediante unos códigos que procesan la señal y son capaces de detectar esos errores y corregirlos. Estos códigos han de ser por un lado rápidos en su ejecución para poder ejecutarse “al vuelo” directamente sobre la señal retransmitida y además son mejores cuanta menos información extra usen, al emplear de este modo menos ancho de banda del canal de comunicación.

Unos de estos tipos de algoritmos son los LDPC (Low Density Parity Check). Este tipo de códigos son muy intensivos desde el punto de vista computacional pero también altamente paralelizables. Aprovechando esta característica el grupo Tratamiento de la Señal y Radiocomunicaciones de la UPV/EHU ha implementado muy satisfactoriamente uno de estos códigos en OpenCL para su uso en equipos dotados de tarjetas gráficas (GPUs – Graphical Processing Units.).

CPU-GPU-benchmark

Información procesada por segundo en CPUs y GPUs.

En la Figura podemos ver la tremenda mejora en la rapidez que han obtenido en el procesamiento de las señales en diferentes dispositivos, desde CPUs pasando por tarjetas gráficas de PC  hasta las GPUs Tesla C2050 más sofisticadas para cálculo computacional. De la gráfica se puede observar en las dos primeras columnas que la aproximación de alto rendimiento LP es el doble de rápida que la aproximación de alta precisión BP de los algoritmos. El las implementaciones OpenCL para GPUs  en cambio no hay diferencias significativas en el tiempo de ejecución debido a cómo se implementan los códigos. Cuando se usan GPUs comerciales para PCs se pueden conseguir mejoras de hasta x100 y con tarjetas profesionales de cálculo se puede acelerar el cálculos hasta más de x200. En esta ocasión las tarjetas más normales de PCs son una gran alternativa pues los cálculos se realizan en precisión simple que es la precisión nativa de estas tarjetas y donde trabajan de forma óptima.

La implementación de estos códigos en OpenCL y la demostración de su viabilidad abre la posibilidad de que en un futuro estos códigos se ejecuten por software sobre procesadores genéricos en la futura TDT, una solución mucho más flexible y probablemente barata que su implementación electrónica directamente en hardware. No obstante, por ahora este software va a permitir acelerar la investigación en la TDT del futuro dado que acelera el tratamiento y análisis de las señales en el laboratorio.

 

Gracias a Daniel Ansorregui y Gorka Prieto del grupo TSR

http://www.ehu.es/tsr/

 

 

Titan, el ordenador más potente del mundo

De acuerdo a la lista top500.org de los ordenadores más potentes del mundo, a día de hoy Enero de 2013, el ordenador más potente del mundo es Titan. Este superordenador está instalado en el Oak Ridge National Laboratory (ORNL) en Tenessee. Titan es un Cray XK7 formado 299.008 núcleos [1] y 18.688 tarjetas GPGPUs aceleradoras para cálculo todo ello con una potencia teórica de 17.6 PetaFLOPS (Peta=10^15, FLoating-point Operation Per Second). Titan usa parte de la infraestructura del superordenador Jaguar que ha sido desmantelado y sustituido por Titan. Es una máquina muy especializada y con componentes específicos para supercomputación.

 

(Nota: Ya existe un nuevo ordenador más potente, puedes leer sobre Tianhe-2 en este enlace)

 

 

Titan supercomputer

Usa procesadores AMD 6274 de 16 cores y tarjetas gráficas de propósito general GPGPUs Nvidia K20 para acelerar el cálculo. Esta es una de las grandes diferencias con su predecesor en la lista Sequoia, este tenía 1.5 millones de cores y Titan tiene más potencia con 5 veces menos cores pero complementados con GPGPUs.

La interconexión entre nodos también es muy específica para que la comunicación que hay durante el cálculo no sea un cuello de botella. Usa la interconexión Cray Gemini, el producto propietario estrella de Cray.

Los nodos están refrigerados por un doble ciclo de agua y refrigerante para poder mejorar la eficiencia energética, es por ello, junto a las características del procesador y las GPGPUS y otras tecnologías, por lo que los CRAY XK7 son también superordenadores energéticamente muy eficientes, es decir, los que realizan más operaciones matemáticas por KWh. Titan está situado en tercer puesto en el gree500, la lista de superordenadores más eficientes del mundo con una marca de 2,1 GFLOPS/W, cuando un procesador de PC de gama alta ronda los 0,5 GFLOPS/W.

Cada nodo funciona con una versión pequeña de linux denominada Cray Linux Environment (CLN).

Estos grandes superordenadores están generalmente destinados a unos concretos y grandes proyectos dado que es una compleja tarea optimizar los códigos para que puedan usar eficazmente tal ingente número de cores. Junto al desarrollo de este hardware el ORNL ha seleccionado 6 códigos para su desarrollo y optimización para prepararlos para el uso eficiente de estos computadores masivamente paralelos y en los de futuras generaciones.

Datos más relevantes

Marca y modelo Cray XK7
Nº de cores 299.008 cores y 16.688 GPGPUs
Procesador AMD 6274 a 2.2 GHz
GPGPU Nvidia Kepler K20
Interconexión Cray Gemini
Sistema Operativo Compute Linux Environment (CLE)
FLOPS teóricos 27 PetaFLOPS
FLOPS limpack 17,6 PetaFLOPS
Potencia eléctrica 8,2 MW
FLOPS/W 2.1 GigaFLOPs
Refrigeración Doble ciclo de agua y refrigerante
RACKs 200

Video

En este link puede ver un video sobre Titan por el Director de Ciencia del ORNL.

Video sobre Titan

 

[1] Antiguamente los procesadores tenían un único núcleo (core) y se hablaba generalmente de procesadores. Actualmente los procesadores tienen varios núcleos y hay que diferenciar entre procesadores y núcleos (que podemos decir es lo que antes conocíamos como procesador).

 

 

 

Position open at BCAM – Basque Center for Applied Mathematics

 

BCAM – Basque Center for Applied Mathematics is an interdisciplinary research center located in Bilbao. The following BCAM Internship position is open at BCAM.

Internship data

  • Research topic title

Hybrid Monte Carlo methods

  • Research topic description

Study, implementation and testing of Monte Carlo techniques combined with classical molecular dynamics. The task will involve developing algorithms for constant pressure simulations and constant pH simulations of molecular systems. Those algorithms will then be implemented within Open Source molecular dynamics software and tested on real life applications such as protein systems.

  • Keywords

Hybrid Monte Carlo, Molecular Dynamics, Hamiltonian dynamics

  • Required knowledge and skills

Geometric integration, dynamical systems, C programming, Unix/Linux, English.

  • Duration and dates

2-3 months; between February and June

  • Application deadline

February 3, 2013

Supervisor data

  • Supervisor

Bruno Escribano

  • Research line

Mathematical Biology & Molecular Simulations

  • Email

bescribano@bcamath.org

 

How to apply

The interested applicants can apply via the following webpage:

http://www.bcamath.org/en/research/internships

 

 

 

Renovación de licencias STARCCM+ 2013 (Investigación)

El Servicio General de Informática Aplicada a la Investigación (Cálculo Científico) va a proceder a la renovación de las licencias corporativas para la UPV/EHU del programa de CFD StarCCM+ para el año 2013.

Para poder hacer una compra planificada y ajustada a las necesidades vamos a plantear dos posibilidades de uso para LICENCIAS DE INVESTIGACIÓN (para licencias de docencia y de proyectos fin de carrera mirar aquí).

Es necesario que el investigador haga una solicitud a los técnicos antes del 16 de Enero de 2013.

    1. Uso COMPARTIDO y no intenso
      • Serán para preparación y análisis de casos y pequeños cálculos, formación, test, etc.
      • Nunca para cálculo intensivo (más de una hora) y no esporádico. Para cálculo intensivo se usarán las licencias específicas de cálculo de Arina.
      • No se deberá de usar más de una licencia simultáneamente.
      • Si se planea usar StarCCM+ todos los días y varias horas todos los días deberá solicitar una licencia de uso exclusivo.
      • Al ser compartidas estarán disponibles dependiendo del uso de otros investigadores.

El Servicio adquirirá un pequeño número de licencias para uso compartido por los usuarios. Las limitaciones de estas licencias debido a su uso compartido y para no afectar a otros usuarios serán las mencionadas arriba.

  1. Uso EXCLUSIVO

Acceso/reserva exclusiva de una o varias de las licencia de StarCCM+. El investigador tiene el libre uso de la misma en la UPV/EHU. El coste de las licencias solicitadas es pagado por el investigador (beneficiándose del volumen y precio corporativo y volumen). Esta tarifa el 2012 fue de 300 € (esté año dependerá de las licencias solicitadas).

Solicitud

Sabiendo que estás serán las condiciones, y para poder comprar un número de licencias adecuado, se debe realizar una solicitud a los técnicos con una estimación de cuanto tiempo usaréis StarCCM+ durante el 2013.

Incluir en la solicitud la siguiente información:

  1. 1.- ¿Qué tipo de licencia voy a usar (compartida o exclusiva)?
    1. En caso de compartida qué uso voy a realizar de la misma (esporádico, habitual, diario, otro (indicar))
    2. En caso de uso exclusivo cuantas licencias.
  2. ¿Voy a usar el cluster de cálculo del Servicio, Arina?. En caso afirmativo, enviaré cálculos de forma esporádica, habitual, diaria, otro (indicar)
  3. Pequeño resumen (4-5 líneas) del uso que se le va a dar al programa.

 

Renovación de licencias STARCCM+ 2013 (Docencia)

El Servicio General de Informática Aplicada a la Investigación (Cálculo Científico) va a proceder a la renovación de las licencias del programa de CFD StarCCM+ para el año 2013. También podemos solicitar Licencias de docencia para asignaturas de la UPV/EHU para impartir clases y proyectos fin de carrera (para licencias para Inversigación (ver quí).

Es necesario que el docente haga una solicitud a los técnicos antes del 16 de Enero.

  1. Licencias de docencia
    Se deberá de remitir la siguiente información a los técnicos.

    • Número de alumnos.
    • Número de licencias (ordenadores en el aula).
    • Periodo y horario de las clases.
    • Nombre de la asignatura.
  2. Proyectos fin de carrera
    Se deberá de remitir la siguiente información a los técnicos.

    • Título del proyecto.
    • Periodo de realización.
    • Si hubiese colaboración con alguna empresa nombre de la misma.
    • Tras su finalización se deberá de remitir la memoria del proyecto a CD-Adapco.

 

PRACE Summer of HPC: call for applications

PRACE Summer of HPC is a summer placement programme open to undergraduate and postgraduate students at European institutions. Participants will spend two months working on projects related to PRACE technical or industrial work to produce a visualisation or video for use in outreach activities. Flights, accommodation and a stipend will be provided to successful applicants and prizes will be awarded for the best participants. The programme will run from July 1st, to August 30th 2013 and will include a kick-off training week.

Applications will open on January 25th 2013 via

www.summerofhpc.prace-ri.eu

 

PARTICIPATING IN SUMMER OF HPC

Applications are welcome from all disciplines. Previous experience in HPC is not required, as training will be provided. Some coding knowledge is a prerequisite but the most important attribute is a desire to learn, and share, more about HPC. A strong visual flair and an interest in blogging, video blogging or social media are desirable.

Curso de OpenCL

 

El CESGA, en colaboración con el Departamento de Electrónica y Sistemas de la UDC, organiza el Curso “Introducción a OpenCL”que se celebrará los próximos 17 y 18 de diciembre en Santiago de Compostela.

Información básica

Inscripción:26/09/2012-12/12/2012
Fecha de celebración del curso: 17 y 18 de diciembre del 2012.
Horario del curso: de 09:00 a 13:00.
Lugar de celebración: Sala AccessGrid, edificio CESGA, Avda. de Vigo S/N, Santiago de Compostela.
Impartido por: Basilio Fraguela (UDC).
Plazas: 15
Precio: 60€ (IVA incluido), 50% de descuento para alumnos de las Universidades Gallegas y miembros CSIC.
Más información: https://www.cesga.es/es/actuais/ver_curso/id_curso/2238

Abstract

La irrupciónen el panorama computacional de las tarjetas gráficas y de los procesadores multinúcleo junto con su integración en arquitecturas heterogéneas, ha traído consigo una gran variedad de lenguajes, librerías y entornos de distintos fabricantes orientados a la programación dos sus sistemas específicos. Esto ha dado lugar al desarrollo de aplicaciones estrechamente vinculadas a una plataforma determinada, que se ligan y restringen al uso de la misma, difícilmente reutilizables.

Como respuesta a esta situación poco deseable, se desarrolló el estándar abierto OpenCL, que define una interfaz para runtime y un lenguaje de programación genéricos válidos para cualquier sistema computacional. Así, las aplicaciones basadas en OpenCL pueden utilizarse en cualquier plataforma, desde procesadores estándar hasta tarjetas gráficas, haciendo uso de todos los recursos computacionales disponibles. Las empresas más importantes en el ámbito de la computación heterogénea no solo se han adherido a este estándar, si no que desarrollan implementaciones para sus sistemas, haciendo así efectivas las ventajas de portabilidad que proporciona.

Dado sus características y su portabilidad, el estándar abierto OpenCL se aplica en muchos campos como ingeniería, salud,edición de imágenes, efectos visuales, renderizado, visualización, tratamiento de vídeos, etc. Aprenda como aplicar estatecnología a sus aplicaciones de forma que sean portables y eficientes en cualquier plataforma.

En el curso, eminentemente práctico, se introducirán tanto el interfaz de OpenCL como las abstracciones. Se realizarán sesiones de prácticas guiadas para familiarizarse con estos conceptos y se desarrollarán aplicaciones portables sobre este entorno.

Temario

  1. Introducción
  2. Arquitectura
  3. Interfaz de librería
  4. Lenguaje de programación
  5. Optimizaciones
  6. Miscelánea

 

Sequoia, el ordenador más potente del mundo

De acuerdo a la lista top500.org de los ordenadores más potentes del mundo, a día de hoy, el ordenador más potente del mundo es Sequoia. Este superordenador está instalado en el Lawrence Livermore National Laboratory en California. Sequoia es un BlueGene/Q de IBM (la tercera generación de BuleGene) formado 1.572.864 núcleos [1] y con una potentia teórica de 20 PetaFLOPS (Peta=10^15, FLoating-point Operation Per Second). Es una máquina muy especializada y con componentes específicos para supercomputación. IBM ha situado 4 computadores BlueGene/Q entre los 10 primeros de la lista top500.org.

 

(Nota: Ya existe un nuevo ordenador más potente, puedes leer sobre Tianhe-2 aquí)

 

sequoia

The suporcomputer Sequoia.

Los procesadores son PowerPC de 64 bits pero a baja frecuencia y voltaje para reducir el consumo eléctrico y producción de calor. Cada procesador tiene 18 cores: 16 de cálculo, 1 para las tareas del sistema operativo y otro de respaldo. Cada core está dotado de unidades de procesado matemático especiales para incrementar el número de operaciones matemáticas que es capaz de realizar.

La interconexión entre nodos también es muy específica para que la comunicación que hay durante el cálculo entre el millón y medio de cores no sea un cuello de botella. Por ello, cada procesador tiene routers que le permiten comunicarse rápidamente con los otros nodos y 3 tipos diferentes de red de interconexión, que se usan según el tipo de comunicación que vaya a realizar y para la que está optimizada.

Los nodos están refrigerados por agua para poder mejorar la eficiencia energética, es por ello, junto a las características del procesador, por lo que los BlueGene/Q son también los superordenadores energéticamente más eficientes, los que realizan más operaciones matemáticas por KWh. El procesador realiza 2,1 GFLOPs/W cuando un procesador de PC de gama alta ronda los 0,5 GFLOPs/W.

Cada nodo funciona con una versión pequeña de linux denominada Conpute Node Linux (CLN).

Estos grandes superordenadores están generalmente destinados a unos concretos y grandes proyectos dado que es una compleja tarea optimizar los códigos para que puedan usar eficazmente tal ingente número de cores. En concreto el cometido fundamental de Sequoia será la ejecución de programas de dos grandes proyectos, ambos relacionados con simulación de los procesos que se dan en las explosiones nucleares. El gobierno de Estados Unidos no realiza ya ensayos nucleares subterráneos sino simulaciones computacionales.

Datos más relevantes

Marca y modelo IBM BlueGene/Q
Nº de cores 1.572.864
Procesador PowerPC A2, 1,6 GHz
Interconexión Propietaria específica
Sistema Operativo Compute Node Linux (CNL)
FLOPS teóricos 20,1 PetaFLOPs
FLOPS limpack 16,3 PetaFLOPs
Potencia eléctrica 7,89 MW
FLOPS/W 2.1 GigaFLOPs
Refrigeración Por agua
RACKs 96
Procesarores por RACK 1.024
Cores Por RACK 16.384

[1] Antiguamente los procesadores tenían un único núcleo (core) y se hablaba generalmente de procesadores. Actualmente los procesadores tienen varios núcleos y hay que diferenciar entre procesadores y núcleos (que podemos decir es lo que antes conocíamos como procesador).

 

 

El Top de los ordenadores más potentes del mundo

 

Dentro del mundo de la computación de altas prestaciones es muy conocida la lista de los 500 ordenadores más potentes del mundo, denominada Top500, que se publica en http://www.top500.org y se actualiza 2 veces al año. Ésta fue creada en 1993 con la intención de obtener estadísticas sobre los ordenadores más potentes. En realidad, podemos decir que el Top500 es la lista de los ordenadores más rápidos en ejecutar el benchmark LINPACK, un benchmark que se incluye en las librerías de álgebra lineal LINPACK. En general, en los sistemas de esta lista se toman sus molestias en optimizar el resultado del benchmark por el prestigio que supone situarse bien en la misma.

Desde su creación se observa en el Top500 que el crecimiento de la potencia de los sistemas se ha doblado aproximadamente cada 14 meses. Esto es una mejora sustancial sobre la Ley de Moore que afirma que el número de transistores en un circuito integrado se dobla cada 2 años, o la modificación de la misma que teniendo en cuenta la mejora del rendimiento de los procesadores afirma que la potencia se dobla cada 18 meses. Esto puede ser un indicador del esfuerzo extra que se hace por parte de las instituciones y fabricantes en la construcción de estas máquinas y de la creciente importancia del cálculo científico.

Top500

Evolución exponencial del rendimiento de los supercomputadores del Top500 en GFLOPS. La línea roja es el supercomputador más rápido, la amarilla el 500º y la azul la suma del rendimiento de toda la lista (Wiki Commons).

El sitio web proporciona de forma sencilla la evolución desde 1993 de diferentes parámetros asociados a la lista como número de procesadores, tipo, fabricantes, sistemas operativos y localización geográfica de los sistemas. La lista del Top500 puede usarse dentro del cálculo científico como una guía de las tendencias en supercomputación o un banco de pruebas donde se prueban tecnologías punta que podrían generalizarse más adelante. Puede ser también un reflejo sobre hechos de la informática en general o incluso la Ciencia y la tecnología, especialmente por los datos referentes a productos, fabricantes y localización geográfica de los sistemas. No obstante, son máquinas especializadas y hay que analizar las estadísticas con cierta distancia, especialmente si nos fijamos en los sistemas situados en las primeras posiciones por su carácter específico. Sobre los datos que puede reflejar estas estadísticas sirva como ejemplo que en el hemisferio sur sólo hay 10 sistemas sobre 500 (6 en Australia y Nueva Zelanda, 3 en Brasil y 1 en Sudáfrica).

En 2006 se creo green500, la lista de los 500 ordenadores más potentes por Watt consumido, es decir, si el Top500 lista los sistemas según su potencia, el número de FLOPS (FLoating-point Operations per Second), la lista green500 lista los sistemas según sus FLOPS/W. Esta lista complementaria al Top500 surgió derivada la creciente preocupación por el consumo eléctrico de estas máquinas, dado que este alto consumo es un gran problema directamente e indirectamente por los problemas de refrigeración asociados, aparte de la creciente preocupación por el cambio climático.

El ordenador más potente del mundo

Puedes leer sobre Titan aquí.