Skip to content

Commit 02ce44c

Browse files
committed
Doc: Style and grammar edits to GSG for ACRN Industry Scenario.
Signed-off-by: Deb Taylor <deb.taylor@intel.com>
1 parent e8512bf commit 02ce44c

File tree

1 file changed

+30
-52
lines changed

1 file changed

+30
-52
lines changed

doc/getting-started/rt_industry.rst

Lines changed: 30 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,8 @@ for the RTVM.
2020
- Intel Kaby Lake (aka KBL) NUC platform with two disks inside
2121
(refer to :ref:`the tables <hardware_setup>` for detailed information).
2222
- If you need to enable the serial port on KBL NUC, navigate to the
23-
:ref:`troubleshooting <connect_serial_port>` to prepare the cable.
24-
- Follow below steps to install Clear Linux OS (Ver: 31670) onto the SATA disk
25-
of the KBL NUC(Here we install Clear linux with version 31670 and then the
26-
subsequent ACRN quick setup script will upgrade Clear linux to version 32030):
23+
:ref:`troubleshooting section <connect_serial_port>` that discusses how to prepare the cable.
24+
- Follow the below steps to install Clear Linux OS (version 31670) onto the SATA disk of the KBL NUC. In the example below, we will install Clear Linux with version 31670 and then follow the subsequent ACRN quick setup script which will upgrade Clear Linux to version 32030:
2725

2826
.. _Clear Linux OS Server image:
2927
https://download.clearlinux.org/releases/31670/clear/clear-31670-live-server.iso
@@ -69,11 +67,10 @@ for the RTVM.
6967
#. Select :kbd:`Install`.
7068
#. Select :kbd:`Confirm Install` in the :kbd:`Confirm Installation` window to start the installation.
7169

72-
.. _step-by-step instruction:
70+
.. _step-by-step instructions:
7371
https://docs.01.org/clearlinux/latest/get-started/bare-metal-install-server.html
7472

75-
.. note:: Refer to the `step-by-step instruction`_ for detailed instructions from the Clear Linux OS
76-
installation guide.
73+
.. note:: Refer to these `step-by-step instructions`_ from the Clear Linux OS installation guide.
7774

7875
.. _hardware_setup:
7976

@@ -99,7 +96,7 @@ Hardware Setup
9996
+----------------------+-------------------+----------------------+-----------------------------------------------------------+
10097

10198
.. [1] The maximum supported memory size for ACRN is 16GB. If you are using
102-
32GB memory, follow the :ref:`config_32GB_memory` instruction to make
99+
32GB memory, follow the :ref:`config_32GB_memory` instructions to make
103100
a customized ACRN hypervisor that can support 32GB memory. For more
104101
detailed information about how to build ACRN
105102
from the source code, refer to this :ref:`guide <getting-started-building>`.
@@ -135,9 +132,7 @@ Use the pre-installed industry ACRN hypervisor
135132
136133
# ./acrn_quick_setup.sh -s 32030 -d -i
137134
138-
.. note:: ``-i`` option means the industry scenario efi image will be used, e.g.
139-
``acrn.nuc7i7dnb.industry.efi``. For the detailed usage of the ``acrn_quick_setup.sh`` script,
140-
move to this :ref:`quick setup ACRN guide <quick-setup-guide>` or just type ``./acrn_quick_setup.sh -h``.
135+
.. note:: ``-i`` option means the industry scenario efi image will be used, e.g. ``acrn.nuc7i7dnb.industry.efi``. For the detailed usage of the ``acrn_quick_setup.sh`` script, refer to the :ref:`quick setup ACRN guide <quick-setup-guide>` or simply type ``./acrn_quick_setup.sh -h``.
141136

142137
#. Use ``efibootmgr -v`` command to check the ACRN boot order:
143138

@@ -159,16 +154,14 @@ Use the pre-installed industry ACRN hypervisor
159154
Boot000D* INTEL SSDPEKKW256G8 : PART 0 : Boot Drive BBS(HD,,0x0)..BO
160155
Boot000E* UEFI : INTEL SSDPEKKW256G8 : PART 0 : OS Bootloader PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)/HD(1,GPT,8aa992f8-8149-4f6b-8b64-503998c776c1,0x800,0x47000)..BO
161156
162-
.. note:: Ensure the ACRN is first in the boot order, or you may use ``efibootmgr -o 1`` command to move it
163-
to the first position.
164-
165-
.. note:: If you need to enable the serial port, run the following command before reboot:
157+
.. note:: Ensure that ACRN is first in the boot order, or you may use ``efibootmgr -o 1`` command to move it
158+
to the first position. If you need to enable the serial port, run the following command before rebooting:
166159

