**Vector Length (vl)** <a name="vl" />
-The actual Vector length, the number of elements in a "Vector", vl may be set
+The actual Vector length, the number of elements in a "Vector", `SVSTATE.vl` may be set
entirely dynamically at runtime from a number of sources. `setvl` is the primary
instruction for setting Vector Length.
`setvl` is conceptually similar but different from the Cray, SX Aurora, and RISC-V RVV
where 0 <= MVL <= 127 and vlen may come from an immediate, `RA`, or from the `CTR` SPR,
depending on options selected with the `setvl` instruction.
-Programmer's Note: understanding of Cray-style Vectors is far beyond the scope
-of the Power ISA Technical Reference. Guidance on the Cray Vector paradigm is
+Programmer's Note: conceptual understanding of Cray-style Vectors is far beyond the scope
+of the Power ISA Technical Reference. Guidance on the 50-year-old Cray Vector paradigm is
best sought elsewhere: good studies include Academic Courses given on the 1970s
-Cray Supercomputers over the past 30 years.
+Cray Supercomputers over at least the past three decades.
**SUBVL - Sub Vector Length**
Elements are best though of in the context of 3D, Audio and Video: two Left and Right
Channel "elements" or four ARGB "elements", or three XYZ coordinate "elements".
-`subvl` is again primarily set by the `setvl` instruction.
+`subvl` is again primarily set by the `setvl` instruction. Not to be confused
+with `hphint`.
+
+Directly related to `subvl` is the `pack` and `unpack` Mode bits of `SVSTATE`.
+See `svstep` instruction for how to set Pack and Unpack Modes.
+
**Horizontal Parallelism**