¿Dónde puedo encontrar información sobre los trucos comunes de SIMD? Tengo un conjunto de instrucciones y sé cómo escribir código SIMD no complicado, pero sé que SIMD ahora es mucho más poderoso. Puede contener código condicional sin sucursales.
Por ejemplo (ARMv6
), la siguiente secuencia de conjuntos de instrucciones cada byte de Rd igual al mínimo sin signo de los bytes correspondientes de Ra y Rb:Técnicas comunes de SIMD
USUB8 Rd, Ra, Rb
SEL Rd, Rb, Ra
enlaces a tutoriales/técnicas SIMD poco comunes también están bien:) ARMv6 es el más interesante para mí, pero x86 (SSE, ...)/Neon (en ARMv7)/otros son buenos también.
acordada en la página AltiVec - algunas de las secciones de "escribir código AltiVec" son muy útiles sobre las mejores prácticas de programación de vectores en general. –
Desafortunadamente, a partir de ahora esa página ahora redirecciona al Apple Advanced Conmputation Group. La página aún se encuentra en la caché de Google: http://209.85.229.132/search?q=cache:eHR6ni6SROoJ:developer.apple.com/hardware/ve/index.html+site:developer.apple.com+Velocity+Engine&cd = 1 & hl = fr & ct = clnk & gl = fr y las subpáginas no se redirigen, por lo que el contenido aún está disponible, aunque lo he archivado Just In Case (TM). –
@Pierre: es una verdadera lástima, creo que Apple siente que ya nadie se preocupa por AltiVec. Desafortunadamente, la antigua lista de correo de AltiVec también parece haber desaparecido, aparentemente se movió a power.org pero no puedo encontrarla ahora. Afortunadamente, tengo la mayoría archivada. –