Skip to content

Commit ffc3cbe

Browse files
author
Sean Smith
committed
Install Intel HPC Platform Spec
* Installs on both compute and master Signed-off-by: Sean Smith <[email protected]>
1 parent 2b3964f commit ffc3cbe

File tree

4 files changed

+50
-35
lines changed

4 files changed

+50
-35
lines changed

attributes/default.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
default['cfncluster']['intelmpi']['s3_path'] = "scripts/intelmpi/aws_impi.#{node['cfncluster']['intelmpi']['installer_version']}.sh"
3636
default['cfncluster']['intelmpi']['version'] = '2019.5'
3737
default['cfncluster']['psxe']['version'] = '2019.5'
38+
default['cfncluster']['intelhpc']['version'] = '2018.0-1.el7'
3839
default['cfncluster']['intelmpi']['modulefile'] = "/opt/intel/impi/latest/modulefiles/mpi"
3940
# Python packages
4041
default['cfncluster']['cfncluster-version'] = '2.5.0'

recipes/_master_base_config.rb

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -128,12 +128,6 @@
128128
options ['no_root_squash']
129129
end
130130

131-
# Intel Runtime Libraries
132-
if (node['platform'] == 'centos' && node['platform_version'].to_i >= 7) \
133-
&& (node['cfncluster']['enable_intel_hpc_platform'] == 'true')
134-
include_recipe "aws-parallelcluster::intel_install"
135-
end
136-
137131
# Export /opt/intel if it exists
138132
nfs_export "/opt/intel" do
139133
network node['cfncluster']['ec2-metadata']['vpc-ipv4-cidr-block']

recipes/base_config.rb

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,9 @@
6060

6161
# Mount FSx directory with fsx_mount recipe
6262
include_recipe 'aws-parallelcluster::fsx_mount'
63+
64+
# Intel Runtime Libraries
65+
if (node['platform'] == 'centos' && node['platform_version'].to_i >= 7) \
66+
&& (node['cfncluster']['enable_intel_hpc_platform'] == 'true')
67+
include_recipe "aws-parallelcluster::intel_install"
68+
end

recipes/intel_install.rb

Lines changed: 43 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -15,42 +15,56 @@
1515
# OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions and
1616
# limitations under the License.
1717

18-
# This rpm installs a file /etc/intel-hpc-platform-release that contains the INTEL_HPC_PLATFORM_VERSION
19-
bash "install intel hpc platform" do
20-
cwd node['cfncluster']['sources_dir']
21-
code <<-INTEL
22-
set -e
23-
yum-config-manager --add-repo http://yum.repos.intel.com/hpc-platform/el7/setup/intel-hpc-platform.repo
24-
yum-config-manager --save --setopt=intel-hpc-platform.skip_if_unavailable=true
25-
rpm --import http://yum.repos.intel.com/hpc-platform/el7/setup/PUBLIC_KEY.PUB
26-
yum -y install intel-hpc-platform-*
27-
INTEL
28-
creates '/etc/intel-hpc-platform-release'
29-
end
18+
case node['cfncluster']['cfn_node_type']
19+
when 'MasterServer'
3020

31-
# parallel studio is intel's optimized libraries, this is the runtime (free) version
32-
bash "install intel psxe" do
33-
cwd node['cfncluster']['sources_dir']
34-
code <<-INTEL
35-
set -e
36-
rpm --import https://yum.repos.intel.com/2019/setup/RPM-GPG-KEY-intel-psxe-runtime-2019
37-
yum -y install https://yum.repos.intel.com/2019/setup/intel-psxe-runtime-2019-reposetup-1-0.noarch.rpm
38-
yum-config-manager --save --setopt=intel-psxe-runtime-2019.skip_if_unavailable=true
39-
yum -y install intel-psxe-runtime-#{node['cfncluster']['psxe']['version']}
40-
INTEL
41-
creates '/opt/intel/psxe_runtime'
21+
# Downloads the intel-hpc-platform rpms
22+
bash "install intel hpc platform" do
23+
cwd node['cfncluster']['sources_dir']
24+
code <<-INTEL
25+
set -e
26+
yum-config-manager --add-repo http://yum.repos.intel.com/hpc-platform/el7/setup/intel-hpc-platform.repo
27+
yum-config-manager --save --setopt=intel-hpc-platform.skip_if_unavailable=true
28+
rpm --import http://yum.repos.intel.com/hpc-platform/el7/setup/PUBLIC_KEY.PUB
29+
yum -y install --downloadonly --downloaddir=/opt/intel/rpms intel-hpc-platform-*-#{node['cfncluster']['intelhpc']['version']}
30+
INTEL
31+
creates '/opt/intel/rpms'
32+
end
33+
34+
# parallel studio is intel's optimized libraries, this is the runtime (free) version
35+
bash "install intel psxe" do
36+
cwd node['cfncluster']['sources_dir']
37+
code <<-INTEL
38+
set -e
39+
rpm --import https://yum.repos.intel.com/2019/setup/RPM-GPG-KEY-intel-psxe-runtime-2019
40+
yum -y install https://yum.repos.intel.com/2019/setup/intel-psxe-runtime-2019-reposetup-1-0.noarch.rpm
41+
yum-config-manager --save --setopt=intel-psxe-runtime-2019.skip_if_unavailable=true
42+
yum -y install intel-psxe-runtime-#{node['cfncluster']['psxe']['version']}
43+
INTEL
44+
creates '/opt/intel/psxe_runtime'
45+
end
46+
47+
# intel optimized versions of python
48+
bash "install intel python" do
49+
cwd node['cfncluster']['sources_dir']
50+
code <<-INTEL
51+
set -e
52+
yum-config-manager --add-repo https://yum.repos.intel.com/intelpython/setup/intelpython.repo
53+
yum-config-manager --save --setopt=intelpython.skip_if_unavailable=true
54+
yum -y install intelpython2 intelpython3
55+
INTEL
56+
creates '/opt/intel/intelpython2'
57+
end
4258
end
4359

44-
# intel optimized versions of python
45-
bash "install intel python" do
60+
# This rpm installs a file /etc/intel-hpc-platform-release that contains the INTEL_HPC_PLATFORM_VERSION
61+
bash "install intel hpc platform" do
4662
cwd node['cfncluster']['sources_dir']
4763
code <<-INTEL
4864
set -e
49-
yum-config-manager --add-repo https://yum.repos.intel.com/intelpython/setup/intelpython.repo
50-
yum-config-manager --save --setopt=intelpython.skip_if_unavailable=true
51-
yum -y install intelpython2 intelpython3
65+
yum install -y /opt/intel/rpms/*
5266
INTEL
53-
creates '/opt/intel/intelpython2'
67+
creates '/etc/intel-hpc-platform-release'
5468
end
5569

5670
# create intelpython module directory

0 commit comments

Comments
 (0)