From 21bd91b7e1eb90c5003a379fd551028efb84eccd Mon Sep 17 00:00:00 2001 From: Ben Gamari <ben@smart-cactus.org> Date: Thu, 13 May 2021 12:46:14 -0400 Subject: [PATCH] ben-raytrace: Reduce benchmark runtime By reducing the size of the raytraced image. --- real/ben-raytrace/Main.hs | 4 +++- real/ben-raytrace/Makefile | 4 ++++ real/ben-raytrace/ben-raytrace.stdout | 2 +- real/ben-raytrace/ben-raytrace.stdout.fast | 3 +++ real/ben-raytrace/ben-raytrace.stdout.slow | 3 +++ 5 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 real/ben-raytrace/ben-raytrace.stdout.fast create mode 100644 real/ben-raytrace/ben-raytrace.stdout.slow diff --git a/real/ben-raytrace/Main.hs b/real/ben-raytrace/Main.hs index ad4e5e9c..772cdd86 100644 --- a/real/ben-raytrace/Main.hs +++ b/real/ben-raytrace/Main.hs @@ -14,6 +14,7 @@ import Sampler import SamplerMonad import Scene.Type import Scene.Scene2 as Scene +import System.Environment partitionPlane :: Coord -> Int -> [(Coord, Coord)] partitionPlane size chunkSize = @@ -28,11 +29,12 @@ partitionPlane size chunkSize = main :: IO () main = do scene <- mkScene + [size_str] <- getArgs let nRuns = 1 :: Int chunkSize = 64 :: Int nSamples = 32 :: Int - size = let n = 256 + size = let n = read size_str aspect = cameraAspect $ sceneCamera scene in Coord n (round $ realToFrac n / aspect) nRays = nRuns * nSamples * coordX size * coordY size diff --git a/real/ben-raytrace/Makefile b/real/ben-raytrace/Makefile index e1443f8e..d34ef1af 100644 --- a/real/ben-raytrace/Makefile +++ b/real/ben-raytrace/Makefile @@ -3,6 +3,10 @@ include $(TOP)/mk/boilerplate.mk SRC_DEPS = binary bytestring array parallel primitive transformers mtl ghc-prim random +FAST_OPTS = 48 +NORM_OPTS = 64 +SLOW_OPTS = 256 + ALL_DIRS += Random SamplerMonad Scene include $(TOP)/mk/target.mk diff --git a/real/ben-raytrace/ben-raytrace.stdout b/real/ben-raytrace/ben-raytrace.stdout index ec131bef..a994c1e5 100644 --- a/real/ben-raytrace/ben-raytrace.stdout +++ b/real/ben-raytrace/ben-raytrace.stdout @@ -1,3 +1,3 @@ -Rays: 1572864 +Rays: 98304 Figures: 10 Sampling... diff --git a/real/ben-raytrace/ben-raytrace.stdout.fast b/real/ben-raytrace/ben-raytrace.stdout.fast new file mode 100644 index 00000000..dea2425f --- /dev/null +++ b/real/ben-raytrace/ben-raytrace.stdout.fast @@ -0,0 +1,3 @@ +Rays: 55296 +Figures: 10 +Sampling... diff --git a/real/ben-raytrace/ben-raytrace.stdout.slow b/real/ben-raytrace/ben-raytrace.stdout.slow new file mode 100644 index 00000000..ec131bef --- /dev/null +++ b/real/ben-raytrace/ben-raytrace.stdout.slow @@ -0,0 +1,3 @@ +Rays: 1572864 +Figures: 10 +Sampling... -- GitLab