rCUDA

Ir a: navegación, búsqueda de
rCUDA
Desarrollador (s) G.A.P./Universidad Politécnica de Valencia, H.P.C.A/Universitat Jaume I
Versión estable 4.1 / 26 de marzo de 2014; hace 5 meses(26 / 03 / 2014)
Sistema operativo Linux
Tipo GPGPU
Licencia Propietario (Gratis para uso académico)
Sitio web rcuda.net

rCUDA es un middleware Esto le permite Computadora dispositivo arquitectura unificada CUDA comunicación remota en una red de los productos básicos. Es decir, el middleware permite una aplicación para que utilice un CUDA-compatible unidad de procesamiento gráfico (GPU) instalado en un equipo remoto como si lo fueron instalado en el equipo donde se ejecuta la aplicación. Este enfoque se basa en la observación de que GPU en un clúster no son utilizadas generalmente completamente, y se pretende reducir el número de GPU en la clúster, disminuyendo los costes relacionados con la adquisición y mantenimiento mientras que mantiene rendimiento cercano al de la configuración totalmente equipada.

Siguiendo una propuesta distribuido arquitectura de aceleración para Computación de altas prestaciones Racimos[1][2][3]con GPU conectadas sólo a algunos de sus nodos (ver figura 1), cuando un nodo sin un local GPU se ejecuta una aplicación que hace uso de una GPU para acelerar la parte de su Código (generalmente denominado núcleo), algo de apoyo tiene que ser proporcionado para lidiar con los datos y código de transferencias entre el local memoria principal y el control remoto Memoria de la GPU, así como la ejecución remota del kernel.

Figura 1

rCUDA ha sido diseñado siguiendo la cliente-servidor Arquitectura distribuida: por un lado, los clientes emplean a una biblioteca de envolturas a alto nivel Runtime CUDA API y, del otro lado, hay un Red GPU servicio de escucha de las peticiones en un Puerto TCP. La figura 1 ilustra esta propuesta, donde varios nodos corriendo diferentes Aplicaciones acelerada de la GPU simultáneamente puede hacer uso de todo el conjunto de aceleradores instalados en el clúster. Cuando una aplicación exige un servicio GPU, su solicitud se deriva al lado de nuestra arquitectura, ejecutando en el equipo cliente.

El cliente reenvía la solicitud a uno de los servidores, que accede a la GPU instalada en la computadora y ejecuta la solicitud en él. Tiempo-multiplexación (compartir) la GPU es lograda por desove diferentes proceso del servidor para cada ejecución remota en un nuevo contexto de la GPU.

rCUDA 3.1

El rCUDA marco permite el uso simultáneo de los dispositivos compatibles con CUDA remotamente.

rCUDA emplea el zócalo API para la comunicación entre clientes y servidores. Por lo tanto, puede ser útil en tres ambientes diferentes:

  • Racimos. Para reducir el número de GPUs instalado en clústeres de alto rendimiento. Esto conduce al ahorro de energía, así como otros relacionados con ahorros como los costos de adquisición, mantenimiento, espacio, refrigeración, etc..
  • Academia. En las redes de las materias primas, ofrecer acceso a unas altas prestaciones GPU simultáneamente a muchos estudiantes.
  • Máquinas virtuales. Para habilitar el acceso a las instalaciones CUDA en la máquina física.

La versión actual de rCUDA (v3.1) implementa todas las funciones de la API de Runtime CUDA versión 4.0, excluyendo la interoperabilidad de gráficos. rCUDA 3.1 objetivos los so de Linux (para arquitecturas de 32 y 64 bits) en los lados del cliente y el servidor.

En la actualidad, aplicaciones de uso rCUDA tienen que ser programado usando la API de C llano. Además host y dispositivo código necesita ser compilado por separado. Encontrar ejemplos de código en el paquete SDK rCUDA, basado en el NVIDIA CUDA SDK. La rCUDA guía del usuario en la página web rCUDA explica más.

Referencias

  1. ^ Duato, José; Igual, Francisco; Mayo, Rafael; Peña, Antonio; Quintana-Ortí, Enrique; Silla, Federico; (25 de agosto, 2009). Una eficiente implementación de virtualización GPU en clústeres de alto rendimiento. Lecture Notes in Computer Science 6043. Euro-Par 2009 – HPPC, HeteroPar, talleres de procesamiento adecuado paralelo ROIA, UNICORE, VHP, Delft, Holanda. págs. 385-394. Doi:10.1007/978-3-642-14122-5_441. ISBN978-3-642-14122-5.
  2. ^ Duato, José; Peña, Antonio; Silla, Federico; Mayo, Rafael; Quintana-Ortí, Enrique; (28 de junio, 2010). rCUDA: reducción del número de aceleradores basado en GPU en clústeres de alto rendimiento. Computación de altas prestaciones y simulación (HPCS), 2010 International Conference on, Caen, Francia. págs. 224 – 231. Doi:10.1109/HPCS.2010.5547126. ISBN978-1-4244-6827-0.
  3. ^ Duato, José; Peña, Antonio; Silla, Federico; Mayo, Rafael; Quintana-Ortí, Enrique; (13 de septiembre, 2011). Rendimiento de CUDA virtualizar GPUs remotos en clústeres de alto rendimiento. Conferencia Internacional sobre el procesamiento en paralelo (chileno), Conferencia Internacional 2011 en Taipei, Taiwán. págs. 365-374. Doi:10.1109/ICPP.2011.58. ISBN978-1-4577-1336-1.

Enlaces externos

  • sitio oficial rCUDA
  • Sitio oficial de NVIDIA CUDA
  • GPGPU.ORG rCUDA 3.1 lanzado

Otras Páginas

Obtenido de"https://en.copro.org/w/index.php?title=RCUDA&oldid=603188193"