From a5a5e7f275de6ec9784f75a3e2d313e4eee807fa Mon Sep 17 00:00:00 2001 From: Paul Oliver Date: Thu, 29 Feb 2024 02:55:06 +0100 Subject: Initial (WIP) --- app/UI/Benchmark.hs | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 app/UI/Benchmark.hs (limited to 'app/UI/Benchmark.hs') diff --git a/app/UI/Benchmark.hs b/app/UI/Benchmark.hs new file mode 100644 index 0000000..dd2960a --- /dev/null +++ b/app/UI/Benchmark.hs @@ -0,0 +1,41 @@ +{-# LANGUAGE RecordWildCards #-} + +module UI.Benchmark + ( selectedMain + ) where + +import Prelude hiding (take) + +import Control.Monad (forM_) +import Data.Vector.Unboxed (take) +import Data.Word (Word64) +import System.Environment (getArgs) +import Text.Printf (printf) + +import Core (CoreState(..), SalisState(..), new, step) + +selectedMain :: IO () +selectedMain = do + args <- getArgs + let x = (read $ head args :: Word64) + let n = (read $ args !! 1 :: Int) + let SalisState {..} = step n $ new x + printf "Salis speed test\n" + printf "Using seed : 0x%x\n" x + printf "Will run N cycles : %i\n" n + printf "\n" + printf "iters : %i\n" iters + printf "syncs : %i\n" syncs + forM_ cores $ \CoreState {..} -> do + printf "\n" + printf "loop : %s\n" $ show loop + printf "mall : %s\n" $ show mall + printf "pnum : %s\n" $ show pnum + printf "pcap : %s\n" $ show pcap + printf "pfst : %s\n" $ show pfst + printf "plst : %s\n" $ show plst + printf "pcur : %s\n" $ show pcur + printf "psli : %s\n" $ show psli + printf "muta : %s\n" $ show muta + printf "mvec : %s\n" $ show $ take 16 mvec + printf "pvec : %s\n" $ show $ take 16 pvec -- cgit v1.2.1