CUDA: MODELO DE PROGRAMACIÓN
|
|
|
- Esther Rodríguez Palma
- hace 7 años
- Vistas:
Transcripción
1 CUDA: MODELO DE PROGRAMACIÓN Autor: Andrés Rondán Tema: GPUGP: nvidia CUDA.
2 Introducción En Noviembre de 2006, NVIDIA crea CUDA, una arquitectura de procesamiento paralelo de propósito general, con un nuevo modelo de programación paralela. Compute Unified Device Architecture Pequeña curva de aprendizaje. Escalable a 100s cores y a 1000s hilos paralelos. Empezó como una pequeña extensión de C, pero ya es soportada por OpenCL, Fortran...
3 Introducción
4 DEFINICIONES En el ámbito CUDA: Device = GPU Host = CPU Kernel = Función llamada desde el Host que se ejecuta en Device Array de hilos paralelos: 1 CUDA Kernel se ejecuta mediante un array de Threads. Todos los Threads ejecutan el mismo código. Cada Thread tiene un ID que se usa para direccionar la memoria y tomar las decisiones de control.
5 Jerarquía de hilos Unidad básica de operación es el thread. Los hilos están organizados en bloques de threads.(blocks) Los bloques están organizados en mallas de bloques. (Grids). Un Grid solo puede ejecutar un Kernel.
6 Jerarquía de hilos (II)
7 Jerarquía de hilos (y III) Hilos identificados mediante threadidx: vector de elementos 3D ( tiene 3 componentes, x, y y z). Cada hilo puede venir identificado por un índice 1, 2 ó 3 dimensiones. Los hilos de un bloque pueden cooperar entre sí mediante el uso de memoria compartida dentro del bloque y sincronizando su ejecución para coordinar los accesos a memoria. Los grids pueden ser de 1 o 2 dimensiones, luego cada block dentro de un grid puede ser direccionado por un índice de 1 o 2 dimensiones mediante blockidx. Asimismo, la dimensión del bloque también se puede obtener desde dentro del kernel mediante blockdim.
8 Jerarquía de memoria Cuda threads pueden acceder a los datos de múltiples espacios de memoria durante su ejecución. Cada thread posee su propia memoria local. Cada block su propia memoria compartida por todos los threads del bloque y con el mismo tiempo de vida que los threads que lo componen. Todos los hilos tienen acceso a la memoria global. Existen además otros 2 espacios de memoria adicionales de sólo lectura: constant y texture memory.
9 Jerarqía de memoria
10 Modelo Hardware
11 Cooperación CPU - GPU El modelo de programación de CUDA asume que los CUDA threads se ejecutan en un device que actúa como coprocesador de un host que ejecuta un programa. También asume que host y device poseen su propia DRAM, host memory y device memory. Cuda proporciona instrucciones para reservar, liberar, copiar memoria en la memoria del device, así como transferir datos entre el host y el device.
12 CUDA: EXTENSIÓN DE C.
13 Kernel // Kernel definition global void VecAdd(float* A, float* B, float* C) {... } int main() { // Kernel invocation VecAdd<<<1, N>>>(A, B, C); } Se define un kernel con la Primitiva global. Debe devolver void. Al invocarlo se le indica <<tamaño grid, tamaño bloque>>
14 Escalabilidad Los índices del elemento de la matriz que se va a procesar se definirán pues en función del tamaño del bloque, del id el hilo dentro del bloque actual y del tamaño del id del bloque actual. // Kernel definition global void MatAdd(float A[N][N], float B[N][N],float C[N][N]) { int i = blockidx.x * blockdim.x + threadidx.x; int j = blockidx.y * blockdim.y + threadidx.y; if (i < N && j < N) C[i][j] = A[i][j] + B[i][j]; } int main() {... // Kernel invocation dim3 dimblock(16, 16); } Cada hilo realiza la operación correspondiente. En este caso, es posible que el número de threads supere al número de elementos: controlar Se define la dimensión del Bloque. Puede ser de 1 o 2 dimensiones. Le estamos diciendo que cada bloque Va a tener 16x16=256 threads dim3 dimgrid((n + dimblock.x 1) / dimblock.x,(n + dimblock.y 1) / dimblock.y); MatAdd<<<dimGrid, dimblock>>>(a, B, C); Se define la dimensión del Grid. También puede ser de 1 o 2 y depende del tamaño del bloque y del tamaño del array.
15 Escalabilidad (II) El tamaño del block es elegido aparentemente de forma arbitraria, y el grid es creado con suficientes blocks para tener un thread por un elemento de la matriz. Todos los Threads de un block se ejecutan dentro del mismo core. El número de threads por block está limitado por los recursos de memoria del core: En la misma GPU, actualmente un block puede contener 512 threads.
16 Escalabilidad (y III) El tamaño de los datos suele ser más grande que el de los hilos: Independencia de ejecución entre bloques: debe dar igual el orden, y si se ejecutan en paralelo o en serie. Si no: syncthreads(). Blocks necearios para permitir la escalabilidad a diferentes números de core
17 Memoria CUDA asume que device y host tienen su propia memoria. En principio, device trabaja con la host memory. Para que trabaje con su propia memoria, CUDA proporciona, entre otros: cudamalloc(void **, size_t); cudamemcpy(void *,void *, size_t,cudamemcpyhosttodevice cudamemcpydevicetohost); cudafree(void *);
18 COMPILACIÓN Tenemos código que se va a ejecutar en el host y código que se va a ejecutar en el device. Nvcc se va a encargar de separarlos. Una vez separados, el código del host se compilará con su compilador habitual, pej. Cc, y el código del device lo transformará en código binario (cubin) o ensamblador (PTX) Por último, para cargarlo y ejecutarlo en el device la aplicación se ayuda de las APIS proporcinadas por los drivers de CUDA
19 Apéndice Interoperatividad con Directx y OpenGL. Versión (26/08/2009) Muy extendido: Resultados google del orden de 1 M en nvidia cuda y de 1 K en nvidia cuda programming guide. Arquitectura actual: nvidia FERMI: 512 cuda cores. 228 universidades enseñan cuda actualmente. (4 de ellas Españolas)
20 Documentación
Alejandro Molina Zarca
Compute Unified Device Architecture (CUDA) Que es CUDA? Por qué CUDA? Dónde se usa CUDA? El Modelo CUDA Escalabilidad Modelo de programación Programación Heterogenea Memoria Compartida Alejandro Molina
Introducción a Cómputo Paralelo con CUDA C/C++
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO Facultad de Ingeniería Introducción a Cómputo Paralelo con CUDA C/C++ Laboratorio de Intel y Cómputo de alto desempeño Elaboran: Revisión: Ing. Laura Sandoval Montaño
Primeros pasos con CUDA. Clase 1
Primeros pasos con CUDA Clase 1 Ejemplo: suma de vectores Comencemos con un ejemplo sencillo: suma de vectores. Sean A, B y C vectores de dimensión N, la suma se define como: C = A + B donde C i = A i
CUDA (Compute Unified Device Architecture)
CUDA (Compute Unified Device Architecture) Alvaro Cuno 23/01/2010 1 CUDA Arquitectura de computación paralela de propósito general La programación para la arquitectura CUDA puede hacerse usando lenguaje
INTRODUCCIÓN A LA PROGRAMACIÓN EN CUDA. Francisco Javier Hernández López
INTRODUCCIÓN A LA PROGRAMACIÓN EN CUDA Francisco Javier Hernández López http://www.cimat.mx/~fcoj23 Guanajuato, Gto. Noviembre de 2012 Introducción a la Programación en CUDA 2 Qué es el Cómputo Paralelo
GPU-Ejemplo CUDA. Carlos García Sánchez
Carlos García Sánchez 1 2 Contenidos Motivación GPU vs. CPU GPU vs. Vectoriales CUDA Sintaxis Ejemplo 2 3 Motivación Computación altas prestaciones: www.top500.org 1º: Titan (300mil AMD-Opteron + 19mil
Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU
Computación de Propósito General en Unidades de Procesamiento Gráfico () E. Dufrechou, P. Ezzatti, M. Pedemontey J.P. Silva Clases 4 Programación Contenido Modelo de programación Introducción Programación
CÓMPUTO DE ALTO RENDIMIENTO EN MEMORIA COMPARTIDA Y PROCESADORES GRÁFICOS
CÓMPUTO DE ALTO RENDIMIENTO EN MEMORIA COMPARTIDA Y PROCESADORES GRÁFICOS Leopoldo N. Gaxiola, Juan J. Tapia Centro de Investigación y Desarrollo de Tecnología Digital Instituto Politécnico Nacional Avenida
PROGRAMACIÓN AVANZADA DE GPUs PARA APLICACIONES CIENTÍFICAS
Grupo de Ing. Electrónica aplicada a Espacios INteligentes y TRAnsporte Área Audio-Visual PROGRAMACIÓN AVANZADA DE GPUs PARA APLICACIONES CIENTÍFICAS Torrevieja (Alicante) Del 19 al 22 de Julio Álvaro
Programación de una GPU con CUDA
Programación de una GPU con CUDA Programación de Arquitecturas Multinúcleo Universidad de Murcia. Contenidos Introducción Arquitectura y programación de CUDA Optimización y depuración de código Librerías
Introducción a la Arquitectura y Plataforma de Programación de Cómputo Paralelo CUDA (36 hrs) Instructor M. en C. Cristhian Alejandro Ávila-Sánchez
Introducción a la Arquitectura y Plataforma de Programación de Cómputo Paralelo CUDA (36 hrs) I Presentación: Instructor M. en C. Cristhian Alejandro Ávila-Sánchez CUDA (Compute Unified Device Architecture)
Arquitecturas y programación de procesadores gráficos. Nicolás Guil Mata Dpto. de Arquitectura de Computadores Universidad de Málaga
Arquitecturas y programación de procesadores gráficos Dpto. de Arquitectura de Computadores Universidad de Málaga Indice Arquitectura de las GPUs Arquitectura unificada Nvidia: GT200 Diagrama de bloques
Introducción a Cómputo Paralelo con CUDA C/C++
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO Facultad de Ingeniería Introducción a Cómputo Paralelo con CUDA C/C++ Laboratorio de Intel para la Academia y Cómputo de alto desempeño Elaboran: Revisión: Ing.
SUMA de Vectores: Hands-on
SUMA de Vectores: Hands-on Clase X http://fisica.cab.cnea.gov.ar/gpgpu/index.php/en/icnpg/clases Algunas preguntas practicas (1) Que pasa si los vectores a sumar son muy grandes? (2) Como saber en que
Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU
Computación de Propósito General en Unidades de Procesamiento Gráfico () E. Dufrechou, P. Ezzatti M. Pedemonte Práctico Programación con CUDA Práctica 0: Ejecución del ejemplo visto en teórico (suma de
DESARROLLO DE APLICACIONES EN CUDA
DESARROLLO DE APLICACIONES EN CUDA Curso 2014 / 15 Procesadores Gráficos y Aplicaciones en Tiempo Real Alberto Sánchez GMRV 2005-2015 1/30 Contenidos Introducción Debugging Profiling Streams Diseño de
CUDA Overview and Programming model
Departamento de Ciencias de la computación Universidad de Chile Modelado en 3D y sus Aplicaciones en Realidad Virtual CC68W CUDA Overview and Programming model Student: Juan Silva Professor: Dr. Wolfram
Iniciación a la Programación de GPU
Iniciación a la Programación de GPU Domingo Giménez Básicamente a partir del seminario de Juan Fernández Peinador en el curso de Computación Científica en Clusters Algoritmos y Programación Paralela, curso
INTRODUCCIÓN A LA COMPUTACIÓN PARALELA CON GPUS
INTRODUCCIÓN A LA COMPUTACIÓN PARALELA CON GPUS Sergio Orts Escolano [email protected] Vicente Morell Giménez [email protected] Universidad de Alicante Departamento de tecnología informática y computación
UNIVERSIDAD DE BURGOS Área de Tecnología Electrónica INTRODUCCIÓN A LA PROGRAMACIÓN EN CUDA
UNIVERSIDAD DE BURGOS Área de Tecnología Electrónica INTRODUCCIÓN A LA PROGRAMACIÓN EN CUDA César Represa Pérez José María Cámara Nebreda Pedro Luis Sánchez Ortega Introducción a la programación en CUDA
Librería Thrust. Clase 4. http://fisica.cab.cnea.gov.ar/gpgpu/index.php/en/icnpg/clases
Librería Thrust Clase 4 http://fisica.cab.cnea.gov.ar/gpgpu/index.php/en/icnpg/clases Hasta aquí... CUDA C/C++ Control de bajo nivel del mapeo al hardware Desarrollo de algoritmos de alta performance.
Computación en procesadores gráficos
Programación con CUDA José Antonio Martínez García Francisco M. Vázquez López Manuel Ujaldón Martínez Portada Ester Martín Garzón Universidad de Almería Arquitectura de las GPUs Contenidos Modelo de programación
PROGRAMACIÓN E IMPLEMENTACIÓN DE UN CLÚSTER
Universidad Autónoma Metropolitana Unidad Iztapalapa PROGRAMACIÓN E IMPLEMENTACIÓN DE UN CLÚSTER DE GPU'S Autores Regalado Orocio Luis Armando Bolaños Palacios Julio Cesar Asesores M. en C. Quiroz Fabián
Modelo de aplicaciones CUDA
Modelo de aplicaciones CUDA Utilización de GPGPUs: las placas gráficas se utilizan en el contexto de una CPU: host (CPU) + uno o varios device o GPUs Procesadores masivamente paralelos equipados con muchas
CUDA 5.5 y Visual Studio Express 2012 para Escritorio. Primeros pasos.
CUDA 5.5 y Visual Studio Express 2012 para Escritorio. Primeros pasos. La nueva versión de CUDA 5.5 es completamente compatible con la plataforma de desarrollo Visual Studio Express 2012 para escritorio
Introducción a GPGPU y CUDA Doctorado en Tecnologías de la Información y las Telecomunicaciones
Introducción a GPGPU y CUDA Doctorado en Tecnologías de la Información y las Telecomunicaciones ETSI Telecomunicación Universidad de Valladolid Mario Martínez-Zarzuela Febrero de 2015 Introducción CONTENIDO
reactivision en CUDA:
reactivision en CUDA: Aprovechando las capacidades de la computación paralela en GPU Daniel García Rodríguez Proyecto Final de Carrera Director: Sergi Jordà i Puig 17 de Junio de 2010 Ingeniería Informática
Arquitecturas GPU v. 2013
v. 2013 Stream Processing Similar al concepto de SIMD. Data stream procesado por kernel functions (pipelined) (no control) (local memory, no cache OJO). Data-centric model: adecuado para DSP o GPU (image,
Programando la GPU con CUDA RIO 2014 Río Cuarto (Argentina), 17 y 18 de Febrero, 2014. Agradecimientos. Prerrequisitos para este tutorial
Programando la GPU con CUDA RIO 2014 Río Cuarto (Argentina), 17 y 18 de Febrero, 2014 Manuel Ujaldon Nvidia CUDA Fellow Profesor del Dpto. de Arquitectura de Computadores. Universidad de Málaga (España).
Programando la GPU con CUDA
Programando la GPU con CUDA Curso en el Dpto. de Matemáticas e Informática. UIB. 23 al 25 de Junio, 2014. Manuel Ujaldon Nvidia CUDA Fellow Profesor Titular del Dpto. de Arquitectura de Computadores. Universidad
Computación en procesadores gráficos
Programación con CUDA Ejercicio 8 José Antonio Martínez García Francisco M. Vázquez López Manuel Ujaldón Martínez Portada Ester Martín Garzón Universidad de Almería Arquitectura de las GPUs Contenidos
Paralelización sobre GPU del Algoritmo de Eliminación de Gauss-Jordan para la Solución de Sistemas de Ecuaciones Lineales
Paralelización sobre GPU del Algoritmo de Eliminación de Gauss-Jordan para la Solución de Sistemas de Ecuaciones Lineales Edgar Quispe Ccapacca [email protected] Escuela Profesional de Ingeniería de
Sistemas Operativos. Procesos
Sistemas Operativos Procesos Agenda Proceso. Definición de proceso. Contador de programa. Memoria de los procesos. Estados de los procesos. Transiciones entre los estados. Bloque descriptor de proceso
Taller: Introducción a GPU's y Programación CUDA para HPC
Taller: Introducción a GPU's y Programación CUDA para HPC Amilcar Meneses Viveros Departamento de Computación CINVESTAV-IPN / LUFAC Computación Julio 2011 CONTENIDO I.- INTRODUCCION A GPU's Y CUDA 1.1
GPGPU Avanzado. Sistemas Complejos en Máquinas Paralelas. Esteban E. Mocskos ([email protected]) 5/6/2012
Sistemas Complejos en Máquinas Paralelas GPGPU Avanzado Esteban E. Mocskos ([email protected]) Facultad de Ciencias Exactas y Naturales, UBA CONICET 5/6/2012 E. Mocskos (UBA CONICET) GPGPU Avanzado 5/6/2012
INSTITUTO POLITÉCNICO NACIONAL OPERADORES LINEALES EN GPUS APLICADOS A LA EVALUACIÓN DE ENERGÍA POTENCIAL PARA PROTEÍNAS T E S I S
INSTITUTO POLITÉCNICO NACIONAL CENTRO DE INVESTIGACIÓN EN COMPUTACIÓN OPERADORES LINEALES EN GPUS APLICADOS A LA EVALUACIÓN DE ENERGÍA POTENCIAL PARA PROTEÍNAS T E S I S QUE PARA OBTENER EL GRADO DE MAESTRA
Universidad Complutense de Madrid FACULTAD DE INFORMÁTICA
Universidad Complutense de Madrid FACULTAD DE INFORMÁTICA INGENIERÍA EN INFORMÁTICA SISTEMAS INFORMÁTICOS ALGORITMOS PARA GRAFOS Y PROGRAMACIÓN DE PROPÓSITO GENERAL EN CUDA Ezequiel Denegri Guillermo Frontera
ALGORITMO DE CÁLCULO DE CÁPSULAS CONVEXAS
ALGORITMO DE CÁLCULO DE CÁPSULAS CONVEXAS Trabajo Final de Licenciatura en Ciencias de la Computación Universidad Nacional de Córdoba Facultad de Matemática, Astronomía y Física (Córdoba - Argentina) Autor:
Programación en Intel Xeon Phi
Programación en Intel Xeon Phi David Corbalán Navarro Máster en Nuevas Tecnologías de la Informática Índice Introducción al paralelismo Niveles de paralelismo Paradigmas de programación paralela Manycores
V. OPTIMIZACIÓN PARA COMPUTACIÓN GPU EN CUDA
V. OPTIMIZACIÓN PARA COMPUTACIÓN GPU EN CUDA La arquitectura de una GPU es básicamente distinta a la de una CPU. Las GPUs están estructuradas de manera paralela y disponen de un acceso a memoria interna
Extracción paralela de valores propios en matrices Toeplitz simétricas usando hardware gráfico
Extracción paralela de valores propios en matrices Toeplitz simétricas usando hardware gráfico Tesis de Máster en Computación Paralela y Distribuida de: Leandro Graciá Gil Dirigida por: Antonio Manuel
Introducción a la programación de códigos paralelos con CUDA y su ejecución en un GPU multi-hilos
Introducción a la programación de códigos paralelos con CUDA y su ejecución en un GPU multi-hilos Gerardo A. Laguna-Sánchez *, Mauricio Olguín-Carbajal **, Ricardo Barrón-Fernández *** Recibido: 02 de
CDI Arquitecturas que soportan la concurrencia. granularidad
granularidad Se suele distinguir concurrencia de grano fino es decir, se aprovecha de la ejecución de operaciones concurrentes a nivel del procesador (hardware) a grano grueso es decir, se aprovecha de
Introducción a OpenGL Shading Language (GLSL)
a OpenGL Shading Language (GLSL) November 20, 2007 a OpenGL Shading Language (GLSL) Fixed Pipeline Programmable Pipeline Características de GLSL Por qué escribir un Shader? Vertex Processor Fragment Processor
Bloque IV. Prácticas de programación en CUDA. David Miraut Marcos García Ricardo Suárez
Bloque IV Prácticas de programación en CUDA David Miraut Marcos García Ricardo Suárez Control de flujo Situaciones no tratadas Claves con tamaños diferentes. Cada Wrap debería acceder a claves del mismo
Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU. Clase 1 Introducción
Computación de Propósito General en Unidades de Procesamiento Gráfico () P. Ezzatti, M. Pedemontey E. Dufrechou Clase 1 Introducción Contenido Un poco de historia El pipeline gráfico Tarjetas programables
Seminario II: Introducción a la Computación GPU
Seminario II: Introducción a la Computación GPU CONTENIDO Introducción Evolución CPUs-Evolución GPUs Evolución sistemas HPC Tecnologías GPGPU Problemática: Programación paralela en clústers heterogéneos
Utilización de la programación paralela en procesadores gráficos para el cálculo científico.
Utilización de la programación paralela en procesadores gráficos para el cálculo científico. EMNO 2013 Rolando E. Rodríguez Fernández Medicina Computacional, Instituto de Nefrología. y Facultad de Física,
IMPLEMENTACIÓN Y EVALUACIÓN DE UN ALGORITMO ABC EN GPU
PONTIFICIA UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA INFORMÁTICA IMPLEMENTACIÓN Y EVALUACIÓN DE UN ALGORITMO ABC EN GPU MARIO ANDRÉS HERRERA LETELIER MARCELO ALEJANDRO
MAGMA. Matrix Algebra on GPU and Multicore Architecture. Ginés David Guerrero Hernández
PLASMA GPU MAGMA Rendimiento Trabajo Futuro MAGMA Matrix Algebra on GPU and Multicore Architecture Ginés David Guerrero Hernández [email protected] Grupo de Arquitecturas y Computación Paralela
FUNDAMENTOS DE COMPUTACIÓN PARA CIENTÍFICOS. CNCA Abril 2013
FUNDAMENTOS DE COMPUTACIÓN PARA CIENTÍFICOS CNCA Abril 2013 6. COMPUTACIÓN DE ALTO RENDIMIENTO Ricardo Román DEFINICIÓN High Performance Computing - Computación de Alto Rendimiento Técnicas, investigación
Ejemplos de optimización para Kepler. 1. Balanceo dinámico de la carga. Contenidos de la charla [18 diapositivas]
Ejemplos de optimización para Kepler Manuel Ujaldón Nvidia CUDA Fellow Dpto. Arquitectura de Computadores Universidad de Málaga Contenidos de la charla [18 diapositivas] 1. Balanceo dinámico de la carga.
Radio Observatorio de Jicamarca Instituto Geofísico del Perú
Radio Observatorio de Jicamarca Instituto Geofísico del Perú SOLUCIÓN GPU PARA LA SIMULACIÓN Y ANÁLISIS DE TRAYECTORIAS DE PARTÍCULAS EN PLASMAS IONOSFÉRICOS DANIEL SUÁREZ MUÑOZ INVESTIGACIÓN, DESARROLLO
Qué es un programa informático?
Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s
Descubriendo Kepler. 1. Presentación de la arquitectura. Agradecimientos. Indice de contenidos [46 diapositivas]
Agradecimientos Descubriendo Kepler Manuel Ujaldón Nvidia CUDA Fellow Dpto. Arquitectura de Computadores Universidad de Málaga A los ingenieros de Nvidia, por compartir ideas, material, diagramas, presentaciones,...
Hilos. Módulo 4. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco. Hilos
Hilos Módulo 4 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco Hilos Revisión Modelos Multihilados Librerías de Hilos Aspectos sobre Hilos Ejemplos
PROCESOS E HILOS - Hilo
1/6 PROCESOS E HILOS - Hilo! contexto de ejecución que se planifica de forma independiente pero que comparte un mismo espacio de direcciones con otros hilos - Proceso! conjunto de uno o más hilos y los
Computación en procesadores gráficos Programación con CUDA
Computación en procesadores gráficos Programación con CUDA José Jesús Fernández Rodriguez Ester Martín Garzón José Antonio Martínez García José Román Bilbao Castro Francisco M. Vázquez López Contenidos
CUDA + OpenGL. Alvaro Cuno 23/01/2010
CUDA + OpenGL Alvaro Cuno 23/01/2010 1 OpenGL Biblioteca gráfica escalable y multiplataforma Linux, Windows, Solaris, Amiga... Permite el desarrollo de aplicaciones interactivas 2D y 3D Provee Primitivas
Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