167160
``efibootmgr -c -l '\EFI\acrn\acrn.efi' -d /dev/sda -p 1 -L ACRN -u "uart=port@0x3f8"``
168161

169162
#. Reboot KBL NUC.
170163

171-
#. Use ``dmesg`` command to ensure the Service VM boots:
164+
#. Use the ``dmesg`` command to ensure that the Service VM boots:
172165

173166
.. code-block:: console
174167
:emphasize-lines: 2
@@ -202,7 +195,7 @@ Use the ACRN industry out-of-the-box image
202195
# dd if=sos-industry-32030.img of=/dev/sda bs=4M oflag=sync status=progress
203196

204197
#. Configure the EFI firmware to boot the ACRN hypervisor by default:
205-
198+
206199
::
207200

208201
# efibootmgr -c -l "\EFI\acrn\acrn.efi" -d /dev/sda -p 1 -L "ACRN" -u "uart=disabled"
@@ -221,7 +214,7 @@ Use the ACRN industry out-of-the-box image
221214
Install and launch the Preempt-RT VM
222215
************************************
223216

224-
#. Log in Service VM as root privileges.
217+
#. Log in to the Service VM with root privileges.
225218

226219
#. Download the Preempt-RT VM image::
227220

@@ -279,10 +272,10 @@ Install and launch the Preempt-RT VM
279272
$pm_channel $pm_by_vuart \
280273
--ovmf /usr/share/acrn/bios/OVMF.fd \
281274
hard_rtvm
282-
275+
283276
}
284277
285-
#. Upon deployment completion, launch the RTVM directly on your KBL NUC::
278+
#. Upon deployment completion, launch the RTVM directly onto your KBL NUC::
286279

287280
# /usr/share/acrn/samples/nuc/launch_hard_rt_vm.sh
288281

@@ -294,14 +287,7 @@ RT Performance Test
294287
Cyclictest introduction
295288
=======================
296289

297-
The cyclictest is most commonly used for benchmarking RT systems. It is one of the
298-
most frequently used tools for evaluating the relative performance of real-time
299-
systems. Cyclictest accurately and repeatedly measures the difference between a
300-
thread's intended wake-up time and the time at which it actually wakes up in order
301-
to provide statistics about the system's latencies. It can measure latencies in
302-
real-time systems that are caused by hardware, firmware, and the operating system.
303-
The cyclictest is currently maintained by Linux Foundation and is part of the test
304-
suite rt-tests.
290+
The cyclictest is most commonly used for benchmarking RT systems. It is one of the most frequently used tools for evaluating the relative performance of real-time systems. Cyclictest accurately and repeatedly measures the difference between a thread's intended wake-up time and the time at which it actually wakes up in order to provide statistics about the system's latencies. It can measure latencies in real-time systems that are caused by hardware, firmware, and the operating system. The cyclictest is currently maintained by Linux Foundation and is part of the test suite rt-tests.
305291

306292
Pre-Configurations
307293
==================
@@ -341,20 +327,17 @@ Recommended BIOS settings
341327
"ACPI S3 Support", "Intel Advanced Menu -> ACPI Settings", "Disabled"
342328
"Native ASPM", "Intel Advanced Menu -> ACPI Settings", "Disabled"
343329

344-
.. note:: The BIOS settings depend on the platform and BIOS version; some may not be applicable.
330+
.. note:: BIOS settings depend on the platform and BIOS version; some may not be applicable.
345331

346332
Configure CAT
347333
-------------
348334

349335
.. _Apollo Lake NUC:
350336
https://www.intel.com/content/www/us/en/products/boards-kits/nuc/kits/nuc6cayh.html
351337

352-
.. note:: CAT configuration is only supported on `Apollo Lake NUC`_.
338+
.. note:: CAT configuration is only supported on the `Apollo Lake NUC`_.
353339

354-
With the ACRN Hypervisor shell, we can use ``cpuid`` and ``wrmsr``/``rdmsr`` debug
355-
commands to enumerate the CAT capability and set the CAT configuration without rebuilding binaries.
356-
Because ``lapic`` is a pass-through to the RTVM, the CAT configuration must be
357-
set before launching the RTVM.
340+
With the ACRN Hypervisor shell, we can use ``cpuid`` and ``wrmsr``/``rdmsr`` debug commands to enumerate the CAT capability and set the CAT configuration without rebuilding binaries. Because ``lapic`` is a pass-through to the RTVM, the CAT configuration must be set before launching the RTVM.
358341

359342
Check CAT ability with cupid
360343
````````````````````````````
@@ -385,8 +368,7 @@ The PQR_ASSOC MSR is per CPU core; each core has its own PQR_ASSOC::
385368
MSR_IA32_PQR_ASSOC 0x00000C8F
386369

