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
| v0.5.0 | ALP |[Mpam.efi](https://github.com/ARM-software/bsa-acs/tree/main/prebuilt_images/MPAM/v25.03_MPAM_0.5.0_ALP)|[MPAM system component 1.1](https://developer.arm.com/documentation/den0094/d/?lang=en)|
90
+
| v0.5.0 | ALP |[Mpam.efi](https://github.com/ARM-software/bsa-acs/tree/main/prebuilt_images/MPAM/v25.03_MPAM_0.5.0_ALP)|[MPAM system component A.a](https://developer.arm.com/documentation/ihi0099/aa/?lang=en)|
91
91
92
92
#### Reference for Build, Execution, and More
93
93
Refer to the [MPAM ACS README](docs/mpam/README.md) for detailed build steps, execution procedures, additional information, and known limitations.
# MPAM System Component Specification - Architecture Compliance Suite
3
-
4
-
## Memory System Resource Partitioning and Monitoring
5
-
**Memory System Resource Partitioning and Monitoring** (MPAM) System Component specification describes propagation of a Partition ID (PARTID) and Performance Monitoring Group (PMG) through the memory system, a framework for memory-system component (MSC) controls that partition one or more of the performance resources of the component.
6
-
7
-
For more information, download the [MPAM System Component Specification](https://developer.arm.com/documentation/ihi0099/latest/).
1
+
## Table of Contents
2
+
3
+
-[MPAM Memory System Component Specification](#mpam-memory-system-component-specification)
-[Feedback, contributions and support](#feedback-contributions-and-support)
14
+
-[License](#license)
15
+
16
+
## MPAM Memory System Component Specification
17
+
**Memory System Resource Partitioning and Monitoring (MPAM)** describes
18
+
propagation of Partition ID (PARTID) and Performance Monitoring Group (PMG)
19
+
through the memory system, along with controls that partition performance
20
+
resources of a memory-system component (MSC).
21
+
22
+
For more information, download the
23
+
[MPAM System Component Specification](https://developer.arm.com/documentation/ihi0099/aa/).
24
+
25
+
## SYS-MPAM Architecture Compliance Suite
26
+
27
+
The SYS-MPAM **Architecture Compliance Suite (ACS)** is a collection of
28
+
self-checking, portable C-based tests.
29
+
This suite provides examples of the invariant behaviors defined in the MPAM
30
+
System Component specification, enabling verification that these behaviors have
31
+
been implemented and interpreted correctly.
8
32
9
33
## Release details
10
-
- Code Quality: Alpha
11
-
- The tests are written for version A.a of the MPAM Memory System Component Specification.
12
-
- For more details on tests implemented in this release, Please refer [MPAM Test Scenario Document](arm_mpam_architecture_compliance_test_scenario.pdf).
13
-
14
-
## Downloading MPAM ACS
15
-
16
-
MPAM ACS code is present in the sysarch-acs repository.
- For details on tests implemented in this release, see the
41
+
[SYS-MPAM Test Scenario Document](arm_mpam_architecture_compliance_test_scenario.md).
24
42
25
-
ACS build requires that the following requirements are met, Please skip this if you are using [MPAM Application Build Script](../../tools/scripts/build_mpam_uefi.sh).
On an emulation environment with secondary storage, perform the following steps:
85
+
Runs at INFO level, skips tests 15/20/30, and saves the UART log to
86
+
`mpam_uefi.log`.
65
87
66
-
1. Create an image file which contains the 'Mpam.efi' file. For Example: <br/>
67
-
- mkfs.vfat -C -n HD0 hda.img 31457280 <br/>
68
-
- sudo mount hda.img /mnt/mpam <br/>
69
-
- cd /path/to/bsa-acs/workspace/output/ <br/>
70
-
- sudo cp Mpam.efi /mnt/mpam/ <br/>
71
-
- sudo umount /mnt/mpam
72
-
2. Load the image file to the secondary storage using a backdoor. The steps followed to load the image file are Emulation environment specific and beyond the scope of this document.
73
-
3. Boot the system to UEFI shell.
74
-
4. To determine the file system number of the secondary storage, execute 'map -r' command.
75
-
5. Type 'fsx' where 'x' is replaced by the number determined in step 4.
76
-
6. To start the compliance tests, run the executable Mpam.efi with the appropriate arguments.
88
+
#### Emulation environment with secondary storage
89
+
1. Create a FAT image containing `Mpam.efi`:
90
+
`mkfs.vfat -C -n HD0 hda.img 31457280`
91
+
`sudo mount hda.img /mnt/mpam`
92
+
`sudo cp <path to Mpam.efi> /mnt/mpam/`
93
+
`sudo umount /mnt/mpam`
94
+
2. Attach the image to the virtual platform or emulator using its documented
95
+
backdoor method.
96
+
3. Boot to the UEFI shell.
97
+
4. Refresh filesystem mappings with: `map -r`.
98
+
5. Switch to the assigned filesystem (`fs<x>`), then run `Mpam.efi`.
99
+
6. Capture UART console output for certification and debug reports.
77
100
78
101
## Application arguments
79
102
80
-
Command line arguments are similar for uefi application, with some exceptions.
103
+
SYS-MPAM ACS currently supports numeric test and module selectors. See the
104
+
[Common CLI arguments](../common/cli_args.md) for shared options.
If module ID(s) are set, only those modules run. For example, `-m 100` runs the
125
+
Cache module.
113
126
114
-
Runs MPAM ACS with verbosity INFO, skips test 15, 20 and 30 and saves the test results in <i>mpam_uefi.log</i>.
127
+
#### -f (UEFI only)
128
+
Save test output to a file in secondary storage. For example,
129
+
`-f mpam.log` creates `mpam.log` with test output.
115
130
116
131
## Limitations
132
+
- This is an Alpha-quality release with a limited number of tests based on the
133
+
MPAM MSC specification.
134
+
- Some tests related to MSC error handling have been verified on limited
135
+
platforms. If you encounter failures or errors during ACS runs, please raise
136
+
an issue.
137
+
- Memory Bandwidth Partitioning tests have been implemented but not yet
138
+
verified on any platform.
117
139
118
-
- Since this is a Alpha quality release, contains limited number of tests based on MPAM MSC Specification.
119
-
- Few of the tests related to Errors in MSC have been verified on limited platforms. Please reach out to us in case of any help.
120
-
- Memory Bandwidth Partitioning tests have been implemented but have not yet been verified on any platform. If you encounter any failures or errors during the ACS run, Please raise an issue.
140
+
## Feedback, contributions and support
121
141
122
-
## License
123
-
MPAM ACS is distributed under Apache v2.0 License.
0 commit comments