Intel Intrinsics ist eigentlich nur eine Bibliothek, die C-Programmierern den Zugriff auf eine Reihe von Intel-Befehlssätzen wie SSE (Streaming SIMD Extensions), AVX usw. erleichtert. Das Ziel besteht darin, diese Befehlssätze für die Parallelisierung usw. verwenden zu können, ohne dass die Montage auf niedriger Ebene von Hand programmiert werden muss.
Die ARM-Plattform verfügt über ähnliche Befehlssätze, die vielen der gleichen Zwecke dienen. Zum Beispiel ist NEON die ARM-Alternative zu SSE unter Intel. NEON gibt Ihnen SIMD-Anweisungen, mit denen Sie die Parallelisierung erhöhen können.
Und ähnlich wie bei Intel Intrinsics haben Sie den ARM Compiler Intrinsics, der denselben Zweck erfüllt. Sie können "arm_neon.h" in Ihr C-Programm aufnehmen, um NEON-Anweisungen mit einer C-Schnittstelle verwenden zu können, ohne auf Assembler-Programmierung auf niedriger Ebene zurückgreifen zu müssen.
Es ist jedoch anzumerken, dass die auf Intel und ARM verfügbaren Anweisungen nicht identisch sind. Ähnlich wie bei "normalen Programmen" können Sie SIMD-Anweisungen für Intel auf ARM nicht direkt verwenden (oder umgekehrt). In der Praxis verwenden Softwareprogrammierer häufig Softwarebibliotheken mit vorgefertigten Operationen auf höherer Ebene, die sowohl Intel-Anweisungen als auch ARM-Anweisungen nutzen können. Ein gutes Beispiel ist die Bildverarbeitungsbibliothek "Simd" ( https://github.com/ermig1979/Simd), die Operationen auf hoher Ebene mit separaten, optimierten Implementierungen für SSE, AVX, VMX, VSX bietet und NEON (dh Intel, PowerPC und ARM).
Soweit ich sehen kann, ist das Wachstum der neuen Parallisierungsfunktionen sowohl auf Intel- als auch auf ARM-Plattformen sehr hoch. Dies ist für die Bereitstellung der Leistung der nächsten Generation für einige Benutzer von entscheidender Bedeutung.Auf neueren ARM-Chips haben Sie beispielsweise Zugriff auf den SVE-Befehlssatz (Scalable Vector Extensions, ein wesentlich besserer SIMD-Befehlssatz für 64-Bit-ARM-Prozessoren).Weder für die Intel- noch für die ARM-Plattform gibt es einen inhärenten Vorteil hinsichtlich der Bereitstellung neuer und erweiterter SIMD-Befehlssätze für Programmierer in der Zukunft.
Apples eigene Prozessoren (z. B. iPhones und iPads) verfügen seit vielen Jahren über den NEON-Befehlssatz.Bei den A5-CPUs und höher ist auch Advanced NEON eingestellt.Die neueren A11-CPUs verfügen über die SVE-Anweisungen, und die neuesten A12-CPUs bieten darüber hinaus SIMD-Unterstützung für komplexe Zahlen.