Ir al contenido

publicidad

Foto

¿Pensáis que con 3 TeraFLOPs ya se puede considerar Home Supercomputing?


Este tema ha sido archivado. Esto significa que no puedes responder en este tema.
10 respuestas en este tema

    ZollkronV2

  • CANCELADO
  • Registrado: 05 dic 2013
  • Mensajes: 4.962
#1

Escrito 08 noviembre 2014 - 23:37

Buenas a tod@s,

 

Hace unas semanas os comentaba que me habían concedido la beca de colaboración para iniciarme en la investigación. La línea de investigación que estoy siguiendo requiere de la realización de unos cálculos muy intensivos por lo que hemos optado por realizarlos en CUDA. En casa tenía un tarjeta que se me había quedado algo pequeña la GTX 550 ti, y me he actualizado a dos GTX 760 en SLI. La cuestión es que he pasado de sólo disponer de 192 núcleos CUDA a 2304 núcleos con una capacidad de cálculo en punto flotante de simple precisión de 3 TeraFLOPs.

 

Creo que con esta máquina tendré suficiente para realizar mis pruebas y así evito llenar la cola del clúster de la facultad con trabajos pesados a cada momento. Lo que no sé yo es ya si esto se podría considerar Home Supercomputing que es un fenómeno que ha nacido con el tema de las tecnologías SLI y Crossfire para combinar la potencia de cálculo de varias GPU a un precio bastante asequible y sin necesidad de montar un clúster ¿Vosotros como lo véis?

 

El pasado Jueves me tocó exponer una presentación sobre el tema de CUDA en la asignatura de Metodología de Programación Paralela os dejo el link de la presentación por si a alguien le gusta esta temática: https://www.dropbox....tación.pdf?dl=0

 

Un saludo.

 

P.D.: Por favor, la gente a la que no le guste este tema que no se meta. No es necesario.


Daftar%2Bsitus%2Bbitcoin%2Bterbaik.jpg

Programador profesional y criptógrafo-minero-inversor en mis ratos libres.


    GabeS0uL

  • CANCELADO
  • Registrado: 14 ene 2012
  • Mensajes: 13.231
#2

Escrito 08 noviembre 2014 - 23:48

Es la primera vez que oigo hablar de Home Supercomputing pero ¿con CUDA puedes utilizar las directivas OpenMP para sacar más provecho a los núcleos? 



    Genxal

  • CANCELADO
  • Registrado: 17 jul 2011
  • Mensajes: 18.498
#3

Escrito 08 noviembre 2014 - 23:49

Yo hice un trabajillo sobre esto el cuatrimestre pasado relativamente parecido a ese que has puesto, pero lo cierto es que nunca nos han puesto a programar aún en GPUs X-D.

 

Respecto al tema principal del hilo, ni zorra de a partir de que momento podemos considerar que alguien tiene un superordenador en su propia casa.


haHtLoU.jpg


    ZollkronV2

  • CANCELADO
  • Registrado: 05 dic 2013
  • Mensajes: 4.962
#4

Escrito 09 noviembre 2014 - 00:02

Yo hice un trabajillo sobre esto el cuatrimestre pasado relativamente parecido a ese que has puesto, pero lo cierto es que nunca nos han puesto a programar aún en GPUs X-D.

 

Respecto al tema principal del hilo, ni zorra de a partir de que momento podemos considerar que alguien tiene un superordenador en su propia casa.

Es que el tema es que nosotros tenemos que trabajar con muchas matrices y vectores en QFT entonces el tema de CUDA nos viene genial para este tipo de aplicación ya que es realizar la misma operación pero con muchísimos datos. En mi caso tengo que realizar un algoritmo que calcule si dado un lazo viola o no las fronteras QFT. Por lo que todo el trabajo que pueda dividir entre los núcleos CUDA es tiempo que ganamos, ya que se supone que en un futuro se debe de llamar a mi algoritmo muchas veces por lo que deber ser rápido y eficiente.

 

El Fastra II va a 12 TeraFLOPS y ya se le considera un Home Supercomputing pero claro va 4x veces más rápido que lo que yo tengo en casa. Es una bestia parda. Como bien dices no sé exactamente donde está la frontera entre un PC Gaming al uso y un Home Supercomputing.

 

 

Es la primera vez que oigo hablar de Home Supercomputing pero ¿con CUDA puedes utilizar las directivas OpenMP para sacar más provecho a los núcleos? 

