Skip to content
This repository was archived by the owner on Dec 10, 2024. It is now read-only.

Commit 486c979

Browse files
calinghesyedfarazalishahmichaelspedersen
committed
Reference Architecture 22.11.1
New Components/Features: - N/A (same as RA22.11) Updates/Changes: - Intel(R) QAT 2.0 drivers for the 4th Gen Intel(R) Xeon(R) Scalable processors (formerly code named Sapphire Rapids [SPR]) are sourced from public repo. No longer under NDA; please ignore Guide requirement to provide the "QAT20.L.0.9.9-00019.tar.gz" driver package file. - Resolved issue regarding downloading CPUID for Rocky Linux 9 and RHEL 9 New Hardware (Platforms/CPUs/GPUs/Accelerators): - N/A (same as RA22.11) Removed Support: - N/A (same as RA22.11) Known Limitations/Restrictions: - N/A (same as RA22.11) Co-authored-by: Ali Shah, Syed Faraz <[email protected]> Co-authored-by: Gherghe, Calin <[email protected]> Co-authored-by: Pedersen, Michael <[email protected]>
1 parent b3895b7 commit 486c979

File tree

6 files changed

+72
-99
lines changed

6 files changed

+72
-99
lines changed

generate/profiles_templates/common/host_vars.j2

-4
Original file line numberDiff line numberDiff line change
@@ -257,10 +257,6 @@ enabled_qat_service: "qat"
257257
disabled_qat_service: "qat_service"
258258

259259
{%- if arch in ['spr'] %}
260-
# SPR platform QAT drivers requirements
261-
# the folder must exist on the machine that will run Ansible playbooks
262-
qat_drivers_folder: "/tmp/qat/" # QAT "QAT20.L.0.9.9-00019.tar.gz" driver package is expected to be present in this folder
263-
qat_drivers_version: "QAT20.L.0.9.9-00019" # CEK has been validated with QAT drivers version "QAT20.L.0.9.9-00019.tar.gz"
264260
# This package provides user space libraries that allow access to Intel(R) QuickAssist devices and expose the Intel(R) QuickAssist APIs and sample codes.
265261
enable_intel_qatlibs: {% if qat == "on" %}true{% else %}false{% endif %} # Make sure "openssl_install" is set to "true" else this feature will be skipped in deployment.
266262
enable_qat_svm: {% if qat == "on" %}true{% else %}false{% endif %} # Enable QAT Shared Virtual Memory (SVM).

playbooks/preflight.yml

-8
Original file line numberDiff line numberDiff line change
@@ -673,14 +673,6 @@
673673
Please be aware that by using CPU model that is not confirmed, some features may not work properly."
674674
when: (not vm_enabled) or (vm_enabled and (not on_vms | default(false)))
675675

676-
- name: check QAT requirements
677-
include_role:
678-
name: ../roles/bootstrap/install_qat_drivers_services
679-
tasks_from: qat_drivers_preflight
680-
when:
681-
- configured_arch == "spr"
682-
- update_qat_drivers is defined and update_qat_drivers
683-
684676
- name: check QAT Devices list is configured properly
685677
block:
686678
- debug:

roles/bootstrap/install_packages/tasks/rhel.yml

+29-13
Original file line numberDiff line numberDiff line change
@@ -72,34 +72,50 @@
7272
- ansible_distribution in ['RedHat', 'Rocky']
7373
- ansible_distribution_version >= '8'
7474

75+
- name: obtain RPM-GPG-KEY-EPEL-9
76+
rpm_key:
77+
state: present
78+
key: https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-9
79+
when:
80+
- ansible_distribution in ["RedHat", "Rocky"]
81+
- ansible_distribution_version >= "9"
82+
83+
- name: install RPM-GPG-KEY-EPEL-9
84+
package:
85+
name: https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
86+
when:
87+
- ansible_distribution in ["RedHat", "Rocky"]
88+
- ansible_distribution_version >= "9"
89+
7590
# CPUID package is missing on RHEL 9.0 / Rocky 9.0
7691
- name: block for downloading CPUID on RHEL / Rocky >= 9.0
7792
block:
93+
- name: get list of packages
94+
uri:
95+
url: "https://download-ib01.fedoraproject.org/pub/epel/9/Everything/x86_64/Packages/c/"
96+
return_content: true
97+
register: epel_output
98+
99+
- name: get CPUID package name
100+
set_fact:
101+
cpuid_rpm: "{{ epel_output.content|split('\n') | select('match', '.*cpuid.*') |
102+
regex_search('(?=cpuid\\-)(.*?)(rpm?)') }}"
103+
failed_when: cpuid_rpm | length==0
104+
78105
- name: download CPUID on Rocky >= 9.0
79106
get_url:
80-
url: "https://download-ib01.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/c/cpuid-20200427-1.el8.x86_64.rpm"
107+
url: "https://download-ib01.fedoraproject.org/pub/epel/9/Everything/x86_64/Packages/c/{{ cpuid_rpm }}"
81108
dest: "{{ project_root_dir }}"
82109
mode: 0755
83110