387370
To set the CAT, first set the CLOS MSRs. Next, set the PQR_ASSOC of each CPU
388-
so that the CPU of the RTVM uses dedicated cache and other CPUs use other cache.
389-
Taking a Quad Core Apollo Lake platform for example, CPU0 and CPU1 share L2 cache while CPU2 and CPU3 share the other L2 cache.
371+
so that the CPU of the RTVM uses dedicated cache and other CPUs use other cache. Taking a Quad Core Apollo Lake platform for example, CPU0 and CPU1 share L2 cache while CPU2 and CPU3 share the other L2 cache.
390372

391373
- If we allocate CPU2 and CPU3, no extra action is required.
392374
- If we allocate only CPU1 to the RTVM, we need to set the CAT as follows.
@@ -398,15 +380,12 @@ a. Set CLOS with ``wrmsr <reg_num> <value>``, we want VM1 to use the lower 6 way
398380
ACRN:\>wrmsr -p1 0xd10 0xf0
399381
ACRN:\>wrmsr -p1 0xd11 0x0f
400382

401-
#. Attach COS1 to PCPU1. Because MSR is IA32_PQR_ASSOC [bit 63:32], we’ll write
402-
0x100000000 to it to use CLOS1::
383+
#. Attach COS1 to PCPU1. Because MSR is IA32_PQR_ASSOC [bit 63:32], we’ll write 0x100000000 to it to use CLOS1::
403384

404385
ACRN:\>wrmsr -p0 0xc8f 0x000000000
405386
ACRN:\>wrmsr -p1 0xc8f 0x100000000
406387

407-
In addition to setting the CAT configuration via HV commands, we allow developers to add
408-
the CAT configurations to the VM config and do the configure automatically at the
409-
time of RTVM creation. Refer to the :ref:`configure_cat_vm` for details.
388+
In addition to setting the CAT configuration via HV commands, we allow developers to add the CAT configurations to the VM config and do the configure automatically at the time of RTVM creation. Refer to :ref:`configure_cat_vm` for details.
410389

411390
Set up the core allocation for the RTVM
412391
---------------------------------------
@@ -419,10 +398,10 @@ this, follow the below steps to allocate all housekeeping tasks to core 0:
419398

420399
# /usr/share/acrn/samples/nuc/launch_hard_rt_vm.sh
421400

422-
#. Log in RTVM as root and run the script as below:
401+
#. Log in to RTVM as root and run the script as below:
423402

424403
.. code-block:: bash
425-
404+
426405
#!/bin/bash
427406
# Copyright (C) 2019 Intel Corporation.
428407
# SPDX-License-Identifier: BSD-3-Clause
@@ -432,19 +411,19 @@ this, follow the below steps to allocate all housekeeping tasks to core 0:
432411
echo setting $i to affine for core zero
433412
echo 1 > /proc/irq/$i/smp_affinity
434413
done
435-
414+
436415
# Move all rcu tasks to core 0.
437416
for i in `pgrep rcu`; do taskset -pc 0 $i; done
438-
417+
439418
# Change realtime attribute of all rcu tasks to SCHED_OTHER and priority 0
440419
for i in `pgrep rcu`; do chrt -v -o -p 0 $i; done
441-
420+
442421
# Change realtime attribute of all tasks on core 1 to SCHED_OTHER and priority 0
443422
for i in `pgrep /1`; do chrt -v -o -p 0 $i; done
444-
423+
445424
# Change realtime attribute of all tasks to SCHED_OTHER and priority 0
446425
for i in `ps -A -o pid`; do chrt -v -o -p 0 $i; done
447-
426+
448427
echo disabling timer migration
449428
echo 0 > /proc/sys/kernel/timer_migration
450429
@@ -453,19 +432,18 @@ this, follow the below steps to allocate all housekeeping tasks to core 0:
453432
Run cyclictest
454433
==============
455434

456-
#. Refer to the :ref:`troubleshooting <enabling the network on RTVM>` to enable the
457-
network connection for RTVM.
435+
#. Refer to the :ref:`troubleshooting section <enabling the network on RTVM>` below that discusses how to enable the network connection for RTVM.
458436

459437
#. Launch RTVM and log in as root.
460438

461-
#. Install ``cyclictest`` tool::
439+
#. Install the ``cyclictest`` tool::
462440

463441
# swupd bundle-add dev-utils
464442

465443
#. Use the following command to start cyclictest::
466444

467445
# cyclictest -a 1 -p 80 -m -N -D 1h -q -H 30000 --histfile=test.log
468-
446+
469447
Parameter descriptions:
470448

471449
:-a 1: to bind the RT task to core 1

0 commit comments

Comments
 (0)