Updates for Mount Bryce
Updated Patchset 1 Enable Mount Bryce HW Accelerator for Hosted vRAN Containerized Workloads Set Up Pods to Use SRIOV to Access Mount Bryce HW Accelerator Signed-off-by: Juanita-Balaraj <juanita.balaraj@windriver.com> Change-Id: Idf3621329d92b19e5f2949545c734f2e30d884b7 Signed-off-by: Juanita-Balaraj <juanita.balaraj@windriver.com>
This commit is contained in:
parent
61c3954247
commit
c90784c735
@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
.. zad1611611564761
|
.. zad1611611564761
|
||||||
.. enabling-mount-bryce-hw-accelerator-for-hosted-vram-containerized-workloads:
|
.. _enabling-mount-bryce-hw-accelerator-for-hosted-vram-containerized-workloads:
|
||||||
|
|
||||||
===========================================================================
|
===========================================================================
|
||||||
Enable Mount Bryce HW Accelerator for Hosted vRAN Containerized Workloads
|
Enable Mount Bryce HW Accelerator for Hosted vRAN Containerized Workloads
|
||||||
@ -21,7 +21,7 @@ enables the Mount Bryce device.
|
|||||||
.. rubric:: |prereq|
|
.. rubric:: |prereq|
|
||||||
|
|
||||||
|
|
||||||
.. enabling-mount-bryce-hw-accelerator-for-hosted-vram-containerized-workloads-ul-i3g-gh2-l4b:
|
.. _enabling-mount-bryce-hw-accelerator-for-hosted-vram-containerized-workloads-ul-i3g-gh2-l4b:
|
||||||
|
|
||||||
- The system has been provisioned and unlocked.
|
- The system has been provisioned and unlocked.
|
||||||
|
|
||||||
@ -40,7 +40,8 @@ enables the Mount Bryce device.
|
|||||||
|
|
||||||
~(keystone_admin)$ system host-lock controller-0
|
~(keystone_admin)$ system host-lock controller-0
|
||||||
|
|
||||||
#. Assign labels to controller-0.
|
#. Assign labels to controller-0 to enable |SRIOV| device plugin, static
|
||||||
|
Kubernetes CPU manager and restricted Kubernetes topology manager policy.
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
@ -48,19 +49,27 @@ enables the Mount Bryce device.
|
|||||||
~(keystone_admin)$ system host-label-assign controller-0 kube-cpu-mgr-policy=static
|
~(keystone_admin)$ system host-label-assign controller-0 kube-cpu-mgr-policy=static
|
||||||
~(keystone_admin)$ system host-label-assign controller-0 kube-topology-mgr-policy=restricted
|
~(keystone_admin)$ system host-label-assign controller-0 kube-topology-mgr-policy=restricted
|
||||||
|
|
||||||
#. Modify the CPU.
|
#. Modify the CPU core assignments for controller-0 to have 12
|
||||||
|
application-isolated physical cores \(24 virtual cores if hyper-threading
|
||||||
|
is supported and enabled on the processor\) on processor 0. Your specific
|
||||||
|
application(s) may need more or less cores.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
~(keystone_admin)$ system host-cpu-modify -f application-isolated -p0 12 controller-0
|
~(keystone_admin)$ system host-cpu-modify -f application-isolated -p0 12 controller-0
|
||||||
|
|
||||||
#. Modify the memory.
|
#. Modify the memory configuration for controller-0 numa-node 0 to have 12 1G
|
||||||
|
Huge Pages. Your specific application(s) may need more or less, or
|
||||||
|
different sized Huge Pages.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
~(keystone_admin)$ system host-memory-modify controller-0 0 -1G 12
|
~(keystone_admin)$ system host-memory-modify controller-0 0 -1G 12
|
||||||
|
|
||||||
#. List and enable the device.
|
#. List all devices on controller-0 and identify the name of the Mount Bryce
|
||||||
|
Hardware Accelerator (i.e. device id = 0d5c).
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
@ -114,11 +123,12 @@ enables the Mount Bryce device.
|
|||||||
| Device 0d5c | 1 | True |
|
| Device 0d5c | 1 | True |
|
||||||
+----------------------------------------------------------+-----------+---------+
|
+----------------------------------------------------------+-----------+---------+
|
||||||
|
|
||||||
#. Modify device 0000:85:00.0 as listed in the table above.
|
#. Modify the Mount Bryce device to enable it, specify the base driver and
|
||||||
|
vf driver, and configure it for 16 VFs.
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
~(keystone_admin)$ system host-device-modify controller-0 pci_0000_85_00_0 -e true --driver igb_uio --vf-driver igb_uio -N 16
|
~(keystone_admin)$ system host-device-modify controller-0 pci_0000_85_00_0 -e true --driver igb_uio --vf-driver vfio -N 16
|
||||||
|
|
||||||
#. Unlock the host.
|
#. Unlock the host.
|
||||||
|
|
||||||
|
@ -22,36 +22,57 @@ The following procedure shows an example of launching a container image with
|
|||||||
|
|
||||||
$ source /etc/platform/openrc ~(keystone_admin)$
|
$ source /etc/platform/openrc ~(keystone_admin)$
|
||||||
|
|
||||||
#. Create a pod.yml file.
|
#. Create a pod.yml file that requests 16 Mount Bryce VFs
|
||||||
|
\(i.e. intel.com/intel_acc100_fec: '16'\)
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
~(keystone_admin)$ cat >> pod0.yml << EOF
|
~(keystone_admin)$ cat >> pod0.yml << EOF
|
||||||
apiVersion: v1
|
apiVersion: apps/v1
|
||||||
kind: Pod
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: pod0
|
name: pod0
|
||||||
|
annotations:
|
||||||
|
labels:
|
||||||
|
app: pod0
|
||||||
spec:
|
spec:
|
||||||
restartPolicy: Never
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: pod0
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
name: pod0
|
||||||
|
labels:
|
||||||
|
app: pod0
|
||||||
|
spec:
|
||||||
|
restartPolicy: Always
|
||||||
containers:
|
containers:
|
||||||
- name: pod0
|
- name: pod0
|
||||||
image: "windse/pktgen-testpmd-bbdev:d1911r4p1912" volumeMounts: -
|
image: "windse/pktgen-testpmd-bbdev:d1911r4p1912"
|
||||||
mountPath: /mnt/huge-1048576kB
|
volumeMounts:
|
||||||
|
- mountPath: /mnt/huge-1048576kB
|
||||||
name: hugepage
|
name: hugepage
|
||||||
- mountPath: /sys/devices
|
- mountPath: /sys/devices
|
||||||
name: uio
|
name: uio
|
||||||
command: ["/bin/bash", "-ec", "sleep infinity"] securityContext:
|
command: ["/bin/bash", "-ec", "sleep infinity"]
|
||||||
privileged: false capabilities:
|
securityContext:
|
||||||
|
privileged: false
|
||||||
|
capabilities:
|
||||||
add:
|
add:
|
||||||
["IPC_LOCK", "SYS_ADMIN"]
|
["IPC_LOCK", "SYS_ADMIN"]
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
hugepages-1Gi: 4Gi memory: 4Gi intel.com/intel_acc100_fec: '16'
|
memory: 4Gi
|
||||||
windriver.com/isolcpus: '24'
|
intel.com/intel_acc100_fec: '16'
|
||||||
|
windriver.com/isolcpus: 24
|
||||||
limits:
|
limits:
|
||||||
hugepages-1Gi: 4Gi memory: 4Gi intel.com/intel_acc100_fec: '16'
|
hugepages-1Gi: 2Gi
|
||||||
windriver.com/isolcpus: '24'
|
memory: 4Gi
|
||||||
volumes: - name: hugepage
|
intel.com/intel_acc100_fec: '16'
|
||||||
|
windriver.com/isolcpus: 24
|
||||||
|
volumes:
|
||||||
|
- name: hugepage
|
||||||
emptyDir:
|
emptyDir:
|
||||||
medium: HugePages
|
medium: HugePages
|
||||||
- name: uio
|
- name: uio
|
||||||
|
Loading…
x
Reference in New Issue
Block a user