You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/learning-paths/cross-platform/sme/_review.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,14 +2,14 @@
2
2
review:
3
3
- questions:
4
4
question: >
5
-
What are the supported sizes for the ZA storage in SME?
5
+
How large is the ZA storage?
6
6
answers:
7
-
- 16x16, 32x32, 64x64, 128x128, and 256x256 bits
8
-
- 16x16, 32x32, 64x64, 128x128, and 256x256 bytes
9
-
- 16x16, 32x32, 64x64, 128x128, and 256x256 floats
7
+
- (SVL/8) x (SVL/8) bits
8
+
- (SVL/8) x (SVL/8) bytes
9
+
- (SVL/8) x (SVL/8) floats
10
10
correct_answer: 2
11
11
explanation: >
12
-
The ZA storage is two-dimensional array of 8-bit elements, a power of two in the range 16 to 256 bytes.
12
+
The ZA storage is a two-dimensional array of (SVL/8) x (SVL/8) bytes. Since SVL is a power of two in the range 128 to 2048 bits, (SVL/8) will be a power of two in the range 16 to 256 bytes.
Copy file name to clipboardExpand all lines: content/learning-paths/cross-platform/sme/sme-intro.md
+12-7Lines changed: 12 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ weight: 2
6
6
layout: learningpathall
7
7
---
8
8
9
-
The [Scalable Matrix Extension](https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/scalable-matrix-extension-armv9-a-architecture) (SME) is a system solution consisting of hardware and software components to efficiently process matrices, including matrix tile storage and outer-product operations.
9
+
The [Scalable Matrix Extension](https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/scalable-matrix-extension-armv9-a-architecture) (SME) is a system solution consisting of hardware components to efficiently process matrices.
10
10
11
11
SME introduces:
12
12
* A register array storage ("ZA") capable of holding two-dimensional matrix tiles.
@@ -15,14 +15,19 @@ SME introduces:
15
15
* Instructions that transfer a vector to or from a tile row or column.
16
16
* System registers and fields that identify the presence and capabilities of SME, and enable and control its behavior at each Exception level.
17
17
18
-
The ZA storage is a two-dimensional array of SVL{{< sub "B" >}} x SVL{{< sub "B" >}} bytes, where SVL{{< sub "B" >}} is the number of 8-bit elements, a power of two in the range 16 to 256 bytes.
19
-
The ZA array can be accessed as vectors of SVL bits, with element sizes 8-bit, 16-bit, 32-bit, 64-bit, or 128-bit.
18
+
The ZA storage is a two-dimensional array of width SVL bits, and height equal to its width in bytes, in other words, (SVL / 8) rows.
19
+
SVL (the Effective Streaming SVE Vector Length) can be configured in software, and is a power of two in the range 128 to 2048 bits inclusive.
20
20
21
-
The ZA array can also be accessed as tiles. A ZA tile is a square, two-dimensional sub-array of elements within the ZA array, and can be accessed as vectors of 8-bit, 16-bit, 32-bit, 64-bit, or 128-bit elements.
22
-
A ZA tile slice is a one-dimensional set of horizontally or vertically contiguous elements within a ZA tile.
21
+
The ZA storage is accessed as tiles. A ZA tile is a square, two-dimensional sub-array of elements within the ZA array, whose elements must all be the same width, which can be 8-bit, 16-bit, 32-bit, 64-bit, or 128-bit.
23
22
24
-

23
+
The tile width is the same as the ZA storage width, which is always SVL bits. If N = SVL/8 then the ZA storage would be N rows x N bytes in size.
24
+
When accessing the tile as 16-bit halfwords, it would only be N/2 halfwords wide. Since tiles are square, it would also be N/2 rows high, and therefore there is space in the ZA storage for two such tiles.
25
+
26
+
Similarly, when accessing 32-bit elements, tiles would have height and width both equal to N/4, so there would be four such tiles in the ZA storage. This trend continues so that there would be 16 tiles of element width 128-bits.
27
+
28
+
You can read or write a ZA tile slice, which is a one-dimensional vector representing a complete row or column within a tile slice.
29
+
30
+

26
31
27
32
The Scalable Matrix Extension version 2 (SME2) extends the SME architecture to increase the number of applications that can benefit from the computational efficiency of SME, beyond its initial focus on outer products and matrix-matrix multiplication. SME2 adds:
28
33
* Data processing instructions with multi-vector operands and a multi-vector predication mechanism.
0 commit comments