diff --git a/m/common/base/boot.nix b/m/common/base/boot.nix index cfa44564..e1fb2709 100644 --- a/m/common/base/boot.nix +++ b/m/common/base/boot.nix @@ -4,13 +4,6 @@ # Use the GRUB 2 boot loader. boot.loader.grub.enable = true; - # Enable GRUB2 serial console - boot.loader.grub.extraConfig = '' - serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1 - terminal_input --append serial - terminal_output --append serial - ''; - boot.kernel.sysctl = { "kernel.perf_event_paranoid" = lib.mkDefault "-1"; diff --git a/m/common/xeon/console.nix b/m/common/xeon/console.nix index e4c3644c..6e6ef5a9 100644 --- a/m/common/xeon/console.nix +++ b/m/common/xeon/console.nix @@ -11,4 +11,11 @@ "console=tty1" "console=ttyS0,115200" ]; + + # Enable GRUB2 serial console + boot.loader.grub.extraConfig = '' + serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1 + terminal_input --append serial + terminal_output --append serial + ''; } diff --git a/m/fox/configuration.nix b/m/fox/configuration.nix index b9549db8..f003e719 100644 --- a/m/fox/configuration.nix +++ b/m/fox/configuration.nix @@ -3,13 +3,13 @@ { imports = [ ../common/base.nix - ../common/xeon/console.nix ../module/amd-uprof.nix ../module/emulation.nix ../module/nvidia.nix ../module/slurm-client.nix ../module/hut-substituter.nix ./wireguard.nix + ./serial-console.nix ]; # Don't turn off on August as UPC has different dates. @@ -19,6 +19,9 @@ # Select the this using the ID to avoid mismatches boot.loader.grub.device = "/dev/disk/by-id/wwn-0x500a07514b0c1103"; + # Increase time so we can boot other entries + boot.loader.timeout = 60; + # No swap, there is plenty of RAM swapDevices = lib.mkForce []; @@ -31,7 +34,10 @@ # Use performance for benchmarks powerManagement.cpuFreqGovernor = "performance"; - services.amd-uprof.enable = true; + # Enable amd-uprof in >= 6.15 kernels only + services.amd-uprof.enable = + let ver = config.boot.kernelPackages.kernel.version; + in (lib.strings.compareVersions ver "6.15") >= 0; # Disable NUMA balancing boot.kernel.sysctl."kernel.numa_balancing" = 0; @@ -42,6 +48,11 @@ # Disable NMI watchdog to save one hw counter (for AMD uProf) boot.kernel.sysctl."kernel.nmi_watchdog" = 0; + specialisation.oldKernel.configuration = { + system.nixos.tags = [ "old-kernel" ]; + boot.kernelPackages = lib.mkForce pkgs.linuxPackages_6_12; + }; + services.openssh.settings.X11Forwarding = true; services.fail2ban.enable = true; diff --git a/m/fox/serial-console.nix b/m/fox/serial-console.nix new file mode 100644 index 00000000..ad7d9313 --- /dev/null +++ b/m/fox/serial-console.nix @@ -0,0 +1,21 @@ +{ + # Restart the serial console + systemd.services."serial-getty@ttyS1" = { + enable = true; + wantedBy = [ "getty.target" ]; + serviceConfig.Restart = "always"; + }; + + # Enable serial console + boot.kernelParams = [ + "console=tty1" + "console=ttyS1,115200" + ]; + + # Enable GRUB2 serial console + boot.loader.grub.extraConfig = '' + serial --unit=1 --speed=115200 --word=8 --parity=no --stop=1 + terminal_input --append serial + terminal_output --append serial + ''; +} diff --git a/m/raccoon/configuration.nix b/m/raccoon/configuration.nix index 38ce7198..83010822 100644 --- a/m/raccoon/configuration.nix +++ b/m/raccoon/configuration.nix @@ -4,6 +4,7 @@ imports = [ ../common/base.nix ../common/ssf/hosts.nix + ../common/xeon/console.nix ../module/emulation.nix ../module/debuginfod.nix ../module/nvidia.nix diff --git a/pkgs/bench6/default.nix b/pkgs/bench6/default.nix index 93ad8113..5a8bfbcc 100644 --- a/pkgs/bench6/default.nix +++ b/pkgs/bench6/default.nix @@ -9,13 +9,15 @@ , nanos6 , nodes , nosv +, mkl , mpi , tampi , openblas , ovni , gitBranch ? "master" , gitURL ? "ssh://git@bscpm04.bsc.es/rarias/bench6.git" -, gitCommit ? "bf29a53113737c3aa74d2fe3d55f59868faea7b4" +, gitCommit ? "fe30c2cfe36b535ef26a0054e010bc005e88ba04" +, useMkl ? true }: stdenv.mkDerivation rec { @@ -42,10 +44,13 @@ stdenv.mkDerivation rec { nosv mpi tampi + ovni + ] ++ (if (useMkl) then [ + mkl + ] else [ openblas openblas.dev - ovni - ]; + ]); env = { NANOS6_HOME = nanos6;