Aceleradores orientados a software (conjunto de instrucciones)

El conjunto de instrucciones "aceleradores orientados al software" ( ing.  Application Targeted Accelerator, ATA ) es una extensión del conjunto de instrucciones destinado a reducir la latencia y reducir el consumo de energía cuando se ejecutan aplicaciones especializadas, desarrollado por Intel y utilizado en sus nuevos microprocesadores .

Los aceleradores basados ​​en software amplían las capacidades de la arquitectura Intel a través de la optimización del rendimiento, voltaje ultra bajo y aceleradores de bajo consumo dedicados directamente en el procesador diseñados para aplicaciones especiales. Los aceleradores son parte de la evolución técnica del núcleo del procesador , agregando varias mejoras especializadas al procesador, lo que da como resultado un alto rendimiento y una excelente eficiencia energética cuando se ejecutan aplicaciones especializadas.

  1. La primera parte de los aceleradores basados ​​en software acelera el procedimiento para la integridad de datos de comprobación de redundancia cíclica (CRC ) de algunas aplicaciones. Esta es una nueva instrucción CRC del procesador que permite que el procesador verifique de manera rápida y eficiente la integridad de los datos a un costo menor que el uso de chips separados en la capa superior de los protocolos de transferencia de datos , como los protocolos iSCSI y RDMA , donde la instrucción CRC solo se reproduce. el papel de un detector de errores. La ausencia de esta instrucción obligó a los proveedores de servicios a utilizar tableros aceleradores caros y de alto consumo de energía para obtener tales beneficios. La potencia de los procesadores multinúcleo de Intel basados ​​en la microarquitectura Intel Core y esta nueva instrucción de procesador CRC tiene como objetivo aumentar el rendimiento de los protocolos de red especializados como iSCSI y RDMA sin costo adicional. Esto puede facilitar la difusión de soluciones de bajo costo: redes de almacenamiento basadas en el protocolo iSCSI. Estas redes son una alternativa a los canales de fibra óptica mucho más costosos y están diseñadas para resolver varios problemas asociados con el almacenamiento de datos.
  2. La segunda parte de los aceleradores basados ​​en software consta de una única instrucción de procesador POPCNT, que se puede utilizar para realizar búsquedas eficientes en una gran cantidad de datos. Funciona contando el número de bits establecidos en el objeto de datos. Las aplicaciones de ejemplo que se beneficiarán de esta instrucción incluyen el descubrimiento del genoma, el reconocimiento de escritura a mano, la medicina y el cálculo rápido de la distancia de Hamming y el relleno.
Conjuntos de instrucciones de procesador para aceleradores orientados a software
Subgrupo instrucciones del procesador Descripción Mejoras de rendimiento esperadas
Fast CRC (comprobación de redundancia cíclica) CRC32 Encuentra el valor CRC usando la variación del código polinomial del operando de origen dado. Comprobación de integridad de datos rápida y eficiente con protocolo de transferencia de datos para aplicaciones de red
Búsqueda más rápida y reconocimiento de patrones de grandes conjuntos de datos POPCNT Cuente el número de bits con valor 1 en el operando dado. Ayuda a lograr un mayor rendimiento en aplicaciones como el descubrimiento del genoma, el reconocimiento de escritura a mano, la medicina, los algoritmos rápidos de Hammin, etc.