Puedes combinar OpenMP y CUDA, pero no dejas de usar OpenMP con los núcleos del Host (CPU), para tocar los núcleos del dispositivo (GPU) no tienes más remedio que crearte un Kernel y ejecutarlo dentro del mismo dispositivo. Lo que sí que puedes hacer con OpenMP es crearte varios kernels e invocarlos de forma paralela desde la CPU, por lo que ganas tiempo aprovechando el doble paralelislo CPU+GPU.

 

Un saludo.


Daftar%2Bsitus%2Bbitcoin%2Bterbaik.jpg

Programador profesional y criptógrafo-minero-inversor en mis ratos libres.


    GabeS0uL

  • CANCELADO
  • Registrado: 14 ene 2012
  • Mensajes: 13.231
#5

Escrito 09 noviembre 2014 - 00:30

Anda, yo es la primera vez que escucho eso de crearse kernels. XD 

Yo, por kernel, comprendo el núcleo de un sistema operativo ¿te creas uno nuevo, una copia del existente, o como va?



    ZollkronV2

  • CANCELADO
  • Registrado: 05 dic 2013
  • Mensajes: 4.962
#6

Escrito 09 noviembre 2014 - 00:56

Anda, yo es la primera vez que escucho eso de crearse kernels. :D

Yo, por kernel, comprendo el núcleo de un sistema operativo ¿te creas uno nuevo, una copia del existente, o como va?

No, no tiene nada que ver con el kernel de un sistema operativo. Es la forma en la que los de NVIDIA han denominado a una determinada tarea que se le encarga a un conjunto de hilos que a su vez se agrupan en un conjunto de bloques dentro de un grid. Se ve mejor con un par de imágenes:

 

Aquí se define el kernel en el código, por ejemplo, este kernel realiza la tarea de relajación de Jacobi, pero podrías crearte un kernel que hicera la suma de dos matrices, o el producto de dos vectores, en fin lo que se te ocurra.

code_03.gif

 

Luego invocarías el kernel desde la CPU para que se ejecute en la GPU

1756-0500-2-73-s2.png

 

En la invocación defines tanto el tamaño del grid (en bloques) como el tamaño del bloque (en hilos) y ya se ejecuta dentro de la GPU. Lo que te abstrae a nivel de hilo. Contando con que cada core ejecuta un hilo podrías crearte dos kernels uno para que sume dos matrices y otro para que las reste en función de los núcleos CUDA con los que cuentes y así aprovechar el paralelismo. Y ahí es donde podría entrar OpenMP.

 

Un saludo.


Daftar%2Bsitus%2Bbitcoin%2Bterbaik.jpg

Programador profesional y criptógrafo-minero-inversor en mis ratos libres.


    ZollkronV2

  • CANCELADO
  • Registrado: 05 dic 2013
  • Mensajes: 4.962
#7

Escrito 09 noviembre 2014 - 21:42

Subo el post para ya de paso preguntar si hay alguien que conozca como se comporta los AMD en este campo, tanto en CPU como en GPU. Puede que investiguemos también algo sobre OpenCL.

 

Un saludo.


Daftar%2Bsitus%2Bbitcoin%2Bterbaik.jpg

Programador profesional y criptógrafo-minero-inversor en mis ratos libres.


  • homer69

  • Ornstein y Smough

  • vida restante: 100%
  • Registrado: 28 feb 2004
  • Mensajes: 13.772
#8

Escrito 09 noviembre 2014 - 21:46

No entiendo nada, pero me gusta leeros. Os quiero tios.



#9

Escrito 09 noviembre 2014 - 22:12

Imagino que el que compre las piezas mas potentes del mercado tendrá el pc mas potente ¿no?


Sintiacutetulo-1_zps37a88ac5.jpg

Pregúntame en Ask----> http://ask.fm/Excelsiorman


  • Kilowatt

  • Cell

  • vida restante: 100%
  • Registrado: 26 ago 2010
  • Mensajes: 3.569
#10

Escrito 09 noviembre 2014 - 22:24

Conseguirias 3 TeraFLOPs en cuanto ocupes todos los cores, y los algoritmos que este computando deben cumplir unos requisitos bastante exigentes para ser tan paralelizables ¿No? No siempre puedes descomponerlos en threads concurrentes, y si puedes, para usar 1000 cores simultaneamente para el mismo set de datos...dios mio. Tampoco tengo mucha idea pero me parecen tareas muy especialitas. Tu eres el que estas puesto en esto pero creo que en ese sentido estas limitado.

 

