Difference between revisions of "Power ISA/Vector Operations"

From RCS Wiki
Jump to navigation Jump to search
(→‎External Links: Power10 MMA)
Line 20: Line 20:
 
* Ruzhu Chen. [https://developer.ibm.com/learningpaths/port-your-app-to-lop/migrate-app-on-lop/ Linux on IBM Power Systems application porting and tuning guide]. Published September 27, 2020
 
* Ruzhu Chen. [https://developer.ibm.com/learningpaths/port-your-app-to-lop/migrate-app-on-lop/ Linux on IBM Power Systems application porting and tuning guide]. Published September 27, 2020
 
* OpenPOWER. [https://openpowerfoundation.org/compliance/vectorintrinsicprogrammingreference/ Vector Intrinsic Programming Reference Compliance Specification]. Published March 28, 2021
 
* OpenPOWER. [https://openpowerfoundation.org/compliance/vectorintrinsicprogrammingreference/ Vector Intrinsic Programming Reference Compliance Specification]. Published March 28, 2021
 +
* José E. Moreira. [https://arxiv.org/abs/2104.03142 A matrix math facility for Power ISA(TM) processors]. Published April 7, 2021
 +
* José E. Moreira. [https://www.redbooks.ibm.com/Redbooks.nsf/RedpieceAbstracts/redp5612.html Matrix-Multiply Assist Best Practices Guide]. Published April 15, 2021
 +
* Sridhar Venkat. [https://community.ibm.com/community/user/powerdeveloper/blogs/sridhar-venkat1/2022/08/29/power10-mma MMA in IBM Power10 processor]. Published August 29, 2022
  
 
== Github / Gitlab pages ==
 
== Github / Gitlab pages ==

Revision as of 15:48, 16 June 2023

The Power Architecture ISA includes a specification of vector or SIMD operations. Prior to the Power ISA, i.e. PowerPC, some of these operations were available, but defined in an external standard, called Altivec by Freescale (Motorola spin-off), Vector Multimedia Extension (VMX) by IBM, and Velocity Engine by Apple.

The Vector operations are classified as Vector Facility and Vector Scalar Extension (VSX) in current versions of the Power ISA.

Power ISA v2.07 still refers to some instructions as VMX in its summary of changes since the previous version, but the rest of the document avoids mentioning VMX completely.

Power ISA v3.0 no longer mentions VMX at all.

According to File:POWER9-Features-and-Specifications.pdf page 7, the Vector Scalar Unit (VSU)'s 128-bit hardware is dedicated per super-slice (2 threads). This may indicate that trying to aggressively use 128-bit VSX instructions in two threads that use the same super-slice will be inefficient. It is possible that clever usage of taskset may improve this situation.

External Links

Github / Gitlab pages