From 9abd0fb91692abe80c46cec40e29eaff9367bdce Mon Sep 17 00:00:00 2001 From: Artturin Date: Tue, 17 Dec 2024 21:39:41 +0200 Subject: [PATCH] Update metal to 0.53.0 Use prebuilt sfpi which is patched to work on NixOS and nix sandbox and elsewhere. --- flake.nix | 1 + pkgs/metal/default.nix | 8 ++++---- pkgs/sfpi/default.nix | 27 +++++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index 233f327..dc5262d 100644 --- a/flake.nix +++ b/flake.nix @@ -52,6 +52,7 @@ udev-rules = scope.kmd.udev-rules; kmd-test = scope.kmd.test; sfpi = scope.sfpi.sfpi; + sfpi-prebuilt = scope.sfpi.prebuilt; tt-gcc = scope.sfpi.tt-gcc; smi = scope.smi; luwen = scope.luwen.luwen; diff --git a/pkgs/metal/default.nix b/pkgs/metal/default.nix index f05d356..18c0896 100644 --- a/pkgs/metal/default.nix +++ b/pkgs/metal/default.nix @@ -21,7 +21,7 @@ let llvmPackages = llvmPackages_17; depsDir = "deps"; - version = "unstable-2024-10-04"; + version = "0.53.0"; metal-deps = metal.overrideAttrs (previousAttrs: { name = "tt-metal-deps-${version}.tar.gz"; @@ -63,8 +63,8 @@ let src = fetchFromGitHub { owner = "tenstorrent"; repo = "tt-metal"; - rev = "697ccc724048108e9f11a3c9ed5171a17ac9fd9c"; - hash = "sha256-pBfJAtSyRKtU3iG2P3hVuo2LXHBFOU+3XmRkbDuDvDQ="; + rev = "154e6993aed78213446c59731e41c3617d83c1f1"; + hash = "sha256-edtlE4CVsTO4BW0PKhkN0IxdV666Tu/Y1jgZ2Exljeo="; fetchSubmodules = true; fetchLFS = true; }; @@ -106,7 +106,7 @@ let substituteInPlace tt_metal/hw/CMakeLists.txt \ --replace-fail "FetchContent_MakeAvailable(sfpi)" "" mkdir -p runtime - ln -s ${sfpi.sfpi} runtime/sfpi + ln -s ${sfpi.prebuilt} runtime/sfpi ''; ARCH_NAME = "wormhole_b0"; diff --git a/pkgs/sfpi/default.nix b/pkgs/sfpi/default.nix index fb6f1a5..4ceffbf 100644 --- a/pkgs/sfpi/default.nix +++ b/pkgs/sfpi/default.nix @@ -27,5 +27,32 @@ rec { ''; }; + prebuilt = pkgs.stdenv.mkDerivation rec { + pname = "tt-gcc"; + version = "5.0.0"; + + src = pkgs.fetchzip { + url = "https://github.com/tenstorrent/sfpi/releases/download/v5.0.0/sfpi-release.tgz"; + hash = "sha256-RBhJ6BWmvB06zWoELTumpzroHDMpNXU0/WC6elgAkW0="; + }; + + nativeBuildInputs = with pkgs; [ + autoPatchelfHook + ]; + + buildInputs = with pkgs; [ + libmpc + mpfr + gmp + zlib + expat + ]; + + installPhase = '' + cp -r . $out + ''; + + }; + tt-gcc = import ./tt-gcc.nix { inherit pkgs; }; }