Classic F# renderer: before / after
Requested run complete: 1/1 measured trials succeeded. Warmups are separate and never enter statistics.
Cold = isolated subprocess wall time, including startup, JIT, loading, acceleration, GPU compilation/transfers/synchronization, tracing, encoding, cleanup and process exit. Trace is a synchronized phase, not GPU end-to-end latency. Each repeat starts a new process: separate warmups warm OS/device caches, not the measured process’s JIT. Null/unexecuted phases are unavailable, never zero-valued observations. Median, IQR, full min/max and MAD retain every successful measured repeat; failed/slow/timeout cases remain visible.
Linear comparisons use retained RGB PFM (little-endian float32 storage, unclamped linear radiance, bottom-up on disk). Render arithmetic precision is listed separately. Difference previews are sqrt(4 × absolute linear error), clipped only for display; MAE/RMSE/max are computed before display clipping. Legacy differences are diagnostic, not a global correctness test. Images select the lowest successful repeat, not the prettiest or fastest trial. Every repetition is retained below.
Run manifest · All trial JSON · Trial CSV · Summary CSV · Linear differences
Reproducibility: SDK, source/asset/binary hashes, dependencies, device and limitations
{
"schemaVersion": 1,
"createdUtc": "2026-09-07T11:49:06.8256981\u002B00:00",
"repository": "/home/movj/code/dev/Ray_Tracer_FSharp",
"gitCommit": "066c59eba68d222d63b373b7e25d408796eb1d12",
"gitStatus": "M RayTracer/API/API.fs\n M RayTracer/API/API.fsi\n M RayTracer/Acceleration/Acceleration.fs\n M RayTracer/Acceleration/BVH.fs\n M RayTracer/Acceleration/KDTree.fs\n M RayTracer/Acceleration/RegularGrids.fs\n M RayTracer/Camera/Camera.fs\n M RayTracer/Camera/PinholeCamera.fs\n M RayTracer/Camera/ThinLensCamera.fs\n M RayTracer/Core/BBox.fs\n M RayTracer/Core/Colour.fs\n M RayTracer/Core/Foundation.fs\n M RayTracer/Core/Point.fs\n M RayTracer/Core/Ray.fs\n M RayTracer/Core/Vector.fs\n M RayTracer/ImplicitSurfaces/ExprParse.fs\n M RayTracer/ImplicitSurfaces/ExprParse.fsi\n M RayTracer/ImplicitSurfaces/ExprToPoly.fs\n M RayTracer/ImplicitSurfaces/ImplicitSurfaces.fs\n M RayTracer/ImplicitSurfaces/ImplicitSurfaces.fsi\n M RayTracer/ImplicitSurfaces/PolyToUnipoly.fs\n M RayTracer/ImplicitSurfaces/PolyToUnipoly.fsi\n M RayTracer/Lights/AreaLight.fs\n M RayTracer/Lights/BasicLight.fs\n M RayTracer/Lights/GlobalLight.fs\n M RayTracer/Materials/Materials.fs\n M RayTracer/Materials/Textures.fs\n M RayTracer/Materials/Textures.fsi\n M RayTracer/RayTracer.fsproj\n M RayTracer/Render.fs\n M RayTracer/Sampling/Sampling.fs\n M RayTracer/Sampling/Sampling.fsi\n M RayTracer/Scene.fs\n M RayTracer/Shapes/BaseShape.fs\n M RayTracer/Shapes/CSG.fs\n M RayTracer/Shapes/Shapes.fs\n M RayTracer/Transformation/Transformation.fs\n M RayTracer/Transformation/Transformation.fsi\n M RayTracer/TriangleMesh/PLYParser.fs\n M RayTracer/TriangleMesh/TriangleMesh.fs\n M TracerTest/Meshes.fs\n M TracerTest/Program.fs\n M TracerTest/TracerTest.fsproj\n M TracerTest/Util.fs\n M UnitTests/Assert.fs\n M UnitTests/BVH/BVHTest.fs\n M UnitTests/ImplicitSurfaces/ExprParseTests.fs\n M UnitTests/ImplicitSurfaces/ExprToPolyTests.fs\n M UnitTests/ImplicitSurfaces/ExprToPolyTests2.fs\n M UnitTests/ImplicitSurfaces/ImplicitSurfacesTests.fs\n M UnitTests/ImplicitSurfaces/PolyToUnipolyTests.fs\n M UnitTests/Program.fs\n M UnitTests/RG/RegularGridsTest.fs\n M UnitTests/SamplingTest.fs\n M UnitTests/ShapeTest.fs\n M UnitTests/TransformationTest.fs\n M UnitTests/UnitTests.fsproj\n?? .acceleration-validation/ShapeContract.fs\n?? .acceleration-validation/build.log\n?? .acceleration-validation/integrated.log\n?? .acceleration-validation/isolated.log\n?? .acceleration-validation/roots.fsx\n?? .acceleration-validation/run.fsx\n?? .geometry-assets.fsx\n?? .geometry-parser-baseline.fsx\n?? .geometry-regression.fsx\n?? .gitignore\n?? .tools/downloads/NuGetScratchmovj/lock/f373c6f8d0dac85905c07dd737cf4418c62803b1\n?? BenchmarkRunner/BenchmarkRunner.fsproj\n?? BenchmarkRunner/Program.fs\n?? BenchmarkRunner/SceneBuilder.fs\n?? BenchmarkRunner/Worker.fs\n?? BenchmarkRunner/packages.lock.json\n?? Directory.Build.props\n?? RayTracer.Gpu/.gitignore\n?? RayTracer.Gpu/CudaRenderer.fs\n?? RayTracer.Gpu/DeviceGeometry.fs\n?? RayTracer.Gpu/DeviceKernels.fs\n?? RayTracer.Gpu/DeviceMath.fs\n?? RayTracer.Gpu/DeviceTransport.fs\n?? RayTracer.Gpu/DeviceTypes.fs\n?? RayTracer.Gpu/Gate.fs\n?? RayTracer.Gpu/HostScene.fs\n?? RayTracer.Gpu/Program.fs\n?? RayTracer.Gpu/README.md\n?? RayTracer.Gpu/RayTracer.Gpu.fsproj\n?? RayTracer.Gpu/SelfTests.fs\n?? RayTracer.Gpu/THIRD-PARTY-NOTICES.txt\n?? RayTracer.Gpu/Tests/tiny-settings.json\n?? RayTracer.Gpu/Worker.fs\n?? RayTracer.Gpu/packages.lock.json\n?? RayTracer.ImageIO/README.md\n?? RayTracer.ImageIO/RayTracer.ImageIO.fsproj\n?? RayTracer.ImageIO/RgbImage.fs\n?? RayTracer.ImageIO/packages.lock.json\n?? RayTracer.sln\n?? RayTracer/Acceleration/FlatBVH.fs\n?? RayTracer/ClassicIntegrator.fs\n?? RayTracer/packages.lock.json\n?? SceneAssets/CheckLegacyPly.fsx\n?? SceneAssets/Checks.fs\n?? SceneAssets/Geometry.fs\n?? SceneAssets/Meshes.fs\n?? SceneAssets/Program.fs\n?? SceneAssets/README.md\n?? SceneAssets/SceneAssets.fsproj\n?? SceneAssets/Scenes.fs\n?? SceneAssets/Textures.fs\n?? SceneAssets/packages.lock.json\n?? SceneFormat/SceneFormat.fs\n?? SceneFormat/SceneFormat.fsproj\n?? SceneFormat/packages.lock.json\n?? TracerTest/packages.lock.json\n?? UnitTests/AccelerationRegressionTests.fs\n?? UnitTests/GeometryRegressionTests.fs\n?? UnitTests/ImageIOTests.fs\n?? UnitTests/LightingRegressionTests.fs\n?? UnitTests/MeshRegressionTests.fs\n?? UnitTests/NumericalRegressionTests.fs\n?? UnitTests/README.md\n?? UnitTests/packages.lock.json\n?? benchmarks/gold-dragon.json\n?? benchmarks/legacy/LegacyRayTracer.fsproj\n?? benchmarks/legacy/README.md\n?? benchmarks/legacy/Runner/LegacyRunner.fsproj\n?? benchmarks/legacy/Runner/packages.lock.json\n?? benchmarks/legacy/adapted/Acceleration/RegularGrids.fs\n?? benchmarks/legacy/adapted/Core/Foundation.fs\n?? benchmarks/legacy/adapted/Core/Vector.fs\n?? benchmarks/legacy/adapted/Render.fs\n?? benchmarks/legacy/adapted/Sampling/Sampling.fs\n?? benchmarks/legacy/adapted/Sampling/Sampling.fsi\n?? benchmarks/legacy/baseline.json\n?? benchmarks/legacy/original/LICENSE\n?? benchmarks/legacy/original/RayTracer/API.fs\n?? benchmarks/legacy/original/RayTracer/API.fsi\n?? benchmarks/legacy/original/RayTracer/API/API.fs\n?? benchmarks/legacy/original/RayTracer/API/API.fsi\n?? benchmarks/legacy/original/RayTracer/Acceleration/Acceleration.fs\n?? benchmarks/legacy/original/RayTracer/Acceleration/BVH.fs\n?? benchmarks/legacy/original/RayTracer/Acceleration/KDTree.fs\n?? benchmarks/legacy/original/RayTracer/Acceleration/RegularGrids.fs\n?? benchmarks/legacy/original/RayTracer/App.config\n?? benchmarks/legacy/original/RayTracer/AssemblyInfo.fs\n?? benchmarks/legacy/original/RayTracer/Camera/Camera.fs\n?? benchmarks/legacy/original/RayTracer/Camera/PinholeCamera.fs\n?? benchmarks/legacy/original/RayTracer/Camera/ThinLensCamera.fs\n?? benchmarks/legacy/original/RayTracer/Core/BBox.fs\n?? benchmarks/legacy/original/RayTracer/Core/Colour.fs\n?? benchmarks/legacy/original/RayTracer/Core/Foundation.fs\n?? benchmarks/legacy/original/RayTracer/Core/Point.fs\n?? benchmarks/legacy/original/RayTracer/Core/Ray.fs\n?? benchmarks/legacy/original/RayTracer/Core/Vector.fs\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprParse.fs\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprParse.fsi\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprToPoly.fs\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprToPoly.fsi\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ImplicitSurfaces.fs\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ImplicitSurfaces.fsi\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/PolyToUnipoly.fs\n?? benchmarks/legacy/original/RayTracer/ImplicitSurfaces/PolyToUnipoly.fsi\n?? benchmarks/legacy/original/RayTracer/Lights/AreaLight.fs\n?? benchmarks/legacy/original/RayTracer/Lights/BasicLight.fs\n?? benchmarks/legacy/original/RayTracer/Lights/GlobalLight.fs\n?? benchmarks/legacy/original/RayTracer/Materials/Materials.fs\n?? benchmarks/legacy/original/RayTracer/Materials/Textures.fs\n?? benchmarks/legacy/original/RayTracer/Materials/Textures.fsi\n?? benchmarks/legacy/original/RayTracer/Program2.fs\n?? benchmarks/legacy/original/RayTracer/RayTracer.fsproj\n?? benchmarks/legacy/original/RayTracer/Render.fs\n?? benchmarks/legacy/original/RayTracer/Sampling/Sampling.fs\n?? benchmarks/legacy/original/RayTracer/Sampling/Sampling.fsi\n?? benchmarks/legacy/original/RayTracer/Scene.fs\n?? benchmarks/legacy/original/RayTracer/Shapes/BaseShape.fs\n?? benchmarks/legacy/original/RayTracer/Shapes/CSG.fs\n?? benchmarks/legacy/original/RayTracer/Shapes/Shapes.fs\n?? benchmarks/legacy/original/RayTracer/Transformation/Transformation.fs\n?? benchmarks/legacy/original/RayTracer/Transformation/Transformation.fsi\n?? benchmarks/legacy/original/RayTracer/TriangleMesh/PLYParser.fs\n?? benchmarks/legacy/original/RayTracer/TriangleMesh/TriangleMesh.fs\n?? benchmarks/legacy/original/RayTracer/TriangleMeshes/PLYParser.fs\n?? benchmarks/legacy/original/RayTracer/TriangleMeshes/TriangleMes.fs\n?? benchmarks/legacy/original/RayTracer/packages.config\n?? benchmarks/legacy/packages.lock.json\n?? benchmarks/legacy/portability.diff\n?? benchmarks/legacy/portability.json\n?? benchmarks/legacy/prepare-port.fsx\n?? benchmarks/legacy/proof.fsx\n?? benchmarks/legacy/source.sha256\n?? benchmarks/scenes/chair.json\n?? benchmarks/scenes/material-lab.json\n?? benchmarks/scenes/provenance.json\n?? benchmarks/scenes/roman-bust.json\n?? benchmarks/scenes/sky-arena.json\n?? benchmarks/scenes/space-sentinel.json\n?? global.json\n?? scripts/BenchmarkData.fs\n?? scripts/BenchmarkReport.fs\n?? scripts/benchmark-builder-tests.fsx\n?? scripts/benchmark-tests.fsx\n?? scripts/benchmark-worker-tests.fsx\n?? scripts/benchmark.fsx\n?? scripts/prepare-gold-dragon.fsx",
"sourceDigest": "2d2ad84dc791a01fb79a2515e1f3d6da7d0ee80ed5dff247fc39c085fec23a14",
"sources": [
{
"path": ".acceleration-validation/ShapeContract.fs",
"sha256": "60721e8fbee5fa140e1175830468f5fe01ccb8295e88cb902d649b263ee602ac",
"bytes": 1882
},
{
"path": ".acceleration-validation/roots.fsx",
"sha256": "471b579c2a1bc54960549fdbdfa0fa2f829a5b5575f143a0ac93deebfa6db30e",
"bytes": 1589
},
{
"path": ".acceleration-validation/run.fsx",
"sha256": "5c011c1a695f6e565cb4dd352bbbccb3eafebaf934091e376c31602c61354a37",
"bytes": 535
},
{
"path": ".geometry-assets.fsx",
"sha256": "aa7b923858c7df9b981805b977248ae0e65f356c03c2380978cc276a714cccd9",
"bytes": 865
},
{
"path": ".geometry-parser-baseline.fsx",
"sha256": "090ce4e38d393e705e1f91aceaadccb89ab3a9a402d116a42218b67b0139f2c4",
"bytes": 358
},
{
"path": ".geometry-regression.fsx",
"sha256": "b101533d4d352cf3967bfd06f05e560154e554e2c4a86bbc7ec5de2fd4bebe04",
"bytes": 820
},
{
"path": "BenchmarkRunner/BenchmarkRunner.fsproj",
"sha256": "82774cfb2eac763a54573aeba7e00f5106bedd2460cd87340c08c560fc1db741",
"bytes": 663
},
{
"path": "BenchmarkRunner/Program.fs",
"sha256": "4bb5cb60b599119d051a3d1cb624c397fd8d086bbfe34dce56754d4865740980",
"bytes": 3334
},
{
"path": "BenchmarkRunner/SceneBuilder.fs",
"sha256": "d87f8d38d7a181929d86397c344deeee280908795ce04994189e117655e98fa5",
"bytes": 13247
},
{
"path": "BenchmarkRunner/Worker.fs",
"sha256": "415fde72db612ef1ed90cfc8f29cc4c51b09a928594c3256e39b2065c19105d6",
"bytes": 15552
},
{
"path": "BenchmarkRunner/packages.lock.json",
"sha256": "07f8ed76169e1544073b4a47031c7c0fa22ba0facdae215665bc6bf7a0eccbce",
"bytes": 1571
},
{
"path": "Directory.Build.props",
"sha256": "bd80f98e6493c2677c5c645c47ca89ecef9f5122d6e5d4cab97278177c69b5d4",
"bytes": 228
},
{
"path": "README.md",
"sha256": "beba9229a791f8d5c937ae81263b0d11a9f212fa753fea7b8263f25fc2fe76a6",
"bytes": 572
},
{
"path": "RayTracer.Gpu/CudaRenderer.fs",
"sha256": "abf31f365274bb71130cce61b433129ccfdf1c31fa594718e0b8d4b3bf3eff80",
"bytes": 13417
},
{
"path": "RayTracer.Gpu/DeviceGeometry.fs",
"sha256": "8ab7d063d98cc9c6097bc850149d31e292131bd27807c8662fb829bed0aa502a",
"bytes": 7012
},
{
"path": "RayTracer.Gpu/DeviceKernels.fs",
"sha256": "6a3b98c2561fbb3a47cfc3ae591131f911c0a2ada49f88e031bbf8df40dbd74d",
"bytes": 3669
},
{
"path": "RayTracer.Gpu/DeviceMath.fs",
"sha256": "86202baee913ebef464dad23383357b7ab1403f0ad8d3955b1231b35f95def38",
"bytes": 5612
},
{
"path": "RayTracer.Gpu/DeviceTransport.fs",
"sha256": "fd457ceb7ddd6d8972b83fecb454004d61a93545a8ef6e87ae143d7bc55aa67c",
"bytes": 16911
},
{
"path": "RayTracer.Gpu/DeviceTypes.fs",
"sha256": "dea5cb84f842256b0247deac55f0e0ccc098acc074cbac43a8ae7599b6a4e2f1",
"bytes": 4428
},
{
"path": "RayTracer.Gpu/Gate.fs",
"sha256": "243ec7bada1eff7077e4febb160f1ee09ae98bf7056e107b7c6a4ff26e887898",
"bytes": 9341
},
{
"path": "RayTracer.Gpu/HostScene.fs",
"sha256": "40653c21cca30e7b0309be17ce2f771d953d1a9a6aa68b89d0e31bc28d9362bd",
"bytes": 15515
},
{
"path": "RayTracer.Gpu/Program.fs",
"sha256": "c4ad24095f72c52a5be41bbf69d9c14a63b004a1f5faa5a30c57b77f921b07d9",
"bytes": 728
},
{
"path": "RayTracer.Gpu/README.md",
"sha256": "fb744d7c4dae9dfeb7e3e5998fb913ce4c18f6df982491da21b9813dd2d54b94",
"bytes": 9970
},
{
"path": "RayTracer.Gpu/RayTracer.Gpu.fsproj",
"sha256": "d113687a6b6bdcdaaaa835233ab6b39defa60b687e982a71ceb58583018517e6",
"bytes": 1244
},
{
"path": "RayTracer.Gpu/SelfTests.fs",
"sha256": "411dc0efcd375031ce89360dc5caf8e516f8d1c70365ce745c30759529972ef6",
"bytes": 5720
},
{
"path": "RayTracer.Gpu/Tests/tiny-settings.json",
"sha256": "bb864dc5d972d2adcdad7f76d9095d1dafc25305f6dfe0edc2610407dcb472c4",
"bytes": 241
},
{
"path": "RayTracer.Gpu/Worker.fs",
"sha256": "00cff43ab7d96b8f82902a1ab6ccfa65674ff094d4ab66c303b9def2f9dfb132",
"bytes": 9344
},
{
"path": "RayTracer.Gpu/packages.lock.json",
"sha256": "a8d959448150344cb1fa6f72e54343e559d9e34da76fb43eb464a687efad0061",
"bytes": 2104
},
{
"path": "RayTracer.ImageIO/README.md",
"sha256": "90a3f5629eb729271da6bb9a70d329cee48461ca91242754ea2c0cc0b238d681",
"bytes": 2248
},
{
"path": "RayTracer.ImageIO/RayTracer.ImageIO.fsproj",
"sha256": "732bb4218c96ffd53dc46007824569dcb46b8a07f53e42cfa5797b10552ecf67",
"bytes": 492
},
{
"path": "RayTracer.ImageIO/RgbImage.fs",
"sha256": "dd0fcbae601f606dab5d5ff5cce0092bdd23f6c1c660e09e2981331cd6f640fd",
"bytes": 4180
},
{
"path": "RayTracer.ImageIO/packages.lock.json",
"sha256": "9ece3545e2e2b99f550b5f30aca7317642508eeb430c484a878a4af8e8794afc",
"bytes": 791
},
{
"path": "RayTracer/API.fs",
"sha256": "97dc6097f629a918cf2f821a9060f37eefa913e8deed17ac671c11064908dca0",
"bytes": 10044
},
{
"path": "RayTracer/API.fsi",
"sha256": "62eab4d1c9b3d0e5cebce8d7c72cea9ba2ccb09c8547c3c8a086a8b0f49fe885",
"bytes": 14359
},
{
"path": "RayTracer/API/API.fs",
"sha256": "f3b4ddd8e7c7fef37a1a3d73b967f3003c6f4f08597b4cd8a555cf46fb6b72cf",
"bytes": 10043
},
{
"path": "RayTracer/API/API.fsi",
"sha256": "05cacaa24824589ce8633cc7c1ea01a14828644745450545a3ed9c40300da995",
"bytes": 15054
},
{
"path": "RayTracer/Acceleration/Acceleration.fs",
"sha256": "4c2f21abc4441ffa5e36d21a2faaf5d7ec6b4317a49786fec62c2926dc2fd8a2",
"bytes": 6158
},
{
"path": "RayTracer/Acceleration/BVH.fs",
"sha256": "55f0d1ce2cf76e6b5dbec6f5b911605d39003a64d24a8bb062f96ffa6d95c335",
"bytes": 6160
},
{
"path": "RayTracer/Acceleration/FlatBVH.fs",
"sha256": "07751fd17bc4d477d9603866d92117d7d55f183736f56943e17df21184a4b7b2",
"bytes": 9733
},
{
"path": "RayTracer/Acceleration/KDTree.fs",
"sha256": "2673338b2a4cc61d0b2139b6e69da5a6540a79b8eadeb0b96281db2ff87fd6b0",
"bytes": 15874
},
{
"path": "RayTracer/Acceleration/RegularGrids.fs",
"sha256": "3b74af50815bcc1e64db85784e7309f58b617ed17f933634031cb3cc04824d4f",
"bytes": 9789
},
{
"path": "RayTracer/App.config",
"sha256": "8173d4d17cb728e6f2c5e2ce8124ce7eb0f459dc62085bcaab786abf1f6b37a7",
"bytes": 184
},
{
"path": "RayTracer/AssemblyInfo.fs",
"sha256": "076327f6c028480a9e7bda7ae14cafeb70375cbb6d1c9d6ed74522005d3a78c7",
"bytes": 1448
},
{
"path": "RayTracer/Camera/Camera.fs",
"sha256": "d0ddf33242570d834ba463a275a685927299885cd588d52176b336ee13b51ac4",
"bytes": 2261
},
{
"path": "RayTracer/Camera/PinholeCamera.fs",
"sha256": "c9aa6fc1f25ae9e14b5b7a86a802e5e0e0ffe481b4972038b8283fdf9ffd6c83",
"bytes": 907
},
{
"path": "RayTracer/Camera/ThinLensCamera.fs",
"sha256": "25434be7cc9bbb6189c1ec9077cada513abd82f53bca21ee2e7b31f064ec0690",
"bytes": 1851
},
{
"path": "RayTracer/ClassicIntegrator.fs",
"sha256": "227d6c70c20f8425d5f40886610c08f03a204e8774549173f8a53b04aa0617a7",
"bytes": 11097
},
{
"path": "RayTracer/Core/BBox.fs",
"sha256": "2683ebb453a7a16ca5f15c32cb184c6923d33c6f108fc1600644898273e318ab",
"bytes": 2920
},
{
"path": "RayTracer/Core/Colour.fs",
"sha256": "39e6374c20ed7e6d67598530f87afc63b5bd70c5a5a15b58e251477bdb2325eb",
"bytes": 3737
},
{
"path": "RayTracer/Core/Foundation.fs",
"sha256": "754497c688eb20e7ec557acf8be35d8f4073d2c0abe5c92d8ca299f13f51b398",
"bytes": 6968
},
{
"path": "RayTracer/Core/Point.fs",
"sha256": "43b6ed090497a036cef92363737be7e9ea790b821ed6026970d12bf42f7922d0",
"bytes": 2440
},
{
"path": "RayTracer/Core/Ray.fs",
"sha256": "5fbc4550e50b99591feab61ae9be27caf74d95ca97f59793dba7399a8cd0f661",
"bytes": 1442
},
{
"path": "RayTracer/Core/Vector.fs",
"sha256": "c288db9760dbfa4bb1fd744982bc6b7fb3d13be17f0586ccb3de38c30ea4f2c4",
"bytes": 3448
},
{
"path": "RayTracer/ImplicitSurfaces/ExprParse.fs",
"sha256": "ed2fc90709c64e8bf0b44f4f72875811306ab19166105eaa63d5924868e211ed",
"bytes": 7790
},
{
"path": "RayTracer/ImplicitSurfaces/ExprParse.fsi",
"sha256": "bb605e2bacb9cdadd065f1f9d056cbc0d4808886622df89bf0fd1d5b11b8f2c4",
"bytes": 697
},
{
"path": "RayTracer/ImplicitSurfaces/ExprToPoly.fs",
"sha256": "30dbbceeed8545cd261c0df17a688dcf06e2d73f67842d13002cb10698684136",
"bytes": 13049
},
{
"path": "RayTracer/ImplicitSurfaces/ExprToPoly.fsi",
"sha256": "f81a02ec47a4392c4da91fbc44224f440a06d52178dadc453aa06262e3985f69",
"bytes": 874
},
{
"path": "RayTracer/ImplicitSurfaces/ImplicitSurfaces.fs",
"sha256": "7b4b6cc8c00f170bbeebd3ea5e305e8b429a5743e7476be82b34925b9385c06a",
"bytes": 9258
},
{
"path": "RayTracer/ImplicitSurfaces/ImplicitSurfaces.fsi",
"sha256": "c1c2417105d04e7c167e57c00ba72d6cecbdcfe53c5d706489d96db15df4bf91",
"bytes": 1062
},
{
"path": "RayTracer/ImplicitSurfaces/PolyToUnipoly.fs",
"sha256": "8a0e85c65c57dfa4bdbd03f32e0f3ef5812cdc65ba10bb37b12486b78965342e",
"bytes": 10846
},
{
"path": "RayTracer/ImplicitSurfaces/PolyToUnipoly.fsi",
"sha256": "43b9ae0f95ecd8f61525ef26a157bf6671030c507e5ce5dd0ca94ad7b12ca4e1",
"bytes": 978
},
{
"path": "RayTracer/Lights/AreaLight.fs",
"sha256": "5b4a7446f839d675e61ea8bf0dd058977310c5b635a3f818e82cce9b3c6871bc",
"bytes": 9580
},
{
"path": "RayTracer/Lights/BasicLight.fs",
"sha256": "61db2b36a6e5fa85e4a65e336d93594f927bbb85aad41552393a41efc7b97aa8",
"bytes": 1523
},
{
"path": "RayTracer/Lights/GlobalLight.fs",
"sha256": "41d5f1465e960da68d40d425823b2160bb2f6c1b5c911d15df82691670eda4f7",
"bytes": 2795
},
{
"path": "RayTracer/Materials/Materials.fs",
"sha256": "46422c250b509f79574bf64c2169df8cd7d6df04a95657c17ed321b1944870d7",
"bytes": 16547
},
{
"path": "RayTracer/Materials/Textures.fs",
"sha256": "2ae86bb58e6a2d121540e5d6e537d60f2ff333e84b19dd11a0dffb3bcc5c428a",
"bytes": 814
},
{
"path": "RayTracer/Materials/Textures.fsi",
"sha256": "4214063b91d20561614ee88c00fb1f39937c0638a9f9b37f3649b7907cb172b2",
"bytes": 355
},
{
"path": "RayTracer/Program2.fs",
"sha256": "f4620ea9b3ab45100cd31701cf757a2dfa8308cf5f152b091e290e5507d8117e",
"bytes": 5398
},
{
"path": "RayTracer/RayTracer.fsproj",
"sha256": "f0b095dfdb37c0f006dd45de77c590400b308b2494eb4b1829299d6c3c7213f0",
"bytes": 2721
},
{
"path": "RayTracer/Render.fs",
"sha256": "995b3462f240649fb245642c88b24f3a5f9c4116e4cf1c69a095d636e32f8a22",
"bytes": 5409
},
{
"path": "RayTracer/Sampling/Sampling.fs",
"sha256": "0f7d12ef5a759a3c78a4a78dcd64937da07a864be9994692fa3437c79ff94967",
"bytes": 14631
},
{
"path": "RayTracer/Sampling/Sampling.fsi",
"sha256": "20207e6278cc86bba62ef34c685a33d3e978362f86d2fbb69d2952f3a72317ae",
"bytes": 873
},
{
"path": "RayTracer/Scene.fs",
"sha256": "b3b1c59c1ce147244c19e6ac18c519a12b3054718a3c4c40ce41e21d452692ac",
"bytes": 1770
},
{
"path": "RayTracer/Shapes/BaseShape.fs",
"sha256": "7643d7cd26c5192edf5e0af2a898bd02ed0b9ecfd609ad5082e7db042829f677",
"bytes": 1778
},
{
"path": "RayTracer/Shapes/CSG.fs",
"sha256": "95bf8cfc24996ff3c541737a4dceb22d7459c4553b31084ac298e085924fd3c2",
"bytes": 7604
},
{
"path": "RayTracer/Shapes/Shapes.fs",
"sha256": "f24d7327654c0f53a0f3b2ea070e16d9889874f6bde64e88b8ca2f8a36b35d20",
"bytes": 18161
},
{
"path": "RayTracer/Transformation/Transformation.fs",
"sha256": "51de486946e09c655309df76f46d59d8fe18dbc74704b4c169d6c2f88adce0e8",
"bytes": 8279
},
{
"path": "RayTracer/Transformation/Transformation.fsi",
"sha256": "f474e8d09f06f2aea53a8ed8b81e19838ebde1d0ba946fe5c325069677425074",
"bytes": 1285
},
{
"path": "RayTracer/TriangleMesh/PLYParser.fs",
"sha256": "d8603210aa1b133556a7c1800f1734a82d5031ef607ef9a005df8a3a7ab4b78f",
"bytes": 15920
},
{
"path": "RayTracer/TriangleMesh/TriangleMesh.fs",
"sha256": "50f81aa8c225e2974405715da487441a92ef225039c84374534ac5d0fd3985f9",
"bytes": 12025
},
{
"path": "RayTracer/TriangleMeshes/PLYParser.fs",
"sha256": "ab935fe6ea41f54aa4e60bae203c74bdfbeb3855f3432d52ff2c424aa25f82f9",
"bytes": 11748
},
{
"path": "RayTracer/TriangleMeshes/TriangleMes.fs",
"sha256": "97c76e42d47a7842983cd5dbca5e4bb99d1fba3d16f9f3ff4c6fbf0d691a815f",
"bytes": 5803
},
{
"path": "RayTracer/packages.config",
"sha256": "8345d499882d0c22eb48754f2ba271b773414459a6d2bdc8fb43b4882b5ba468",
"bytes": 142
},
{
"path": "RayTracer/packages.lock.json",
"sha256": "0ff1eeeed5e7286beb426f89e0af6c931b0173b415bb1890c40aee1bcd7aebf3",
"bytes": 1258
},
{
"path": "SceneAssets/CheckLegacyPly.fsx",
"sha256": "d924456b5d3e7f54545006d7d9224d8a26e70e434ca754336c3d372694e8b7fd",
"bytes": 1758
},
{
"path": "SceneAssets/Checks.fs",
"sha256": "6a43e3767b39109dbde97babeb97a28db60692c32e395b7d36aae2ee6777991a",
"bytes": 4341
},
{
"path": "SceneAssets/Geometry.fs",
"sha256": "3e9fe6f03f91055efaedbb6244311dbd22059309bf09d1f9599a5be2f9b6a935",
"bytes": 3382
},
{
"path": "SceneAssets/Meshes.fs",
"sha256": "1ec55c8835de7fe0260f52b93de79c748bc2647384a3ea815516d2f19137090c",
"bytes": 31156
},
{
"path": "SceneAssets/Program.fs",
"sha256": "b002eae5e98e1eea7c82d771e55ebf7b968e86316876c5ea7c178ecf5b0042c2",
"bytes": 10540
},
{
"path": "SceneAssets/README.md",
"sha256": "aae28908b2750664bb6f7233a55d5db2da8ef259064095098d72d9855aa7b708",
"bytes": 8001
},
{
"path": "SceneAssets/SceneAssets.fsproj",
"sha256": "811600a04d6c06bdacc577d0303ea671cfeabe92b469d3ba6f4ca604f574d40f",
"bytes": 779
},
{
"path": "SceneAssets/Scenes.fs",
"sha256": "4a9847374ff50069f3b6bcb63224b1fac76618457f323fd391f7642fb36db1cd",
"bytes": 33852
},
{
"path": "SceneAssets/Textures.fs",
"sha256": "5c7099807c20d60b5bc9af4cf3301b42d144db7ea23b68199ec82aaf800d8f90",
"bytes": 5710
},
{
"path": "SceneAssets/packages.lock.json",
"sha256": "199c8bc5f22115369e727497a84f5d36eb21d9977c08550d97e50765a2bdacd3",
"bytes": 1092
},
{
"path": "SceneFormat/SceneFormat.fs",
"sha256": "2c40dee2ccf30c508287fa53e2dbdd4940d0bee30a1141f794f555d7d0b70c30",
"bytes": 14906
},
{
"path": "SceneFormat/SceneFormat.fsproj",
"sha256": "1c3cf567e631a53b7f09a5773669bf0a8a46319fa9e366384b5cf3ab963e28b3",
"bytes": 263
},
{
"path": "SceneFormat/packages.lock.json",
"sha256": "5f9ce5f37838c7781cfcfc91dc777595b1e3f2462ec88765cbb802f6c8ed3de8",
"bytes": 306
},
{
"path": "TracerTest/AffineTransformations.fs",
"sha256": "35afeb6a3db21d4da4962119389dced136fb702a9167b99b5685b008ad27237e",
"bytes": 5724
},
{
"path": "TracerTest/AmbientOcclusion.fs",
"sha256": "1476f1531135620f9f437db2a2b77d7172cf2f96e852019671a7eb2345a126a9",
"bytes": 1756
},
{
"path": "TracerTest/App.config",
"sha256": "ae5e7fa8373b273fad07e0486cebfd88c18f9517ba609c2b8e6534f5d9e53dcb",
"bytes": 189
},
{
"path": "TracerTest/AreaLight.fs",
"sha256": "80463f3e509037e72723f9fc9f89d2bd11b45dbfde90e5ede69fa0b195789db7",
"bytes": 5548
},
{
"path": "TracerTest/AssemblyInfo.fs",
"sha256": "6da8bbc6dc0309f64781f4fdcab2de697ed49b96301498606f81d6371793b7d7",
"bytes": 1500
},
{
"path": "TracerTest/CSG.fs",
"sha256": "1460578f91dcdf74f13e897b9a51e08904d41a64b669e9ba67200fd512cd91b4",
"bytes": 8934
},
{
"path": "TracerTest/ImplicitSurfaces.fs",
"sha256": "07bc5a09d3ac80edeb17aac307a1c90281c4db95b60b64be7d7ca63d47a45be5",
"bytes": 6483
},
{
"path": "TracerTest/Light.fs",
"sha256": "694ad2c9e66089988b28f79f5df0773e73d00e4cc00a3602a728772103863674",
"bytes": 2924
},
{
"path": "TracerTest/Material.fs",
"sha256": "8f96aaa69d7c0547b5c59986f15b9af37143859657cf6afa065e0cedbfd5902f",
"bytes": 8080
},
{
"path": "TracerTest/Meshes.fs",
"sha256": "2609f018caa2ab943e02085bb1b906dadec56df0e3920e58c8830ee87ec09e5d",
"bytes": 18602
},
{
"path": "TracerTest/Program.fs",
"sha256": "d154a26ff8cb0f0f92673f8231c3a98dfdc7a23b5ec633e5913d79d6d278a987",
"bytes": 5069
},
{
"path": "TracerTest/Shapes.fs",
"sha256": "d5c101296c6a29fd5ec3ecb6ed9a871fe316f0fc4b1774639e921c86afc83ce9",
"bytes": 5511
},
{
"path": "TracerTest/Texture.fs",
"sha256": "b3d1d43ceefad6f8864a93cbf2b83dcdabf6e578fc88a44c7eecc86ec4ee975b",
"bytes": 10286
},
{
"path": "TracerTest/ThinLens.fs",
"sha256": "fadc1f53890af1d3d6e8d32770e0de81c048639c7a2fe7a1e69e7f242b603ee4",
"bytes": 3626
},
{
"path": "TracerTest/TracerTest.fsproj",
"sha256": "ca185593fe700d69f434c675df6a47fec7a7dedeebd5e9e285f918cb44742f18",
"bytes": 1230
},
{
"path": "TracerTest/Transparency.fs",
"sha256": "181c623df92cedf9860bfd5ad6a04440dee1aa8ef338d3de4cb5e4abb8fe9b14",
"bytes": 18745
},
{
"path": "TracerTest/Util.fs",
"sha256": "2a027ef9c3bba35c80bf8f1d68d23876d07acd9f05cfcdaf571eb71770079015",
"bytes": 7887
},
{
"path": "TracerTest/packages.config",
"sha256": "4932f5463ce34bb3a33df3673c83721cdbbd256599e67066e3debb46b1585fd4",
"bytes": 145
},
{
"path": "TracerTest/packages.lock.json",
"sha256": "875be7c920aec172bd8a5c844d2a950e241dca858c2f65635ce389db89bf003f",
"bytes": 1436
},
{
"path": "UnitTests/AccelerationRegressionTests.fs",
"sha256": "c898b710ccb542ef2c1ae82c4cdc30107c00af9d91dc934940c4083b5005bf2d",
"bytes": 18300
},
{
"path": "UnitTests/App.config",
"sha256": "8173d4d17cb728e6f2c5e2ce8124ce7eb0f459dc62085bcaab786abf1f6b37a7",
"bytes": 184
},
{
"path": "UnitTests/AssemblyInfo.fs",
"sha256": "4e3dcd32d1ee57112d1bced36953200621cf0a015d32bcc756bd0762ab374c11",
"bytes": 1439
},
{
"path": "UnitTests/Assert.fs",
"sha256": "b42d5ee616fcfb83c6c844a21db945e6f498c22e0d6a6710e18d16ab1c24b3d5",
"bytes": 1727
},
{
"path": "UnitTests/BVH/BVHTest.fs",
"sha256": "541f6bb461bebb85be3a7e979d146de6dafaf736faf5a6e678dc99f5d3242b40",
"bytes": 4651
},
{
"path": "UnitTests/GeometryRegressionTests.fs",
"sha256": "6d5be0a9a9bb6e23a2565798b32fcea009b5d3ab2213a5dab6a6ed38d824cef2",
"bytes": 11030
},
{
"path": "UnitTests/ImageIOTests.fs",
"sha256": "6da7198dfbb449ff40f9d448325cfc1de69604d6f5408b70d9c8c39ad067897c",
"bytes": 3947
},
{
"path": "UnitTests/ImplicitSurfaces/ExprParseTests.fs",
"sha256": "0476dd3ec62b5ebb0f9a6e0bfaae74ab2f648df9b92aeb8f4f0bcab43edc2e7c",
"bytes": 4614
},
{
"path": "UnitTests/ImplicitSurfaces/ExprToPolyTests.fs",
"sha256": "506baf39c5ccaa4f38608fafb20b6e7a53b39fce26b1f4490a8e0993e20191fe",
"bytes": 7041
},
{
"path": "UnitTests/ImplicitSurfaces/ExprToPolyTests2.fs",
"sha256": "c3c3519698c6c4cfe1fb15382d1e8cff0b66b325472da735788901474a505b92",
"bytes": 4594
},
{
"path": "UnitTests/ImplicitSurfaces/ImplicitSurfacesTests.fs",
"sha256": "9016a41bc2452ae8a266b6a0953c886041fd715b8beeb9638f9580692b74764b",
"bytes": 6891
},
{
"path": "UnitTests/ImplicitSurfaces/PolyToUnipolyTests.fs",
"sha256": "671c59ad91d0d3949518677c50038b641c8b58cdd4883dd69cc4c74212725cf3",
"bytes": 1574
},
{
"path": "UnitTests/LightingRegressionTests.fs",
"sha256": "5cff0c2d86e9d9b6bcdd52ce441844feb286af2dda80b9ec1595d2da1469ce3a",
"bytes": 9394
},
{
"path": "UnitTests/MeshRegressionTests.fs",
"sha256": "920c701897188ea08b78db97654ebbee14794247d5f754b3b9bd7d454affff2c",
"bytes": 12418
},
{
"path": "UnitTests/NumericalRegressionTests.fs",
"sha256": "d1085cb959073b3de0e8df6dc1ce64a951d9636b0879bbd87486610c9f8df8ad",
"bytes": 5338
},
{
"path": "UnitTests/Program.fs",
"sha256": "f83b07cd46ad161b4a5f6e06c527fd3a14df54a8ea9b58038e6701f188978621",
"bytes": 2841
},
{
"path": "UnitTests/README.md",
"sha256": "dffc2d9067bbb60fd06cc8a9c47728bcb0067cb2746875a24625149d3eefdff9",
"bytes": 1065
},
{
"path": "UnitTests/RG/RegularGridsTest.fs",
"sha256": "9c00f34e12c2df2336bff41b2e6ab93ebc5a1ca09fb0664375ac438b8de1f133",
"bytes": 1114
},
{
"path": "UnitTests/SamplingTest.fs",
"sha256": "377508b5f5297dffba216e3a001127383600663ed30390d9bc779cb4d1762ea6",
"bytes": 5653
},
{
"path": "UnitTests/ShapeTest.fs",
"sha256": "5d9488ee05408ec814f021f13d87c3c77f745f851fd8c704c6ef97a2ca4a7192",
"bytes": 19409
},
{
"path": "UnitTests/TransformationTest.fs",
"sha256": "dd6d3a623dc463b6d67b3a0d12c2c2736eb72e7f79ba55d3d18d4aa5b2148040",
"bytes": 8182
},
{
"path": "UnitTests/UnitTests.fsproj",
"sha256": "6ba6632d7a911eca9cb30a423033e73fc68bd16e96802fb57d4273720592c636",
"bytes": 1431
},
{
"path": "UnitTests/packages.config",
"sha256": "8345d499882d0c22eb48754f2ba271b773414459a6d2bdc8fb43b4882b5ba468",
"bytes": 142
},
{
"path": "UnitTests/packages.lock.json",
"sha256": "875be7c920aec172bd8a5c844d2a950e241dca858c2f65635ce389db89bf003f",
"bytes": 1436
},
{
"path": "benchmarks/gold-dragon.json",
"sha256": "fc5a7e3962144f45b9d559ac2a0d573eaa3d25dbb70a675444e40e228fbc67b9",
"bytes": 1344
},
{
"path": "benchmarks/legacy/LegacyRayTracer.fsproj",
"sha256": "04fa2165384129ddd83b5279956920959e8de5ff2550fec455a14295572de091",
"bytes": 4965
},
{
"path": "benchmarks/legacy/README.md",
"sha256": "2af6d4345fd99ecccaa85f3ef59e8574d15288298abca3bcda4dc7312ca99f22",
"bytes": 3992
},
{
"path": "benchmarks/legacy/Runner/LegacyRunner.fsproj",
"sha256": "1b82fed7bc33fccad2514048f80f32be3dd45b17dec315f992def5a7f60fac81",
"bytes": 866
},
{
"path": "benchmarks/legacy/Runner/packages.lock.json",
"sha256": "cb3479bf5062d82549e852052bf6f384835249c1c34d4dd707707f3c3f369a3a",
"bytes": 1580
},
{
"path": "benchmarks/legacy/adapted/Acceleration/RegularGrids.fs",
"sha256": "0030bcdcf4520f711e89971133cd8e34d7cd8ba58a47376e718fb2024ff1b8a8",
"bytes": 9453
},
{
"path": "benchmarks/legacy/adapted/Core/Foundation.fs",
"sha256": "47f9b93fab5b165acb1c665f6e0b43d445fb0af71df56b3112d8ec7a2ff318f9",
"bytes": 4768
},
{
"path": "benchmarks/legacy/adapted/Core/Vector.fs",
"sha256": "1ace79558b6f799c3f1355d646ad4f6ec83c174c07df86c77656cd3de3ba10dd",
"bytes": 2710
},
{
"path": "benchmarks/legacy/adapted/Render.fs",
"sha256": "0040ec8a580e32d9799556af32010024e27bfc46863c49f32e693dffc1cd8394",
"bytes": 8985
},
{
"path": "benchmarks/legacy/adapted/Sampling/Sampling.fs",
"sha256": "13bb63faa77e71ed0265e8b4dd1802a5457e06aecbf1313d78e4d1bb0ac662bd",
"bytes": 15606
},
{
"path": "benchmarks/legacy/adapted/Sampling/Sampling.fsi",
"sha256": "12ccfa2d685fe85fd07da5485874a05810372e517fe473f6487a44a09a5c9a26",
"bytes": 603
},
{
"path": "benchmarks/legacy/baseline.json",
"sha256": "c9b7542c80afbe961d904e61bfbaa842524fdc7446019953154efddf496d9ba0",
"bytes": 565
},
{
"path": "benchmarks/legacy/original/RayTracer/API.fs",
"sha256": "97dc6097f629a918cf2f821a9060f37eefa913e8deed17ac671c11064908dca0",
"bytes": 10044
},
{
"path": "benchmarks/legacy/original/RayTracer/API.fsi",
"sha256": "62eab4d1c9b3d0e5cebce8d7c72cea9ba2ccb09c8547c3c8a086a8b0f49fe885",
"bytes": 14359
},
{
"path": "benchmarks/legacy/original/RayTracer/API/API.fs",
"sha256": "06335940c3bcf7b10095c1b2241c77b7566eb954c76969fe7391de88bf012c47",
"bytes": 10057
},
{
"path": "benchmarks/legacy/original/RayTracer/API/API.fsi",
"sha256": "9db49c4c48bcb8550aa5f786df4e70ab032985ebd24602a6b55a5243d5e14e18",
"bytes": 14387
},
{
"path": "benchmarks/legacy/original/RayTracer/Acceleration/Acceleration.fs",
"sha256": "2749f2a8651e80f56011ebac8610c84a4ecbe8507699806d842ca76c4d34fd41",
"bytes": 2214
},
{
"path": "benchmarks/legacy/original/RayTracer/Acceleration/BVH.fs",
"sha256": "a83ba4d0fe4ed26eac747a8c7564801114ae0ad611d29c46b6c9339055456594",
"bytes": 10503
},
{
"path": "benchmarks/legacy/original/RayTracer/Acceleration/KDTree.fs",
"sha256": "d4da8373ba71efcab40633733b48e3fb14d695449af8be751f88ea860b807cbb",
"bytes": 16188
},
{
"path": "benchmarks/legacy/original/RayTracer/Acceleration/RegularGrids.fs",
"sha256": "184d13d1d2bb46b517c42654f6ef7f2dd69239a34e0d8ccc2720e230b500a09c",
"bytes": 9449
},
{
"path": "benchmarks/legacy/original/RayTracer/App.config",
"sha256": "8173d4d17cb728e6f2c5e2ce8124ce7eb0f459dc62085bcaab786abf1f6b37a7",
"bytes": 184
},
{
"path": "benchmarks/legacy/original/RayTracer/AssemblyInfo.fs",
"sha256": "076327f6c028480a9e7bda7ae14cafeb70375cbb6d1c9d6ed74522005d3a78c7",
"bytes": 1448
},
{
"path": "benchmarks/legacy/original/RayTracer/Camera/Camera.fs",
"sha256": "ae7ae69898a1a49b64de0b57572b207f49786120c4bdb1210cc79df2a7f1db71",
"bytes": 877
},
{
"path": "benchmarks/legacy/original/RayTracer/Camera/PinholeCamera.fs",
"sha256": "b6467decd58d4682e9519607d58ec8c43dfb49bc7150d83db22792fd2f4b64b0",
"bytes": 773
},
{
"path": "benchmarks/legacy/original/RayTracer/Camera/ThinLensCamera.fs",
"sha256": "39667f841c6032c16660c5070160a3a2427e2373934ebd0d4762d0c9ee6d5925",
"bytes": 1408
},
{
"path": "benchmarks/legacy/original/RayTracer/Core/BBox.fs",
"sha256": "157eb519a89fa76650dc084ad25e87f75434efc805badac217907058b662c4db",
"bytes": 4075
},
{
"path": "benchmarks/legacy/original/RayTracer/Core/Colour.fs",
"sha256": "ac3a0ae068a72bacfbcd257e15cd088d4eae95766d12a20b2e19bd8e37bb1131",
"bytes": 2459
},
{
"path": "benchmarks/legacy/original/RayTracer/Core/Foundation.fs",
"sha256": "82fdb5e1214a695adb343366e9e4aa6b07533ba30a8b854954407180c00d3114",
"bytes": 4789
},
{
"path": "benchmarks/legacy/original/RayTracer/Core/Point.fs",
"sha256": "49808bd59e0db631068f8b301bc06ca68593773f1ad5218d9974259d66774e00",
"bytes": 2949
},
{
"path": "benchmarks/legacy/original/RayTracer/Core/Ray.fs",
"sha256": "0bfaac6cbdb91e984497ba08b7604c0d43e63974f8dcdeb1f6470fb7320bab71",
"bytes": 908
},
{
"path": "benchmarks/legacy/original/RayTracer/Core/Vector.fs",
"sha256": "915d797dc8ce3401c9a99fb523c0dc645c4d537b935b6bd3ee6a9c441b531ee4",
"bytes": 2701
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprParse.fs",
"sha256": "7f44183929596f3029a05d76c91d3fd05213200f0c5a5e82db6972a4b55cddc3",
"bytes": 7434
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprParse.fsi",
"sha256": "a0ecc9a21cc3bd40c62192881a82c4e2b304f4ba34347c7bce763f3ecfbc7c27",
"bytes": 658
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprToPoly.fs",
"sha256": "0205831b3bdc58baa0fff89e89a34f4df4a845803cc82e6d506e1410ef989fd4",
"bytes": 12973
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ExprToPoly.fsi",
"sha256": "f81a02ec47a4392c4da91fbc44224f440a06d52178dadc453aa06262e3985f69",
"bytes": 874
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ImplicitSurfaces.fs",
"sha256": "dcd19ca89049bad1eb74bc2445e8192ccb41aa3ed452f744b807e9f9761e10ea",
"bytes": 9928
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/ImplicitSurfaces.fsi",
"sha256": "a5af79c03baf0373dcca3eefe8a9c606e56a8824287f2282de8e54edb51adcca",
"bytes": 752
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/PolyToUnipoly.fs",
"sha256": "e8b724f87efaf9d13ca13258062b350b983aa14d387b977cc9988dbc1e322070",
"bytes": 7839
},
{
"path": "benchmarks/legacy/original/RayTracer/ImplicitSurfaces/PolyToUnipoly.fsi",
"sha256": "ab96411c7996bf25c2468c4a3301a3b8c1751b96f97def5b20c32eac119a2817",
"bytes": 874
},
{
"path": "benchmarks/legacy/original/RayTracer/Lights/AreaLight.fs",
"sha256": "5e2a18fd846b802489f5fd0a76cf15e03f271e463b58bbbfe9240b420e79010a",
"bytes": 6687
},
{
"path": "benchmarks/legacy/original/RayTracer/Lights/BasicLight.fs",
"sha256": "0d176b69b1ab5fa2bc103c03896c0a2b697eb8e9a601cb203ae7afea66cf6bef",
"bytes": 1274
},
{
"path": "benchmarks/legacy/original/RayTracer/Lights/GlobalLight.fs",
"sha256": "f5fd1cd76bdb20fe2348ec5f1ae50ce9cc54b0dfba9391301425654e8e26b7f3",
"bytes": 2350
},
{
"path": "benchmarks/legacy/original/RayTracer/Materials/Materials.fs",
"sha256": "633504c0cd6e64b1fef47fbbf61abf47e478043a29207129116a8b78d578b976",
"bytes": 13925
},
{
"path": "benchmarks/legacy/original/RayTracer/Materials/Textures.fs",
"sha256": "e7971d6e0b3697c7da75e7af97d78b8bee9cdfbbf8f55247a421635b1402b0e2",
"bytes": 296
},
{
"path": "benchmarks/legacy/original/RayTracer/Materials/Textures.fsi",
"sha256": "a167a98b1eb95cf7e3ed56890c6bd668dd67d1faa3dcd8b48eb428ab181ff71a",
"bytes": 268
},
{
"path": "benchmarks/legacy/original/RayTracer/Program2.fs",
"sha256": "f4620ea9b3ab45100cd31701cf757a2dfa8308cf5f152b091e290e5507d8117e",
"bytes": 5398
},
{
"path": "benchmarks/legacy/original/RayTracer/RayTracer.fsproj",
"sha256": "f2a654e1d895c8c8d298f5867d0e87246ab142874148b6335c9fc0ad0384de50",
"bytes": 7499
},
{
"path": "benchmarks/legacy/original/RayTracer/Render.fs",
"sha256": "aadd7394df97eedf466e28883620ec755446e0633fa4144ca18b9cd1a5d6ab3a",
"bytes": 9849
},
{
"path": "benchmarks/legacy/original/RayTracer/Sampling/Sampling.fs",
"sha256": "1dd97552b308fa7d7ca6824dbab59ef081a6508fa2993fad9eaa2fbf8e7d09f7",
"bytes": 15542
},
{
"path": "benchmarks/legacy/original/RayTracer/Sampling/Sampling.fsi",
"sha256": "12ccfa2d685fe85fd07da5485874a05810372e517fe473f6487a44a09a5c9a26",
"bytes": 603
},
{
"path": "benchmarks/legacy/original/RayTracer/Scene.fs",
"sha256": "8d9b0b3164c0e343d6468f54c3a3764cb08b6c040f4979360179a05f55d04f8a",
"bytes": 633
},
{
"path": "benchmarks/legacy/original/RayTracer/Shapes/BaseShape.fs",
"sha256": "4350d846a61ebdfa46a77d8cf648aa0573a23a83fa5c6a844187a915be594eb0",
"bytes": 1762
},
{
"path": "benchmarks/legacy/original/RayTracer/Shapes/CSG.fs",
"sha256": "d91d28e781ccb89952fedad26102aca5a373565e8ecfcb49a9a5560393c1f336",
"bytes": 13405
},
{
"path": "benchmarks/legacy/original/RayTracer/Shapes/Shapes.fs",
"sha256": "e8c36d34283a06561c17df2836517617bd663402a3f715d7fb063e4ae7136690",
"bytes": 29195
},
{
"path": "benchmarks/legacy/original/RayTracer/Transformation/Transformation.fs",
"sha256": "886884b38a6c6bc8f7c789882b9c6a7113fb1ca957f1cdce7c0a3846c73ac63d",
"bytes": 7252
},
{
"path": "benchmarks/legacy/original/RayTracer/Transformation/Transformation.fsi",
"sha256": "d806275f5289fa8bb47f033b8e07a64f6b603c20ffb3d0b677e20e5cdf6feb14",
"bytes": 1034
},
{
"path": "benchmarks/legacy/original/RayTracer/TriangleMesh/PLYParser.fs",
"sha256": "389a2b72e86df597489bad34c87fff5e4acb3a50e4f3f75419c9b86e23b36099",
"bytes": 11762
},
{
"path": "benchmarks/legacy/original/RayTracer/TriangleMesh/TriangleMesh.fs",
"sha256": "8ae87526409ddf043c0f176dc277438c33ba049e7c22f36e179bb98cd8659801",
"bytes": 5511
},
{
"path": "benchmarks/legacy/original/RayTracer/TriangleMeshes/PLYParser.fs",
"sha256": "ab935fe6ea41f54aa4e60bae203c74bdfbeb3855f3432d52ff2c424aa25f82f9",
"bytes": 11748
},
{
"path": "benchmarks/legacy/original/RayTracer/TriangleMeshes/TriangleMes.fs",
"sha256": "97c76e42d47a7842983cd5dbca5e4bb99d1fba3d16f9f3ff4c6fbf0d691a815f",
"bytes": 5803
},
{
"path": "benchmarks/legacy/original/RayTracer/packages.config",
"sha256": "8345d499882d0c22eb48754f2ba271b773414459a6d2bdc8fb43b4882b5ba468",
"bytes": 142
},
{
"path": "benchmarks/legacy/packages.lock.json",
"sha256": "0ff1eeeed5e7286beb426f89e0af6c931b0173b415bb1890c40aee1bcd7aebf3",
"bytes": 1258
},
{
"path": "benchmarks/legacy/portability.json",
"sha256": "7e45e991da594f03af9d5aa32063a9753303e38d80999baeb7445351b59325d2",
"bytes": 5668
},
{
"path": "benchmarks/legacy/prepare-port.fsx",
"sha256": "18084fbba4c26b6345faaddcce9e2e65f978bc180c7875b20a4169d5a86f6e7c",
"bytes": 10461
},
{
"path": "benchmarks/legacy/proof.fsx",
"sha256": "403586f706f5b80870ed236c5e0337f35a4d522d6a5f9dfa7400a5cefaed03f5",
"bytes": 4209
},
{
"path": "benchmarks/legacy/source.sha256",
"sha256": "e16be33a22219bf6a61a41b10eb407db9601b02e8ec37bbb5dce49574beb20fa",
"bytes": 6205
},
{
"path": "benchmarks/scenes/chair.json",
"sha256": "ce33b5f08b535ff21d44640557c93e295fcae9af1679cafb5cf84391f010ff4b",
"bytes": 28262
},
{
"path": "benchmarks/scenes/material-lab.json",
"sha256": "bf764d906f1812d17924bb2df0e8c8d46eed43ec1a7400ff44cb4100c2d1f051",
"bytes": 13119
},
{
"path": "benchmarks/scenes/provenance.json",
"sha256": "9688757e2a00cd41e034693313cddff4c69fe3b6863d0c2f2dda325d9224296b",
"bytes": 38990
},
{
"path": "benchmarks/scenes/roman-bust.json",
"sha256": "b8074042499dcf0f3dd1b601a179ba33ff316ccbf6409d74c3f4ef38e5da3f8c",
"bytes": 50954
},
{
"path": "benchmarks/scenes/sky-arena.json",
"sha256": "ffaf9a14d31aff8d7b8600562b11f84ee2e139b1fa5bc5d6706dfd57dab3ec4f",
"bytes": 59679
},
{
"path": "benchmarks/scenes/space-sentinel.json",
"sha256": "8036b0353a9d002df6fe71b8751a794c88eaa5167b43534cef550cf29a16d65e",
"bytes": 31942
},
{
"path": "global.json",
"sha256": "c39786ab1a147662bbe4db015f900165178875ec4a872ddae53bc0c90771ac34",
"bytes": 105
},
{
"path": "scripts/BenchmarkData.fs",
"sha256": "c8ad0ada8cbe1f817cb3c1294e570cbbcdd888927a5dbf011eb995aae387ecef",
"bytes": 20483
},
{
"path": "scripts/BenchmarkReport.fs",
"sha256": "638c4ed6a5ee8b995ba7b94f488913a7b6bbb8af80e467c50bfc458d6873ba21",
"bytes": 20376
},
{
"path": "scripts/benchmark-builder-tests.fsx",
"sha256": "e9f82ae19bb962f9ea751ba51f214d835e5a902f753335847c3b3cffc18d106a",
"bytes": 3181
},
{
"path": "scripts/benchmark-tests.fsx",
"sha256": "8c0a6bf75e5726b9ce195b48564d4d0e83ebd5e931707e79256b7b0f545b6759",
"bytes": 9277
},
{
"path": "scripts/benchmark-worker-tests.fsx",
"sha256": "24d3a2faca5b8340dfec2f2d0ae9bb6a80761cb3d21bdc5cab830a8a85c186d3",
"bytes": 11212
},
{
"path": "scripts/benchmark.fsx",
"sha256": "9fd29c5ff847ce0cf1b561ade7c02ac8e0b29c958e1542e6e4efd7425611c16f",
"bytes": 37575
},
{
"path": "scripts/prepare-gold-dragon.fsx",
"sha256": "29904b83e01ffce200f6fd15635b39369a63592b8109bf008a7a2f1eb4d70894",
"bytes": 4427
}
],
"dotnet": "/home/movj/.dotnet/dotnet",
"sdk": ".NET SDK:\n Version: 10.0.400\n Commit: 14fbf8d527\n Workload version: 10.0.400-manifests.330ea142\n MSBuild version: 18.9.6\u002B14fbf8d52\n\nRuntime Environment:\n OS Name: ubuntu\n OS Version: 24.04\n OS Platform: Linux\n RID: linux-x64\n Base Path: /home/movj/.dotnet/sdk/10.0.400/\n\n.NET workloads installed:\nThere are no installed workloads to display.\nConfigured to use workload sets when installing new manifests.\nNo workload sets are installed. Run \u0022dotnet workload restore\u0022 to install a workload set.\n\nHost:\n Version: 10.0.11\n Architecture: x64\n Commit: e2f47b0110\n\n.NET SDKs installed:\n 10.0.400 [/home/movj/.dotnet/sdk]\n\n.NET runtimes installed:\n Microsoft.AspNetCore.App 10.0.11 [/home/movj/.dotnet/shared/Microsoft.AspNetCore.App]\n Microsoft.NETCore.App 10.0.11 [/home/movj/.dotnet/shared/Microsoft.NETCore.App]\n\nOther architectures found:\n None\n\nEnvironment variables:\n Not set\n\nglobal.json file:\n /home/movj/code/dev/Ray_Tracer_FSharp/global.json\n\nLearn more:\n https://aka.ms/dotnet/info\n\nDownload .NET:\n https://aka.ms/dotnet/download",
"operatingSystem": "Ubuntu 24.04.2 LTS",
"architecture": "X64",
"cpu": "model name\t: Intel(R) Core(TM) Ultra 9 185H",
"gpuProbe": "NVIDIA RTX 3000 Ada Generation Laptop GPU, GPU-4acd4a56-4d85-7590-4669-043d3263a13b, 596.47, 8188 MiB",
"runtimeEnvironment": [
"DOTNET_TieredCompilation=\u003Cunset\u003E",
"DOTNET_TC_QuickJit=\u003Cunset\u003E",
"DOTNET_TC_QuickJitForLoops=\u003Cunset\u003E",
"DOTNET_ReadyToRun=\u003Cunset\u003E",
"DOTNET_gcServer=\u003Cunset\u003E",
"DOTNET_GCHeapHardLimit=\u003Cunset\u003E",
"DOTNET_PROCESSOR_COUNT=\u003Cunset\u003E",
"COMPlus_TieredCompilation=\u003Cunset\u003E",
"COMPlus_ReadyToRun=\u003Cunset\u003E",
"COMPlus_gcServer=\u003Cunset\u003E",
"CUDA_VISIBLE_DEVICES=\u003Cunset\u003E"
],
"dependencies": [
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/Basics.dll",
"sha256": "d944bf955c0dd3658c343f3fb83a0c35338b865f6083bb878fe0e79575591847",
"bytes": 400384
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/BenchmarkRunner.deps.json",
"sha256": "0dbbaa70c4dbb918c318fd1aa5525e9bb5933f016b61763572a47dd790c41729",
"bytes": 5818
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/BenchmarkRunner.dll",
"sha256": "52637a9c5cf2d00c39214adf398a2f56d80a90ebcbde3390046650d1e8560b84",
"bytes": 57344
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/BenchmarkRunner.runtimeconfig.json",
"sha256": "9950d4583cfc9a106857c0d5b8a75b53e8774852b57b80bc3823a74d44a4d87f",
"bytes": 330
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/FParsec.dll",
"sha256": "147154cd8e33699c1458cd7653b78d6c93c2ea272e9aeb3f838af95af2a82b23",
"bytes": 241152
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/FParsecCS.dll",
"sha256": "1822de41fcf78bf92de841f03e9a5c78db7fb1eb19cf699f78e06f064e0d4013",
"bytes": 104448
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/FSharp.Core.dll",
"sha256": "63797dea63b00ca2081d71827cecbb5425956886b4c3b06947e7ae561a43e366",
"bytes": 2405672
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/RayTracer.ImageIO.dll",
"sha256": "449f305e2c3411ec46225eaf1a3b72bc9edbe2492a8c8d74acc376972b98521d",
"bytes": 10752
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/SceneFormat.dll",
"sha256": "76b5d3eb851e95ccacd3c52f595c3384061a0b5a6089f83718e18a3ce9a57242",
"bytes": 69120
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/StbImageSharp.dll",
"sha256": "0ff268f51876e7924192c70a164bac8da402ed0a3ca30e9d2a2840e7f0deda84",
"bytes": 77312
},
{
"path": "/home/movj/code/dev/Ray_Tracer_FSharp/BenchmarkRunner/bin/Release/net10.0/StbImageWriteSharp.dll",
"sha256": "70921000beb9ca762a8acdb93ac6f6c39db8a351a6fa12aca3eddbc652855f04",
"bytes": 37376
}
],
"dependencyDescriptions": [
"{\n \u0022runtimeTarget\u0022: {\n \u0022name\u0022: \u0022.NETCoreApp,Version=v10.0\u0022,\n \u0022signature\u0022: \u0022\u0022\n },\n \u0022compilationOptions\u0022: {},\n \u0022targets\u0022: {\n \u0022.NETCoreApp,Version=v10.0\u0022: {\n \u0022BenchmarkRunner/1.0.0\u0022: {\n \u0022dependencies\u0022: {\n \u0022Basics\u0022: \u00221.0.0\u0022,\n \u0022FSharp.Core\u0022: \u002210.1.400\u0022,\n \u0022RayTracer.ImageIO\u0022: \u00221.0.0\u0022,\n \u0022SceneFormat\u0022: \u00221.0.0\u0022,\n \u0022Basics.Reference\u0022: \u00221.0.0.0\u0022\n },\n \u0022runtime\u0022: {\n \u0022BenchmarkRunner.dll\u0022: {}\n }\n },\n \u0022FParsec/1.1.1\u0022: {\n \u0022dependencies\u0022: {\n \u0022FSharp.Core\u0022: \u002210.1.400\u0022\n },\n \u0022runtime\u0022: {\n \u0022lib/netstandard2.0/FParsec.dll\u0022: {\n \u0022assemblyVersion\u0022: \u00221.1.1.0\u0022,\n \u0022fileVersion\u0022: \u00221.1.1.0\u0022\n },\n \u0022lib/netstandard2.0/FParsecCS.dll\u0022: {\n \u0022assemblyVersion\u0022: \u00221.1.1.0\u0022,\n \u0022fileVersion\u0022: \u00221.1.1.0\u0022\n }\n }\n },\n \u0022FSharp.Core/10.1.400\u0022: {\n \u0022runtime\u0022: {\n \u0022lib/netstandard2.1/FSharp.Core.dll\u0022: {\n \u0022assemblyVersion\u0022: \u002210.1.0.0\u0022,\n \u0022fileVersion\u0022: \u002210.104.26.38015\u0022\n }\n },\n \u0022resources\u0022: {\n \u0022lib/netstandard2.1/cs/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022cs\u0022\n },\n \u0022lib/netstandard2.1/de/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022de\u0022\n },\n \u0022lib/netstandard2.1/es/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022es\u0022\n },\n \u0022lib/netstandard2.1/fr/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022fr\u0022\n },\n \u0022lib/netstandard2.1/it/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022it\u0022\n },\n \u0022lib/netstandard2.1/ja/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022ja\u0022\n },\n \u0022lib/netstandard2.1/ko/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022ko\u0022\n },\n \u0022lib/netstandard2.1/pl/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022pl\u0022\n },\n \u0022lib/netstandard2.1/pt-BR/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022pt-BR\u0022\n },\n \u0022lib/netstandard2.1/ru/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022ru\u0022\n },\n \u0022lib/netstandard2.1/tr/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022tr\u0022\n },\n \u0022lib/netstandard2.1/zh-Hans/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022zh-Hans\u0022\n },\n \u0022lib/netstandard2.1/zh-Hant/FSharp.Core.resources.dll\u0022: {\n \u0022locale\u0022: \u0022zh-Hant\u0022\n }\n }\n },\n \u0022StbImageSharp/2.30.16\u0022: {\n \u0022runtime\u0022: {\n \u0022lib/net8.0/StbImageSharp.dll\u0022: {\n \u0022assemblyVersion\u0022: \u00222.30.16.0\u0022,\n \u0022fileVersion\u0022: \u00222.30.16.0\u0022\n }\n }\n },\n \u0022StbImageWriteSharp/1.16.7\u0022: {\n \u0022runtime\u0022: {\n \u0022lib/netstandard2.0/StbImageWriteSharp.dll\u0022: {\n \u0022assemblyVersion\u0022: \u00221.16.7.0\u0022,\n \u0022fileVersion\u0022: \u00221.16.7.0\u0022\n }\n }\n },\n \u0022Basics/1.0.0\u0022: {\n \u0022dependencies\u0022: {\n \u0022FParsec\u0022: \u00221.1.1\u0022,\n \u0022FSharp.Core\u0022: \u002210.1.400\u0022,\n \u0022RayTracer.ImageIO\u0022: \u00221.0.0\u0022\n },\n \u0022runtime\u0022: {\n \u0022Basics.dll\u0022: {\n \u0022fileVersion\u0022: \u00220.0.0.0\u0022\n }\n }\n },\n \u0022RayTracer.ImageIO/1.0.0\u0022: {\n \u0022dependencies\u0022: {\n \u0022FSharp.Core\u0022: \u002210.1.400\u0022,\n \u0022StbImageSharp\u0022: \u00222.30.16\u0022,\n \u0022StbImageWriteSharp\u0022: \u00221.16.7\u0022\n },\n \u0022runtime\u0022: {\n \u0022RayTracer.ImageIO.dll\u0022: {\n \u0022assemblyVersion\u0022: \u00221.0.0.0\u0022,\n \u0022fileVersion\u0022: \u00221.0.0.0\u0022\n }\n }\n },\n \u0022SceneFormat/1.0.0\u0022: {\n \u0022dependencies\u0022: {\n \u0022FSharp.Core\u0022: \u002210.1.400\u0022\n },\n \u0022runtime\u0022: {\n \u0022SceneFormat.dll\u0022: {\n \u0022assemblyVersion\u0022: \u00221.0.0.0\u0022,\n \u0022fileVersion\u0022: \u00221.0.0.0\u0022\n }\n }\n },\n \u0022Basics.Reference/1.0.0.0\u0022: {\n \u0022runtime\u0022: {\n \u0022Basics.dll\u0022: {\n \u0022assemblyVersion\u0022: \u00221.0.0.0\u0022,\n \u0022fileVersion\u0022: \u00221.0.0.0\u0022\n }\n }\n }\n }\n },\n \u0022libraries\u0022: {\n \u0022BenchmarkRunner/1.0.0\u0022: {\n \u0022type\u0022: \u0022project\u0022,\n \u0022serviceable\u0022: false,\n \u0022sha512\u0022: \u0022\u0022\n },\n \u0022FParsec/1.1.1\u0022: {\n \u0022type\u0022: \u0022package\u0022,\n \u0022serviceable\u0022: true,\n \u0022sha512\u0022: \u0022sha512-Wdjf/gCNLEwd\u002B0nUCDh9jAIIcKGwfhRramySTnTcVVgNC6i4Vp5aJklUJJfvFkEZMYNZEDGcI8pCa36/TmwmSg==\u0022,\n \u0022path\u0022: \u0022fparsec/1.1.1\u0022,\n \u0022hashPath\u0022: \u0022fparsec.1.1.1.nupkg.sha512\u0022\n },\n \u0022FSharp.Core/10.1.400\u0022: {\n \u0022type\u0022: \u0022package\u0022,\n \u0022serviceable\u0022: true,\n \u0022sha512\u0022: \u0022sha512-mxCkXuBt4wyRMmHf4boZXm30zZZsjBt3\u002B9ISzXB8wFvJJAACrPPh9vj85Kqtxj/2FvDxAQnnRnJpNcJSXElhgA==\u0022,\n \u0022path\u0022: \u0022fsharp.core/10.1.400\u0022,\n \u0022hashPath\u0022: \u0022fsharp.core.10.1.400.nupkg.sha512\u0022\n },\n \u0022StbImageSharp/2.30.16\u0022: {\n \u0022type\u0022: \u0022package\u0022,\n \u0022serviceable\u0022: true,\n \u0022sha512\u0022: \u0022sha512-qg1i\u002BNHihXVKLKYacGKrauhSQIGL31eBWcTC4Vc7jnGmBFj87LkRuCdXB5aDZisWMRnB6x2mcfwYXQxMWEG/lw==\u0022,\n \u0022path\u0022: \u0022stbimagesharp/2.30.16\u0022,\n \u0022hashPath\u0022: \u0022stbimagesharp.2.30.16.nupkg.sha512\u0022\n },\n \u0022StbImageWriteSharp/1.16.7\u0022: {\n \u0022type\u0022: \u0022package\u0022,\n \u0022serviceable\u0022: true,\n \u0022sha512\u0022: \u0022sha512-NF9kOxi0iS9VunklnRKgOpAWC2knCGKRjdy7RT6XAqYNyb7LQfyPHPdl4l1fJw7TFYKrGQzQOmK1XpBONC2MoA==\u0022,\n \u0022path\u0022: \u0022stbimagewritesharp/1.16.7\u0022,\n \u0022hashPath\u0022: \u0022stbimagewritesharp.1.16.7.nupkg.sha512\u0022\n },\n \u0022Basics/1.0.0\u0022: {\n \u0022type\u0022: \u0022project\u0022,\n \u0022serviceable\u0022: false,\n \u0022sha512\u0022: \u0022\u0022\n },\n \u0022RayTracer.ImageIO/1.0.0\u0022: {\n \u0022type\u0022: \u0022project\u0022,\n \u0022serviceable\u0022: false,\n \u0022sha512\u0022: \u0022\u0022\n },\n \u0022SceneFormat/1.0.0\u0022: {\n \u0022type\u0022: \u0022project\u0022,\n \u0022serviceable\u0022: false,\n \u0022sha512\u0022: \u0022\u0022\n },\n \u0022Basics.Reference/1.0.0.0\u0022: {\n \u0022type\u0022: \u0022reference\u0022,\n \u0022serviceable\u0022: false,\n \u0022sha512\u0022: \u0022\u0022\n }\n }\n}"
],
"notes": [
"All worker processes execute serially. Each measured repeat is a fresh process; separate warmups do not remove measured JIT/startup cost.",
"legacy-port retains the ineffective legacy random seeding, schedule-dependent samples, shared triangle barycentric races, original transport and forced cleanup GC.",
"DOTNET_PROCESSOR_COUNT is set to requested threads for every worker. Legacy keeps its original Parallel.For scheduling; this is not a per-OS-thread hard cap.",
"Renderer precision and PFM float32 storage precision differ. PFM retains unclamped linear HDR values, not gamma-encoded PNG values.",
"Source digest hashes tracked and nonignored untracked working-tree source, including dirty file contents and missing tracked files; not merely the git SHA.",
"Worker phases marked unavailable are not observations. Failure metrics are retained verbatim but never included as zero-valued timings.",
"Existing/override assemblies were explicitly requested: binary hashes are retained, but this invocation did not establish source-to-binary build correspondence."
]
}Measured phase and memory summaries
Cells: median and interquartile range. Hover for min/max, median absolute deviation and number of observations. Allocation is process-wide managed allocation; memory peaks are not interchangeable with allocations.
| Case | Engine / completion | cold | worker-total | load | build | compile | upload | trace-synchronized | download | encode | cleanup | allocated | peak-working-set | peak-device |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| quick / chair / authored256×256, camera 4, light 1, glossy 1, depth 2; 22 threads, tile 16; float64, regular, gamma2 | cpu1/1 successful | 3709.631 msIQR 3709.631–3709.631 | 3611.306 msIQR 3611.306–3611.306 | 389.842 msIQR 389.842–389.842 | 87.908 msIQR 87.908–87.908 | unavailable | unavailable | 2982.769 msIQR 2982.769–2982.769 | unavailable | 108.997 msIQR 108.997–108.997 | 0.023 msIQR 0.023–0.023 | 7396.01 MiBIQR 7396.01–7396.01 | 91.75 MiBIQR 91.75–91.75 | unavailable |
Before / after gallery
quick / chair / authored
cpu: cold median 3709.631 ms