Skip to content

Commit 0030ac5

Browse files
authored
build: attempt setting tsc as clock source (#2144)
* Use tsc as clocksource for all x86 instances * Add shared set clocksource script, remove service
1 parent d051ea6 commit 0030ac5

File tree

9 files changed

+26
-84
lines changed

9 files changed

+26
-84
lines changed

templates/al2/provisioners/install-worker.sh

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -86,12 +86,6 @@ if yum list installed | grep ec2-net-utils; then sudo yum remove ec2-net-utils -
8686

8787
sudo mkdir -p /etc/eks/
8888

89-
################################################################################
90-
### Time #######################################################################
91-
################################################################################
92-
93-
sudo mv $WORKING_DIR/configure-clocksource.service /etc/eks/configure-clocksource.service
94-
9589
################################################################################
9690
### SSH ########################################################################
9791
################################################################################

templates/al2/provisioners/upgrade-kernel.sh

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,3 @@ sudo yum install -y "kernel-headers-${KERNEL_VERSION}*" "kernel-devel-${KERNEL_V
2323
sudo grubby \
2424
--update-kernel=ALL \
2525
--args="psi=1"
26-
27-
# use the tsc clocksource by default
28-
# https://repost.aws/knowledge-center/manage-ec2-linux-clock-source
29-
sudo grubby \
30-
--update-kernel=ALL \
31-
--args="clocksource=tsc tsc=reliable"

templates/al2/runtime/bootstrap.sh

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -335,11 +335,6 @@ if [ "$MOUNT_BPF_FS" = "true" ]; then
335335
mount-bpf-fs
336336
fi
337337

338-
cp -v /etc/eks/configure-clocksource.service /etc/systemd/system/configure-clocksource.service
339-
chown root:root /etc/systemd/system/configure-clocksource.service
340-
systemctl daemon-reload
341-
systemctl enable --now configure-clocksource
342-
343338
ECR_URI=$(/etc/eks/get-ecr-uri.sh "${AWS_DEFAULT_REGION}" "${AWS_SERVICES_DOMAIN}" "${PAUSE_CONTAINER_ACCOUNT:-}")
344339
PAUSE_CONTAINER_IMAGE=${PAUSE_CONTAINER_IMAGE:-$ECR_URI/eks/pause}
345340
PAUSE_CONTAINER="$PAUSE_CONTAINER_IMAGE:$PAUSE_CONTAINER_VERSION"

templates/al2/template.json

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,11 @@
170170
"KERNEL_VERSION={{user `kernel_version`}}"
171171
]
172172
},
173+
{
174+
"type": "shell",
175+
"remote_folder": "{{ user `remote_folder`}}",
176+
"script": "{{template_dir}}/../shared/provisioners/set-clocksource.sh"
177+
},
173178
{
174179
"type": "shell",
175180
"remote_folder": "{{ user `remote_folder`}}",
@@ -181,7 +186,9 @@
181186
{
182187
"type": "shell",
183188
"remote_folder": "{{ user `remote_folder`}}",
184-
"inline": ["sudo reboot"],
189+
"inline": [
190+
"sudo reboot"
191+
],
185192
"expect_disconnect": true,
186193
"pause_after": "90s"
187194
},
@@ -272,4 +279,4 @@
272279
}
273280
}
274281
]
275-
}
282+
}

templates/al2023/provisioners/install-worker.sh

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -87,13 +87,6 @@ EOF
8787
# Temporary fix for https://github.com/aws/amazon-vpc-cni-k8s/pull/2118
8888
sudo sed -i "s/^MACAddressPolicy=.*/MACAddressPolicy=none/" /usr/lib/systemd/network/99-default.link || true
8989

90-
################################################################################
91-
### Time #######################################################################
92-
################################################################################
93-
94-
sudo cp -v $WORKING_DIR/shared/configure-clocksource.service /etc/systemd/system/configure-clocksource.service
95-
sudo systemctl enable configure-clocksource
96-
9790
################################################################################
9891
### SSH ########################################################################
9992
################################################################################

templates/al2023/template.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,11 @@
175175
"sudo chmod -R a+x {{user `working_dir`}}/gpu/*"
176176
]
177177
},
178+
{
179+
"type": "shell",
180+
"remote_folder": "{{ user `remote_folder`}}",
181+
"script": "{{template_dir}}/../shared/provisioners/set-clocksource.sh"
182+
},
178183
{
179184
"type": "shell",
180185
"remote_folder": "{{ user `remote_folder`}}",
@@ -322,4 +327,4 @@
322327
}
323328
}
324329
]
325-
}
330+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/usr/bin/env bash
2+
3+
set -o pipefail
4+
set -o nounset
5+
set -o errexit
6+
7+
# use the tsc clocksource by default
8+
# https://repost.aws/knowledge-center/manage-ec2-linux-clock-source
9+
sudo grubby \
10+
--update-kernel=ALL \
11+
--args="clocksource=tsc tsc=reliable"

templates/shared/runtime/bin/configure-clocksource

Lines changed: 0 additions & 46 deletions
This file was deleted.

templates/shared/runtime/configure-clocksource.service

Lines changed: 0 additions & 11 deletions
This file was deleted.

0 commit comments

Comments
 (0)