Aun asi es una marca que ni se soñaba obtenerla en casa hace 10 años, es flipante. Sobre si es supercomputing o no....me parece muy subjetivo, principalmente porque tienes que compararlo con el resto de infraestructuras de computacion en el mundo, y tambien han avanzado lo suyo. Creo que un SLI de GTX 760 esta tan al alcance del usuario medio que no lo podria considerar supercomputing. Cualquier entusiasta triplicaria esa marca sin despeinarse, aunque luego use las tarjetas para jugar al CoD X-D

 

PD: Me he leido el power point. Es un buen resumen, gracias.


Editado por Kilowatt, 09 noviembre 2014 - 22:23 .

ta3spk.png

 


    ZollkronV2

  • CANCELADO
  • Registrado: 05 dic 2013
  • Mensajes: 4.962
#11

Escrito 09 noviembre 2014 - 22:44

Imagino que el que compre las piezas mas potentes del mercado tendrá el pc mas potente ¿no?

Hombre si sólo valoramos potencia bruta sí. Pero hoy en día se ha tomado mucha concienciación sobre el Green Supercomputing que a grosso modo se trata de conseguir la mejor relación potencia/consumo. No sólo se trata de ser el más potente sino también el más ecológico respecto al gasto energético en el que incurre la máquina. Hoy en día el primer supercomputador del Top 500, el Tianhe-2, que está en China tiene una potencia bruta de 54902,4 TFlop/s pero consume 17808,00 kW. Eso es una burrada.

 

Mi equipo es de sólo 3 TFlop/s pero consume sólo 0.85 kW. Si dividimos la potencia del Tianhe-2 entre lo que consume da 3,08 TFlops/Kw, en cuanto a mi equipo daría 3,53 TFlops/kW. Creo que el récord ahora mismo en el Green Supercomputing está en los 10 TFlops/kW y es un equipo que está en Japón. La verdad es que no sé como lo habrán hecho para conseguir semejante rendimiento con tan poco coste energético.

 

 

Conseguirias 3 TeraFLOPs en cuanto ocupes todos los cores, y los algoritmos que este computando deben cumplir unos requisitos bastante exigentes para ser tan paralelizables ¿No? No siempre puedes descomponerlos en threads concurrentes, y si puedes, para usar 1000 cores simultaneamente para el mismo set de datos...dios mio. Tampoco tengo mucha idea pero me parecen tareas muy especialitas. Tu eres el que estas puesto en esto pero creo que en ese sentido estas limitado.

 

Aun asi es una marca que ni se soñaba obtenerla en casa hace 10 años, es flipante. Sobre si es supercomputing o no....me parece muy subjetivo, principalmente porque tienes que compararlo con el resto de infraestructuras de computacion en el mundo, y tambien han avanzado lo suyo. Creo que un SLI de GTX 760 esta tan al alcance del usuario medio que no lo podria considerar supercomputing. Cualquier entusiasta triplicaria esa marca sin despeinarse, aunque luego use las tarjetas para jugar al CoD X-D

 

PD: Me he leido el power point. Es un buen resumen, gracias.

De nada, las gracias a ti por leerlo :)

 

Sí, la verdad es que hay gente con dinero que se habrá hecho un 4-way SLI con GTX-970 y luego a lo mejor sólo utilicen el equipo para jugar al COD con múltiples pantallas. Es una pena que dichos usuarios desconozcan el partido que le podrían sacar a semejante monstruo si supiesen programación y computación paralela. Hoy en día el nivel de paralelismo está avanzando más hacia las GPU, en especial las nuevas tarjetas GPGPU (General Purpose GPU) que incluyen núcleos de carácter más general "casi" igualando a los de la CPU. Aunque todavía queda camino por recorrer. Eso si los computadores cuánticos no pegan un puñetazo sobre la mesa y nos soreprenden a todos de aquí a unos años.

 

Un saludo.


Daftar%2Bsitus%2Bbitcoin%2Bterbaik.jpg

Programador profesional y criptógrafo-minero-inversor en mis ratos libres.



Este tema ha sido archivado. Esto significa que no puedes responder en este tema.
publicidad