Skip to content

Benchmarking Server Config

Lukas Rytz edited this page May 24, 2017 · 15 revisions

BIOS

IRC, Adriaan did

  • Load "optimized defaults"
  • Disable Hyper-Threading
  • Disable "Turbo Mode" (Turbo Boost)

System

scala@scalabench:~$ cat /etc/debian_version
8.8

Init System

Debian 8 uses systemd by default.

  • systemctl to list all services
  • systemctl status cron to show status of a service

Configuration

Some changes done to the system

Allow sudo without password

sudo visudo, added the following lines (https://askubuntu.com/a/147265, https://serverfault.com/questions/294661/how-to-grant-sudo-rights-only-to-specific-script-files)

# scala can sudo without password
scala ALL=(ALL) NOPASSWD: ALL

# jenkins can sudo benv
jenkins ALL=(ALL) NOPASSWD: /home/jenkins/workspace/compiler-benchmark/scripts/benv

Add the backports repo

sudo nano /etc/apt/sources.list.d/jessie-backports.list, add deb http://ftp.debian.org/debian jessie-backports main, run sudo apt-get update

Backports are only installed on demand (sudo apt-get -t jessie-backports install package).

Disable nfs

  • sudo systemctl disable nfs-common
  • sudo systemctl disable rpcbind

Disable exim4

sudo systemctl disable exim4

Installed packages

  • sudo apt-get install git
  • sudo apt-get install jq
  • perf: sudo apt-get install linux-tools-3.16
  • cset: sudo apt-get install cpuset
  • sudo apt-get install numactl
  • cpupower (from backports): sudo apt-get install linux-cpupower

Kernel Upgrade

Before

scala@scalabench:~$ uname -a
Linux scalabench 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2 (2017-04-30) x86_64 GNU/Linux

scala@scalabench:~$ ls -al /boot
total 20361
drwxr-xr-x  4 root root     4096 May  9 16:06 .
drwxr-xr-x 23 root root     4096 May 16 01:02 ..
-rw-r--r--  1 root root   157786 Apr 30 08:32 config-3.16.0-4-amd64
drwx------  3 root root      512 Dec 31  1969 efi
drwxr-xr-x  5 root root     4096 May 16 00:03 grub
-rw-r--r--  1 root root 14863507 May  9 16:06 initrd.img-3.16.0-4-amd64
-rw-r--r--  1 root root  2681668 Apr 30 08:32 System.map-3.16.0-4-amd64
-rw-r--r--  1 root root  3128768 Apr 30 08:31 vmlinuz-3.16.0-4-amd64

Install

scala@scalabench:~$ sudo apt-get install -t jessie-backports linux-image-amd64
The following extra packages will be installed:
  firmware-linux-free irqbalance linux-base linux-image-4.9.0-0.bpo.2-amd64
The following packages will be upgraded:
  linux-base linux-image-amd64

I: /vmlinuz.old is now a symlink to boot/vmlinuz-3.16.0-4-amd64
I: /initrd.img.old is now a symlink to boot/initrd.img-3.16.0-4-amd64
I: /vmlinuz is now a symlink to boot/vmlinuz-4.9.0-0.bpo.2-amd64
I: /initrd.img is now a symlink to boot/initrd.img-4.9.0-0.bpo.2-amd64

scala@scalabench:~$ sudo reboot

scala@scalabench:~$ uname -a
Linux scalabench 4.9.0-0.bpo.2-amd64 #1 SMP Debian 4.9.18-1~bpo8+1 (2017-04-10) x86_64 GNU/Linux

Ramdisk

Added to /etc/fstab

  • tmpfs /mnt/ramdisk tmpfs defaults,size=16g 0 0

Install Java

Following http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html

sudo nano /etc/apt/sources.list.d/java-webupd8team.list, add

deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main
deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886

scala@scalabench:~$ sudo apt-get update
scala@scalabench:~$ sudo apt-get install oracle-java8-installer

If there are multiple versions installed, update-alternatives --config java can be used to select one.

Install sbt

Following http://www.scala-sbt.org/0.13/docs/Installing-sbt-on-Linux.html

  • sudo nano /etc/apt/sources.list.d/sbt.list, add deb https://dl.bintray.com/sbt/debian /.
  • sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2EE0EA64E40A89B84B2DF73499E82A75642AC823
  • sudo apt-get install apt-transport-https to support apt-get update over https
  • sudo apt-get update
  • sudo apt-get install sbt

Jenkins Slave

ssh scala@12.155.180.58
sudo adduser jenkins

ssh jenkins@12.155.180.58
mkdir .ssh
chmod 700 .ssh
cd .ssh
touch authorized_keys
chmod 600 authorized_keys
nano authorized_keys

Add

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDDdAtS0v8iZpZS7zNU2VogH6GznIqH7ILZLF1J0eef9W1oo3G9euLCcOYYv7YgzWdVkaynuwatnUvUAt1B5EgS9L106J2pcRkLvx0sOQIY7QsnqIffzwBviuV0dLO6CAkncoH0R+Q/rywF/ialsknAnZKXQQwVEPHfFzfOcIwqvXdKxVlFYEjcB8dxrflxGh0Ncxf+iuHRb1kgP3hvGcaYu21jiUIzJbsjkvqypZLsKxGWVhSbLJGzFrWJ9HjiM5Uhgek8t/3fdO68zGUolqdRDWYIxR/KBUTMC37WAiUmSWrx8gM0L0OPz2QLYwapTbqSJ92o95woLkprvO7iqyEyg5UB3mxRJzD2WDNC9nLQFpV7C1Xo+yWorQt3M3g3f01t7kehlwHCKpdKW06o7uVCLdb+qxVJiYnbjmTZSD2sr/u2vet6vrIdYatlj/C++qkfQGwrUcGD318cZ8Nl/s0LOj3T5UPapq9nmjrrZIXznCbZI/kOzZReM6EussGLAoI0MeMuMMywtpW6QhhRVG6zJT1afdyqsyN1l5cXFtHpWQo6Dd+x8ANYncJBKYND2npG8n1a0FzixViBGWHRpga4EY3r2LZG4mD3OQVy+6mtre3hoT4bgn/vIRmtqsx1aHmFVQaIRCm0lzKfhgQY8LYIEop6iYLEBLJjdwvRySZsLQ==