Skip to content

Commit fb56cf9

Browse files
authored
simplify README.md by foldable items
1 parent b3637b7 commit fb56cf9

1 file changed

Lines changed: 54 additions & 16 deletions

File tree

hardware/priority_core_turbo/README.md

Lines changed: 54 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ Validated platforms:
1414
- **Intel® Xeon® 6776P**
1515

1616
## How PCT Works
17-
17+
<details>
18+
<summary> PCT Details </summary>
19+
1820
PCT relies on **two Intel Speed Select features**:
1921

2022
- **SST-TF (Turbo Frequency)**
@@ -86,9 +88,13 @@ With Hyper-Threading included, this becomes:
8688
```
8789

8890
This is the default strict bucket-0 PCT placement used by the updated set script.
91+
</details>
8992

9093
## 1. Build the Environment
9194

95+
<details>
96+
<summary> Build Details </summary>
97+
9298
Export the kernel build variables first:
9399

94100
```bash
@@ -107,17 +113,28 @@ Verify `intel-speed-select` exists inside the image:
107113
docker compose run --rm intel-speed-select-shell 'which intel-speed-select && intel-speed-select --help | head'
108114
```
109115

110-
## 2. Check PCT Status (Read-Only)
116+
</details>
111117

112-
This step verifies:
118+
## 2. Check PCT Status (Read-Only)
113119

120+
<details>
121+
<summary> This step verifies: </summary>
122+
114123
- Hardware support for Intel® Speed Select features
115124
- SST-TF/PCT bucket-0 capacity
116125
- Correct package/socket-based PCT capacity counting
117126
- Core Power and CLOS enablement
118127
- Current CPU-to-CLOS mapping
119128
- Whether the current `TARGET_CLOS` CPU count matches the expected PCT logical CPU budget
120129

130+
</details>
131+
132+
Export the kernel build variables first:
133+
134+
```bash
135+
source ./set_kernel_env.sh
136+
```
137+
121138
Run:
122139

123140
```bash
@@ -126,6 +143,9 @@ docker compose --progress=plain --profile check up --abort-on-container-exit
126143

127144
Example results when PCT and CLOS are enabled successfully:
128145

146+
<details>
147+
<summary> Example results </summary>
148+
129149
```bash
130150
------------------------------------------------------------
131151
CPU and Intel Speed Select Capability
@@ -196,6 +216,8 @@ Summary
196216
Done.
197217
```
198218

219+
</details>
220+
199221
The check script writes the current target-CLOS CPU list to:
200222

201223
```text
@@ -205,10 +227,6 @@ The check script writes the current target-CLOS CPU list to:
205227
For the example above, `clos0_cpulist.txt` contains 32 logical CPUs. With
206228
Hyper-Threading enabled, that corresponds to 16 physical PCT cores.
207229

208-
> **Note:** CLOS assignment and CLOS enforcement are different. `get-assoc` may
209-
> show CPU-to-CLOS mappings even when `core-power info` reports Core Power or
210-
> CLOS disabled. For PCT benchmarking, ensure both Core Power and CLOS are enabled.
211-
212230
## 3. Set PCT (Dispatch Package-Level PCT Cores Across Powerdomain Anchors)
213231

214232
This step **activates PCT in practice** by assigning selected HP CPUs to **CLOS0**.
@@ -224,8 +242,9 @@ CPUs in CLOS0.
224242

225243
### Set-script behavior
226244

227-
The setup script performs the following actions:
228-
245+
<details>
246+
<summary> The setup script performs the following actions: </summary>
247+
229248
- Detects PCT capacity from `intel-speed-select turbo-freq info -l <TDP_LEVEL>`.
230249
- Counts `bucket-0` once per package/socket.
231250
- Derives `HP_PER_PACKAGE` from `PCT_CORES_PER_PACKAGE` unless overridden.
@@ -237,6 +256,14 @@ The setup script performs the following actions:
237256
- **Selected HP CPUs → CLOS0** by default
238257
- **All remaining CPUs → CLOS2** by default
239258

259+
</details>
260+
261+
Export the kernel build variables first:
262+
263+
```bash
264+
source ./set_kernel_env.sh
265+
```
266+
240267
Run the setup:
241268

242269
```bash
@@ -251,8 +278,9 @@ DRY_RUN=1 docker compose --progress=plain --profile set up --abort-on-container-
251278

252279
### Example: package capacity dispatched across reporting powerdomain anchors
253280

254-
Latest validated output:
255-
281+
<details>
282+
<summary> Example results </summary>
283+
256284
```bash
257285
intel-speed-select-set-1 | ------------------------------------------------------------
258286
intel-speed-select-set-1 | PCT capacity from SST-TF bucket-0
@@ -324,12 +352,9 @@ intel-speed-select-set-1 |
324352
intel-speed-select-set-1 | Done.
325353
```
326354

327-
After applying the set flow, run the check flow again:
328-
329-
```bash
330-
docker compose --progress=plain --profile check up --abort-on-container-exit
331-
```
355+
</details>
332356

357+
After applying the set flow, run the check flow again.
333358
The check output should show:
334359

335360
```text
@@ -346,6 +371,9 @@ the frequency benchmark can access host CPU frequency interfaces directly.
346371

347372
### Prerequisites
348373

374+
<details>
375+
<summary> Details </summary>
376+
349377
The host benchmark script reads the CPU list generated by the check profile:
350378

351379
```bash
@@ -370,6 +398,8 @@ which perfspect
370398
perfspect --help | head
371399
```
372400

401+
</details>
402+
373403
### Run the benchmark
374404

375405
Run the full flow:
@@ -381,6 +411,9 @@ docker compose --progress=plain --profile check up --abort-on-container-exit
381411
./run_host_perfspect_benchmark.sh
382412
```
383413

414+
<details>
415+
<summary> Details </summary>
416+
384417
Default host benchmark command:
385418

386419
```bash
@@ -393,6 +426,7 @@ Override the PerfSpect benchmark options with `PERFSPECT_ARGS`:
393426
PERFSPECT_ARGS="--speed --frequency --memory --no-summary" \
394427
./run_host_perfspect_benchmark.sh
395428
```
429+
</details>
396430

397431
### Analyze results
398432

@@ -418,6 +452,9 @@ frequency, and frequency gradually steps down as more physical cores become acti
418452

419453
## 5. Debug / Manual Inspection (Optional)
420454

455+
<details>
456+
<summary> Debug Details </summary>
457+
421458
This section is useful for **troubleshooting**, **validation**, or **manual experimentation**
422459
with Intel® Speed Select and PCT behavior.
423460

@@ -435,3 +472,4 @@ intel-speed-select turbo-freq info -l 1
435472
intel-speed-select core-power info
436473
intel-speed-select -c 0 core-power get-assoc
437474
```
475+
</details>

0 commit comments

Comments
 (0)