84111
- name: install downloaded CPUID package on RHEL / Rocky >= 9.0
85112
package:
86-
name: "{{ project_root_dir }}/cpuid-20200427-1.el8.x86_64.rpm"
113+
name: "{{ project_root_dir }}/{{ cpuid_rpm }}"
87114
state: present
88115
when:
89116
- ansible_distribution in ['RedHat', 'Rocky']
90117
- ansible_distribution_version >= '9'
91118

92-
- name: obtain RPM-GPG-KEY-EPEL-9
93-
rpm_key:
94-
state: present
95-
key: https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-9
96-
when: ansible_distribution == "RedHat" and ansible_distribution_version >= "9"
97-
98-
- name: install RPM-GPG-KEY-EPEL-9
99-
package:
100-
name: https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
101-
when: ansible_distribution == "RedHat" and ansible_distribution_version >= "9"
102-
103119
- name: get current kernel version
104120
command: uname -r
105121
register: current_kernel_version

roles/bootstrap/install_qat_drivers_services/defaults/main.yml

+7
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,16 @@
1414
## limitations under the License.
1515
##
1616
---
17+
# QAT 1.x (for QAT add-on cards)
1718
qat_drivers_version: 'QAT.L.4.20.0-00001'
1819
qat_drivers_download_url: 'https://downloadmirror.intel.com/761891/{{ qat_drivers_version }}.tar.gz'
1920
qat_drivers_pkg_checksum: 'sha1:A78B360F33D270A1FBF7BBD60B2BA69253771771'
21+
22+
# QAT 2.x (for QAT embedded into SPR)
23+
qat_spr_drivers_version: 'QAT20.L.1.0.0-00021'
24+
qat_spr_drivers_download_url: 'https://downloadmirror.intel.com/765523/{{ qat_spr_drivers_version }}.tar.gz'
25+
qat_spr_drivers_pkg_checksum: 'sha1:BF74086B364E45E9A7DB305C15CF92C67E9D287A'
26+
2027
# If updating mentioned below folder location kindly update similar in roles/redeploy_cleanup/defaults/main.yml
2128
qat_drivers_dir: "{{ (project_root_dir, 'qat_drivers') | path_join }}"
2229

roles/bootstrap/install_qat_drivers_services/tasks/main.yml

+36-23
Original file line numberDiff line numberDiff line change
@@ -49,33 +49,46 @@
4949
state: directory
5050
mode: "u=rwx,g=rx,o=rx"
5151

52-
- name: download QAT drivers package {{ qat_drivers_version }}
53-
get_url:
54-
url: "{{ qat_drivers_download_url }}"
55-
checksum: "{{ qat_drivers_pkg_checksum }}"
56-
dest: "{{ qat_drivers_dir }}"
57-
mode: 0755
58-
register: qat_driver
59-
until: qat_driver is not failed
60-
retries: 5
52+
- name: block for QAT 1.x
53+
block:
54+
- name: download QAT drivers package {{ qat_drivers_version }}
55+
get_url:
56+
url: "{{ qat_drivers_download_url }}"
57+
checksum: "{{ qat_drivers_pkg_checksum }}"
58+
dest: "{{ qat_drivers_dir }}"
59+
mode: 0755
60+
register: qat_driver_sw
61+
until: qat_driver_sw is not failed
62+
retries: 5
63+
64+
- name: unarchive QAT drivers package
65+
unarchive:
66+
src: "{{ qat_drivers_dir }}/{{ qat_drivers_version }}.tar.gz"
67+
dest: "{{ qat_drivers_dir }}"
68+
remote_src: yes
69+
mode: 0755
6170
when: configured_arch != "spr"
6271

63-
- name: copy QAT driver package
64-
copy:
65-
dest: "{{ qat_drivers_dir }}/{{ qat_drivers_version }}.tar.gz"
66-
src: "{{ qat_drivers_folder }}/{{ qat_drivers_version }}.tar.gz"
67-
owner: root
68-
group: root
69-
mode: 0644
72+
- name: block for QAT 2.x
73+
block:
74+
- name: download QAT drivers package {{ qat_spr_drivers_version }}
75+
get_url:
76+
url: "{{ qat_spr_drivers_download_url }}"
77+
checksum: "{{ qat_spr_drivers_pkg_checksum }}"
78+
dest: "{{ qat_drivers_dir }}"
79+
mode: 0755
80+
register: qat_driver_sw
81+
until: qat_driver_sw is not failed
82+
retries: 5
83+
84+
- name: unarchive QAT drivers package
85+
unarchive:
86+
src: "{{ qat_drivers_dir }}/{{ qat_spr_drivers_version }}.tar.gz"
87+
dest: "{{ qat_drivers_dir }}"
88+
remote_src: yes
89+
mode: 0755
7090
when: configured_arch == "spr"
7191

72-
- name: unarchive QAT drivers package
73-
unarchive:
74-
src: "{{ qat_drivers_dir }}/{{ qat_drivers_version }}.tar.gz"
75-
dest: "{{ qat_drivers_dir }}"
76-
remote_src: yes
77-
mode: 0755
78-
7992
- name: check all packages are present for QAT drivers installation
8093
command: ./configure
8194
args:

roles/bootstrap/install_qat_drivers_services/tasks/qat_drivers_preflight.yml

-51
This file was deleted.

0 commit comments

Comments
 (0)