Parcial Flashcards

1
Q

Paralelismo

A

Dos tareas que se ejecutan independientes una de la otra. No hay comunicación ni conocimiento una de la otra.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

GPU

A

Poco poder por core, son muchos
Generan mucho calor
Memoria en muchos bloques que se conecta a segmentos del core, sin RAM (en código)
Nacen para visualización 3d
Eran fijos y sin poder actualizarse
Codificar datos en imágenes que se traducían a números

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Lo que surge como forma de programar la GPU

A

Shaders

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

CUDA

A

Lenguaje unificado para programar en la GPU creado por Nvidia

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Gráficos

A

Parte de la ciencia de computación utilizada para generar y manipular imágenes. No sólo para generación en tiempo real.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Modelado

A

Abstracción y representación de opbjetos en coordenadas 3D. Da sentido a los puntos en el espacio

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Diferencia entre engine y sistema de renderizado

A

El engine es tiempo real, el sistema de renderizado no

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Lóbulo occipital

A

Se encarga del procesamiento de las imágenes que se reciben en el sistema visual

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Donde se proyecta la imagen que vemos finalmente

A

Retina

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

LLeva la imagen de la retina al lóbulo occipital

A

Nervio óptico

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Cristalino

A

Se deforma para enfocar en objetos más cercanos o más lejanos al observador

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Espectro visible

A

de 400 a 700 nM (violeta a rojo)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Conos

A

No ven en baja intensidad de luz, HD y colores
Hay menos conos que bastones, pero son más grandes y se concentran cerca del centro

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Bastones

A

Baja luz, sin colores y si hay demasiado brillo, no funcionan

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Función

A

Mapeo de datos recibiendo un valor de entrada y uno de salida

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Norma de un vector

A

Magnitud de un vector, si es 1, es un vector unitario

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Producto punto

A

Qué tan perpendiculares son dos vectores entre sí. Si es perpendicular, da 0

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Bases ortogonales

A

Tres vectores que sirven como sistema de referencia (ejes)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Línea

A

Vector que va desde un punto y en una dirección, haciéndolo crecer o decrecer y hacer negativo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Plano

A

Dos puntos y una normal que indica hacia qué lado apunta

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Sistema coordenado euclidiano

A

El sistema de ejes (x, y, z)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Producto cruz

A

multiplicación entre dos vectores que da un resultado diferente dependiendo del orden (índice por medio da pulgar)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Rotaciones de Euler

A

Naturales para el humano, se gira en cada eje. La computadora prefiere quaterniones

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Candado de Gimbal

A

Cuando se pierde un grado de libertad al rotar un eje y se pierde uno dentro de otro

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Matriz ortogonal

A

Matriz cuaya inversa es igual a su transpuesta

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Marco de referencia

A

El origen con respecto al cual se ve o mide algo en el espacio

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Coordenadas homogéneas

A

Cuarta dimensión en las operaciones, se aumenta una dimensión para hacer operaciones en conjunto y posteriormente regresar al espacio original, que es una proyección de lo que se realiza.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Transformaciones ortogonales

A

Todos los ejes son perpendiculares entre sí, se preservan ángulos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Operaciones ortonormales

A

Preservan ángulos y distancias. Ejemplo: rotaciones

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Perspectiva

A

Los objetos se hacen pequeños al añejarse del observador

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Pipeline base

A

Coordenadas del mundo-> coordenadas de la cámara-> coordenadas del plano de proyección-> coordenadas del dispositivo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Pipeline extra

A

Aplicación (preprocesamiento)-> geometría-> rasterizado

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

Versión alternativa del pipeline

A

Model y view Transform-> vertex shading-> Projection-> clipping-> Screen Mapping

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Clipping space

A

Espacio siempre visible por la cámara. Frustrum. Todas las operaciones de visualización son sólo dentro de este espacio, las físicas se realizan sean visibles o no

35
Q

Plano de proyección

A

Espacio no real frente a la cámara sobre el cual trazamos lo visto por la cámara dentro del frustrum.

36
Q

Formas de modelar

A

Polígonos
Parches bi-cúbicos
Splines
Cuerpos sólidos
Técnicas de subdivisión
Representaciones implícitas

37
Q

Polígono

A

Se genera al hacer relaciones entre vértices y aristas

38
Q

Scan conversion

A

Va línea a línea escanenando y decidiendo qué pixeles hay que rellenar como superficie dentro del triángulo

39
Q

Representaciones implícitas

A

Representar un objeto sin definir triángulos, sino que por medio de una ecuación, la primitiva es la misma figura

40
Q

Z-buffer

A

Guarda qué pixeles se dibujan por encima de otros para no sobreescribir pixeles que no son visibles

41
Q

Iluminación

A

Altamente complejo de modelar, ayuda a comprender el volumen de un objeto. Se tienen que aproximar y simplificar.

42
Q

Scattering

A

Cuando la luz entra, se dispersa, modifica y refleja dependiendo del material

43
Q

Aproximaciones de la luz

A

Eliminar dispersión
Eliminar reflexiones complejas
Modelar luces como puntos
Sólo usar el espacio RGB

44
Q

Aproximado de sombras

A

Usar la distancia con respecto al origen de la luz
Tomar en cuenta que decrece la luz
Aproximar linealmente

45
Q

Modelo de iluminación

A

