Question

Où puis-je trouver des informations sur des astuces SIMD communs? J'ai un jeu d'instructions et de savoir, comment écrire du code SIMD non délicat, mais je sais, SIMD est maintenant beaucoup plus puissant. Il peut contenir un code complexe sous condition sans agence.
Par exemple (ARMv6), la séquence d'instructions suivante définit chaque octet de Rd égal au minimum unsigned des octets correspondants de Ra et Rb:

USUB8 Rd, Ra, Rb
SEL Rd, Rb, Ra

Liens vers des tutoriels / techniques hors du commun SIMD sont bonnes aussi :) ARMv6 est le plus intéressant pour moi, mais x86 (SSE, ...) / Neon (en ARMv7) / autres sont bons aussi.

Était-ce utile?

La solution

L'une des meilleures ressources SIMD a jamais été l'ancienne liste de diffusion AltiVec. Bien que PowerPC / spécifique à AltiVec Je pense que beaucoup de matériel sur cette liste serait d'intérêt général pour tous ceux qui travaillent avec d'autres architectures SIMD. Malheureusement, cette liste semble maintenant défunte après avoir été déplacé à un forum sur power.org, mais vous pouvez être en mesure de trouver les versions archivées de celui-ci. (Sinon, laissez-moi savoir - je à peu près tous les postes de 2000 - 2007.)

Il y a aussi beaucoup d'informations utiles sur potentiellement AltiVec, SSE, SIMD vectorisation et la performance en général http://developer.apple.com/hardwaredrivers/ve/index.html , une bonne affaire qui peut être transférable à d'autres architectures SIMD.

Autres conseils

Essayez projet AMD SSEPlus sur sourceforge

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top