From 3a336963d789fa3095728d5a6ed283fe4ecee86e Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Wed, 30 Apr 2025 10:06:43 +0300 Subject: feat(zkvms_guest_io): Track and output memory usage We're using benchexec's runexec to track how much memory our program uses. Because of nix compatibility troubles, for now we've disabled runexec's container feature. This could result in less accurate data. --- zkvms_guest_io/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'zkvms_guest_io/default.nix') diff --git a/zkvms_guest_io/default.nix b/zkvms_guest_io/default.nix index 20c75a7..bce5a9c 100644 --- a/zkvms_guest_io/default.nix +++ b/zkvms_guest_io/default.nix @@ -1,11 +1,11 @@ -{ craneLib-default, guest, zkvms, hostPackages, lib, }: +{ craneLib-default, guest, zkvms, hostPackages, lib, benchexec, }: let commonArgs = { name = "${guest}"; - buildInputs = - lib.foldr (zkvm: accum: accum ++ [ hostPackages."${zkvm}/${guest}" ]) [ ] - zkvms; + buildInputs = [ benchexec ] ++ + (lib.foldr (zkvm: accum: accum ++ [ hostPackages."${zkvm}/${guest}" ]) [ ] + zkvms); src = lib.fileset.toSource { root = ./.; @@ -15,6 +15,10 @@ let PROGRAMS = lib.foldr (zkvm: accum: hostPackages."${zkvm}/${guest}" + "/bin/${zkvm}_${guest}," + accum) "" zkvms; + + postPatch = '' + sed -i 's|"runexec"|"${benchexec}/bin/runexec"|' ./src/main.rs + ''; }; cargoArtifacts = craneLib-default.buildDepsOnly commonArgs; -- cgit v1.2.3