Bibliotecas Flashcards

(5 cards)

1
Q

Para qué?

A
  • Problemas muy repetidos, es interesante hacer soluciones estándares (Scan, reduce, etc)
  • Programación CUDA es compleja, requiere gran curva de aprendizaje
  • Implementaciones relativamente eficientes y genéricas que puedan ser usadas por programadores con poca experiencia
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Building blocks

A

Funciones sobre vectores o conjuntos
* Copy
* Foreach
* Transform
* Reduce
* Scan
* Sort
* Merge
* Reorder
* Search

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

Thrust

A
  • Abstrae el manejo de memoria utilizando wrappers de punteros (device, host) y contenedores (vector)
  • Al usar contenedores la reserva y liberación se hace automática (aunque es más eficiente liberar manual)
  • No se especifica configuración de ejecución
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

CUB

A
  • Ligeramente más bajo nivel que thrust
  • Manejo de memoria idéntico al de CUDA (cudaMalloc, CudaFree, punteros) y corre por el programador
  • Implementaciones más eficientes de los principales algoritmos (merge, sort, scan, reduce, etc)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

ModernGPU

A
  • Pensada para uso educacional
  • Prioriza la claridad y el reuse por sobre la eficiencia
  • No ejecuta con valores grandes
  • No es utilizada en la práctica
How well did you know this?
1
Not at all
2
3
4
5
Perfectly