Especular, difuso y ambiente

46
Q

Luz especular

A

La luz que es reflejada directamente al observador

47
Q

Luz difusa

A

Luz que de una fuente se dispersa por la superficie del objeto

48
Q

Luz ambiental

A

Lus producida por el entorno (dispersión de otos objetos)

49
Q

Phong

A

Mode lde iluminación con ambiente, difusa y especular. Ambiente da color (valor de luz por color del objeto), difusa da volumen (producto punto entre normal y rayo de luz) y especular da reflejo y brillo. No es realista, pero es fácil de implementar

50
Q

Lambert

A

Modelo de iluminación sólo con luz difusa, no depende de la perspectiva y todo se ve suavizado

51
Q

Half-lambert:

A

Modelo de iluminación con diffuse wrap, quitando valores de oscuridad para que no haya negro absoluto y nunca tener objetos no visibles y se puedan ver desde cualquier lugar

52
Q

Banded-lightning

A

Modelo de iluminación en escalones

53
Q

Mineart-lightning

A

Moon shader, bueno para objetos muy reflejantes

54
Q

Primera generación de GPU

A

<1987
Wireframe, fragmentos sobreescritos y sin iluminación, sombreado ni z-buffer

55
Q

Segunda generación de GPU

A

1987-1992
Imágenes de sólidos sombreados
Imluminación y sombras, Rastering con profundidad y mezcla de colores

56
Q

Tercera generación de GPU

A

1992-2000
Imágenes con texturas
Mapeo de texturas y fragmentos con antialiasing

57
Q

Cuarta generación de GPU

A

2000>
Posibilidad de programar la GPU en región de vértices o fragmentos
Implementa la línea de ensamblado gráfico

58
Q

Quinta generación de GPU

A

Procesamieinto en paralelo con CUDA como herramienta para programar la GPU sin necesitar de shaders

59
Q

Antialiasing

A

Evitar que los bordes sean salteados. Renderiza varias veces los bordes y luego promedia los resultados

60
Q

Texturas procedurales:

A

Generadas por algoritmos y no por una imagen

61
Q

Framebuffer simple

A

Hardware gráfico que calcula vértices y color de los pixeles

62
Q

NVIDIA

A

Empresa especializada en GPUs que nace en 1993, lanzando en 1999 los primeros productos (GeForce 256 (NV19))

63
Q

Texel

A

definición de las texturas que se usan para rellenar un triángulo con respecto a la textura

64
Q

GPU al procesar

A

Acceso restringido a la memoria, sólo accede y liberta antes y después de cálculos, nunca durante
No tiene acceso al disco

65
Q

GPU programable

A

Las GPUs mejoran x2 con cada generación, las CPU sólo x1.5

66
Q

Acelerar aplicaciones de CUDA

A

Librerías
Directivas OpenACC
Lenguajes de programación

67
Q

Visual profiler

A

Encojntrar cuellos de botella

68
Q

GPU Direct

A

Conectar dos GPUs y trabajan como una

69
Q

Thrust

A

Librería de CUDA para manejo de datos con ordenamiento, sumas y multiplicaciones de matrices

70
Q

Kernel

A

Encapsulamiento de código que se ejecuta dentro de cada núclo de GPU en cada ciclo asignado. Cada thread toma un copia del kernel para ejecutarlo de manera paralela
se declaran con __global__

71
Q

Cores

A

Organizados en exponentes de 2
Generan un thread con un copia del kernel cada vez que se le llame al core

72
Q

Thread

A

Ejecución del kernel en la GPU, cada uno con su ciclo de vida, instrucciones, etc. Hasta que se ejecuten todos, mueren los threads, aunque ya hayan terminado de ejecutarse ellos.

73
Q

Host vs Device

A

Host son las variables que se crean y existen en la CPU, Device son las variables que existen y se ejecutan en la GPU

74
Q

«<x, y»>

A

bloques, threads
Se pueden usar dim3(x,y) que dan dimensiones de los bloques y los threads, cuántos bloques por dimensón de cuántos threads en cada dirección

75
Q

Varibles que utilizar en CUDA

A

Sólo primitivos, que son valores básicos y evitar arreglos (int, float, char, uint, uchar, long)

76
Q

Mínimo de threads en cada bloque para poder optimizar en CUDA

A

Mínimo 128 threads en cada bloque (siempre mantener valores exponentes de 2)

77
Q

CudaSetDevice

A

establece la GPU en que se va a ejecutar (índice 0 si sólo hay una)

78
Q

cudaMalloc:

A

reserva memoria en device para recibir los datos con los que se van a ejecutar las operaciones

79
Q

cudaMemcpy:

A

copia la memoria de un origen a un destino y la direccipon en que se realiza (host a device, device a host, etc)

80
Q

addKernel:

A

crea un kernel con la cantidad de bloques y de thrads por bloque

81
Q

threadIdx.x:

A

Da el índice del thread que se está ejecutando en una dimensión

82
Q

cudaGetLastError

A

Obtener el último error en GPU (porque no tiene depurador) Para saber si hubo errores al ajecutar, nos enteramos al final

83
Q

cudaDeviceSynchronize:

A

espera al final de la ejecución del kernel y regresa errores de resulññtados, no de ejecucion

84
Q

cudaFree:

A

Libera la memoria del device después de terminar las operacioens