diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2a418416..df7752e7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -3,55 +3,33 @@ name: FileOnQ.Imaging.Raw on: push: branches: [ main ] + tags: [ 'v*', 'v*-preview-*'] pull_request: branches: [ main ] jobs: build: - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'AnyCPU' - library: 'library' - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'x64' - library: 'library' - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'x86' - library: 'library' - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'AnyCPU' - library: 'nuget' - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'x64' - library: 'nuget' - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'x86' - library: 'nuget' - + runs-on: windows-2019 + outputs: + package_version: ${{ env.PACKAGE_VERSION }} steps: - uses: actions/checkout@v2 with: submodules: 'true' + - name: Ensure .NET 5 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 5.0.302 + + - name: Ensure .NET 6 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.101 - name: Install CUDA env: - cuda: ${{ matrix.cuda }} - visual_studio: ${{ matrix.visual_studio }} + cuda: 'CUDA-11.4.0' + visual_studio: 'Visual Studio 16 2019' shell: powershell run: .\build\cuda.ps1 @@ -63,27 +41,224 @@ jobs: ls $env:CUDA_PATH\bin ls $env:CUDA_PATH\include - - name: Setup .NET SDK - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 5.0.302 + - name: Set Version from Tag + if: startsWith(github.ref, 'refs/tags/v') == true + run: | + $version = "${{ github.ref }}" -replace "refs/tags/v", "" + echo "PACKAGE_VERSION=$version" >> $env:GITHUB_ENV + echo "Version: $version" - - name: Setup NuGet.exe - uses: NuGet/setup-nuget@v1.0.5 - with: - nuget-version: 5.x + - name: Set Version + if: startsWith(github.ref, 'refs/tags/v') == false && ${{ github.event_name != 'pull_request' }} + run: echo "PACKAGE_VERSION=1.0.0-dev.${{ GITHUB.RUN_NUMBER }}" >> $env:GITHUB_ENV + + - name: Set Version for PR + if: ${{ github.event_name == 'pull_request' }} + run: echo "PACKAGE_VERSION=1.0.0-pr.${{ GITHUB.RUN_NUMBER }}" >> $env:GITHUB_ENV - name: Build - run: dotnet build src/FileOnQ.Imaging.Raw/FileOnQ.Imaging.Raw.csproj + run: dotnet build -c Release + working-directory: ./src/FileOnQ.Imaging.Raw - name: Pack NuGet - if: ${{ matrix.library == 'nuget' }} - run: dotnet pack src/FileOnQ.Imaging.Raw/FileOnQ.Imaging.Raw.csproj -c Release -o . /p:Version=0.0.0-local.1 /p:PackageVersion=0.0.0-local.1 + run: dotnet pack -c Release -o ../../ /p:ContinuousIntegrationBuild=true /p:Version=${{ env.PACKAGE_VERSION }} /p:PackageVersion=${{ env.PACKAGE_VERSION }} + working-directory: ./src/FileOnQ.Imaging.Raw + + - name: Upload NuGet Package + uses: actions/upload-artifact@v2 + with: + name: Packages + path: | + *.nupkg + *.snupkg + + test-integration: + needs: build + runs-on: ${{ matrix.os }} + strategy: + matrix: + include: + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net48' + - os: windows-2019 + architecture: 'x86' + framework: 'net48' + - os: windows-2019 + architecture: 'x64' + framework: 'net48' + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net5' + - os: windows-2019 + architecture: 'x86' + framework: 'net5' + - os: windows-2019 + architecture: 'x64' + framework: 'net5' + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net6' + - os: windows-2019 + architecture: 'x86' + framework: 'net6' + - os: windows-2019 + architecture: 'x64' + framework: 'net6' + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: 'true' + + - name: Ensure .NET 5 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 5.0.302 + + - name: Ensure .NET 6 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.101 + + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Copy Nupkg + shell: powershell + run: Copy-Item Packages\* -Destination . - - name: Test NuGet - if: ${{ matrix.library == 'nuget' }} - run: dotnet test --logger:"console;verbosity=detailed" tests/FileOnQ.Imaging.Raw.Tests.NuGet.${{ matrix.architecture }}/FileOnQ.Imaging.Raw.Tests.NuGet.${{ matrix.architecture }}.csproj --filter TestCategory=Integration + - name: Update NuGet + run: dotnet add package FileOnQ.Imaging.Raw --version ${{ needs.build.outputs.package_version }} + working-directory: ./tests/FileOnQ.Imaging.Raw.Tests.${{ matrix.architecture }} - - name: Test Library - if: ${{ matrix.library == 'library' }} - run: dotnet test --logger:"console;verbosity=detailed" tests/FileOnQ.Imaging.Raw.Tests.${{ matrix.architecture }}/FileOnQ.Imaging.Raw.Tests.${{ matrix.architecture }}.csproj --filter TestCategory=Integration + - name: Test ${{ matrix.architecture }} + run: dotnet test -c Release --logger:"console;verbosity=detailed" --filter TestCategory=Integration + working-directory: ./tests/FileOnQ.Imaging.Raw.Tests.${{ matrix.architecture }} + test-console-app: + needs: build + runs-on: ${{ matrix.os }} + strategy: + matrix: + include: + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net48' + - os: windows-2019 + architecture: 'x86' + framework: 'net48' + - os: windows-2019 + architecture: 'x64' + framework: 'net48' + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net5.0' + - os: windows-2019 + architecture: 'x86' + framework: 'net5.0' + - os: windows-2019 + architecture: 'x64' + framework: 'net5.0' + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net6.0' + - os: windows-2019 + architecture: 'x86' + framework: 'net6.0' + - os: windows-2019 + architecture: 'x64' + framework: 'net6.0' + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: 'true' + + - name: Ensure .NET 5 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 5.0.302 + + - name: Ensure .NET 6 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.101 + + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Copy Nupkg + shell: powershell + run: Copy-Item Packages\* -Destination . + + - name: Update NuGet + run: dotnet add package FileOnQ.Imaging.Raw --version ${{ needs.build.outputs.package_version }} + working-directory: ./samples/ConsoleApp + + - name: Run Console App + run: dotnet run -c Release -f ${{ matrix.framework }} /p:Platform=${{ matrix.architecture }} + working-directory: ./samples/ConsoleApp + + build-win-forms-app: + needs: build + runs-on: ${{ matrix.os }} + strategy: + matrix: + include: + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net48' + - os: windows-2019 + architecture: 'x86' + framework: 'net48' + - os: windows-2019 + architecture: 'x64' + framework: 'net48' + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net5.0-windows' + - os: windows-2019 + architecture: 'x86' + framework: 'net5.0-windows' + - os: windows-2019 + architecture: 'x64' + framework: 'net5.0-windows' + - os: windows-2019 + architecture: 'AnyCPU' + framework: 'net6.0-windows' + - os: windows-2019 + architecture: 'x86' + framework: 'net6.0-windows' + - os: windows-2019 + architecture: 'x64' + framework: 'net6.0-windows' + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: 'true' + + - name: Ensure .NET 5 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 5.0.302 + + - name: Ensure .NET 6 SDK + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 6.0.101 + + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Copy Nupkg + shell: powershell + run: Copy-Item Packages\* -Destination . + + - name: Update NuGet + run: dotnet add package FileOnQ.Imaging.Raw --version ${{ needs.build.outputs.package_version }} + working-directory: ./samples/WinForms + + - name: Build WinForms App + run: dotnet build -c Release -f ${{ matrix.framework }} /p:Platform=${{ matrix.architecture }} + working-directory: ./samples/WinForms diff --git a/.github/workflows/build_libraw.yml b/.github/workflows/build_libraw.yml deleted file mode 100644 index 5b57b8ea..00000000 --- a/.github/workflows/build_libraw.yml +++ /dev/null @@ -1,63 +0,0 @@ -name: LibRaw - -on: - push: - branches: [ main ] - pull_request: - types: [ labeled ] - -jobs: - build: - if: ${{ github.event.label.name == 'LibRaw' }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'AnyCPU' - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'x64' - - os: windows-2019 - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - architecture: 'x86' - - steps: - - uses: actions/checkout@v2 - with: - submodules: 'true' - - - name: Install CUDA - env: - cuda: ${{ matrix.cuda }} - visual_studio: ${{ matrix.visual_studio }} - shell: powershell - run: .\build\cuda.ps1 - - - name: Check NVCC - shell: powershell - run: | - nvcc -V - ls $env:CUDA_PATH - ls $env:CUDA_PATH\bin - ls $env:CUDA_PATH\include - - - name: Setup .NET SDK - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 5.0.302 - - - name: Setup NuGet.exe - uses: NuGet/setup-nuget@v1.0.5 - with: - nuget-version: 5.x - - - name: Build - run: dotnet build src/FileOnQ.Imaging.Raw/FileOnQ.Imaging.Raw.csproj - - - name: Test - run: dotnet test --logger:"console;verbosity=detailed" tests/FileOnQ.Imaging.Raw.Tests.${{ matrix.architecture }}/FileOnQ.Imaging.Raw.Tests.${{ matrix.architecture }}.csproj --filter TestCategory=LibRaw \ No newline at end of file diff --git a/.github/workflows/package_main.yml b/.github/workflows/package_main.yml deleted file mode 100644 index f515a06b..00000000 --- a/.github/workflows/package_main.yml +++ /dev/null @@ -1,72 +0,0 @@ -name: NuGet Package & Publish (1.0.0) - -# TODO - 8/2/2021 - @ahoefling - Add support for build tagging which will create a final build -on: - push: - branches: [ main ] - -jobs: - nuget-pack: - runs-on: windows-2019 - steps: - - uses: actions/checkout@v2 - with: - submodules: 'true' - - - name: Install CUDA - env: - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - shell: powershell - run: .\build\cuda.ps1 - - - name: Check NVCC - shell: powershell - run: | - nvcc -V - ls $env:CUDA_PATH - ls $env:CUDA_PATH\bin - ls $env:CUDA_PATH\include - - - name: Setup .NET SDK - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 5.0.302 - - - name: Setup NuGet.exe - uses: NuGet/setup-nuget@v1.0.5 - with: - nuget-version: 5.x - - - name: Set Dev Version - run: echo "PACKAGE_VERSION=1.0.0-dev.${{ GITHUB.RUN_NUMBER }}" >> $env:GITHUB_ENV - - - name: Build - run: dotnet build src/FileOnQ.Imaging.Raw/FileOnQ.Imaging.Raw.csproj -c Release - - - name: Pack - run: dotnet pack src/FileOnQ.Imaging.Raw/FileOnQ.Imaging.Raw.csproj -c Release -o . /p:ContinuousIntegrationBuild=true /p:Version=${{ env.PACKAGE_VERSION }} /p:PackageVersion=${{ env.PACKAGE_VERSION }} - - - name: Upload NuGet Package - uses: actions/upload-artifact@v2 - with: - name: Packages - path: | - *.nupkg - *.snupkg - - nuget-publish: - needs: nuget-pack - runs-on: windows-2019 - steps: - - name: Download Packages - uses: actions/download-artifact@v2 - with: - name: Packages - - - name: Set NuGet API Key - run: nuget setapikey ${{ secrets.NUGET_API_KEY }} - - - name: Publish NuGet Package - run: nuget push *.nupkg -Source https://api.nuget.org/v3/index.json - \ No newline at end of file diff --git a/.github/workflows/package_pr.yml b/.github/workflows/package_pr.yml deleted file mode 100644 index ea24934a..00000000 --- a/.github/workflows/package_pr.yml +++ /dev/null @@ -1,56 +0,0 @@ -name: NuGet Package PR (1.0.0) - -# TODO - 8/2/2021 - @ahoefling - Add support for build tagging which will create a final build -on: - pull_request: - branches: [ main ] - -jobs: - nuget-pack: - runs-on: windows-2019 - steps: - - uses: actions/checkout@v2 - with: - submodules: 'true' - - - name: Install CUDA - env: - cuda: 'CUDA-11.4.0' - visual_studio: 'Visual Studio 16 2019' - shell: powershell - run: .\build\cuda.ps1 - - - name: Check NVCC - shell: powershell - run: | - nvcc -V - ls $env:CUDA_PATH - ls $env:CUDA_PATH\bin - ls $env:CUDA_PATH\include - - - name: Setup .NET SDK - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 5.0.302 - - - name: Setup NuGet.exe - uses: NuGet/setup-nuget@v1.0.5 - with: - nuget-version: 5.x - - - name: Set PR Version - run: echo "PACKAGE_VERSION=1.0.0-pr.${{ GITHUB.RUN_NUMBER }}" >> $env:GITHUB_ENV - - - name: Build - run: dotnet build src/FileOnQ.Imaging.Raw/FileOnQ.Imaging.Raw.csproj -c Release - - - name: Pack - run: dotnet pack src/FileOnQ.Imaging.Raw/FileOnQ.Imaging.Raw.csproj -c Release -o . /p:ContinuousIntegrationBuild=true /p:Version=${{ env.PACKAGE_VERSION }} /p:PackageVersion=${{ env.PACKAGE_VERSION }} - - - name: Upload NuGet Package - uses: actions/upload-artifact@v2 - with: - name: Packages - path: | - *.nupkg - *.snupkg \ No newline at end of file diff --git a/FileOnQ.Imaging.Raw.sln b/FileOnQ.Imaging.Raw.sln index 840848cf..317dc312 100644 --- a/FileOnQ.Imaging.Raw.sln +++ b/FileOnQ.Imaging.Raw.sln @@ -49,14 +49,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConsoleApp", "samples\Conso EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinForms", "samples\WinForms\WinForms.csproj", "{4236B979-6BB0-4018-B0E7-62005B8E7D64}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FileOnQ.Imaging.Raw.Tests.NuGet.AnyCPU", "tests\FileOnQ.Imaging.Raw.Tests.NuGet.AnyCPU\FileOnQ.Imaging.Raw.Tests.NuGet.AnyCPU.csproj", "{B3749ABA-A118-421B-BF25-A923D441262E}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FileOnQ.Imaging.Raw.Tests.NuGet.x64", "tests\FileOnQ.Imaging.Raw.Tests.NuGet.x64\FileOnQ.Imaging.Raw.Tests.NuGet.x64.csproj", "{857D0761-1B7F-4B35-AFCB-A4F3E22690B0}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FileOnQ.Imaging.Raw.Tests.NuGet.x86", "tests\FileOnQ.Imaging.Raw.Tests.NuGet.x86\FileOnQ.Imaging.Raw.Tests.NuGet.x86.csproj", "{0174B67B-00C4-4785-8F2C-92C94445585F}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NuGet Tests", "NuGet Tests", "{C816DBD2-003D-43BA-8578-ECE95C457FFE}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{A0292365-CB98-4E07-864C-B6EB3BDEAB0E}" ProjectSection(SolutionItems) = preProject .editorconfig = .editorconfig @@ -70,16 +62,13 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Benchmarks", "Benchmarks", "{B0D71349-F748-4C98-ABF1-BEABC0350431}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FileOnQ.Imaging.Raw.Benchmarking", "benchmarks\tools\FileOnQ.Imaging.Raw.Benchmarking.csproj", "{83AA956C-0AD5-41AE-8271-61CAEE1EA345}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FileOnQ.Imaging.Raw.Benchmarking", "benchmarks\tools\FileOnQ.Imaging.Raw.Benchmarking.csproj", "{83AA956C-0AD5-41AE-8271-61CAEE1EA345}" EndProject Global GlobalSection(SharedMSBuildProjectFiles) = preSolution - tests\FileOnQ.Imaging.Raw.Tests\FileOnQ.Imaging.Raw.Tests.projitems*{0174b67b-00c4-4785-8f2c-92c94445585f}*SharedItemsImports = 5 tests\FileOnQ.Imaging.Raw.Tests\FileOnQ.Imaging.Raw.Tests.projitems*{11bfbb83-03ce-4310-b4bb-2beb3b6520c8}*SharedItemsImports = 5 tests\FileOnQ.Imaging.Raw.Tests\FileOnQ.Imaging.Raw.Tests.projitems*{65c523d2-f936-4e81-95eb-a69a5e3ece79}*SharedItemsImports = 5 tests\FileOnQ.Imaging.Raw.Tests\FileOnQ.Imaging.Raw.Tests.projitems*{6c1590f5-2c5a-4567-9974-4a61a4509967}*SharedItemsImports = 5 - tests\FileOnQ.Imaging.Raw.Tests\FileOnQ.Imaging.Raw.Tests.projitems*{857d0761-1b7f-4b35-afcb-a4f3e22690b0}*SharedItemsImports = 5 - tests\FileOnQ.Imaging.Raw.Tests\FileOnQ.Imaging.Raw.Tests.projitems*{b3749aba-a118-421b-bf25-a923d441262e}*SharedItemsImports = 5 tests\FileOnQ.Imaging.Raw.Tests\FileOnQ.Imaging.Raw.Tests.projitems*{c959d0fb-ad1c-4f59-905f-8fc5fe836350}*SharedItemsImports = 13 EndGlobalSection GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -303,38 +292,6 @@ Global {4236B979-6BB0-4018-B0E7-62005B8E7D64}.Release|x64.Build.0 = Release|Any CPU {4236B979-6BB0-4018-B0E7-62005B8E7D64}.Release|x86.ActiveCfg = Release|Any CPU {4236B979-6BB0-4018-B0E7-62005B8E7D64}.Release|x86.Build.0 = Release|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Debug|x64.ActiveCfg = Debug|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Debug|x64.Build.0 = Debug|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Debug|x86.ActiveCfg = Debug|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Debug|x86.Build.0 = Debug|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Release|Any CPU.Build.0 = Release|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Release|x64.ActiveCfg = Release|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Release|x64.Build.0 = Release|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Release|x86.ActiveCfg = Release|Any CPU - {B3749ABA-A118-421B-BF25-A923D441262E}.Release|x86.Build.0 = Release|Any CPU - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Debug|Any CPU.ActiveCfg = Debug|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Debug|Any CPU.Build.0 = Debug|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Debug|x64.ActiveCfg = Debug|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Debug|x64.Build.0 = Debug|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Debug|x86.ActiveCfg = Debug|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Release|Any CPU.ActiveCfg = Release|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Release|Any CPU.Build.0 = Release|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Release|x64.ActiveCfg = Release|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Release|x64.Build.0 = Release|x64 - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0}.Release|x86.ActiveCfg = Release|x64 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Debug|Any CPU.ActiveCfg = Debug|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Debug|Any CPU.Build.0 = Debug|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Debug|x64.ActiveCfg = Debug|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Debug|x86.ActiveCfg = Debug|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Debug|x86.Build.0 = Debug|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Release|Any CPU.ActiveCfg = Release|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Release|Any CPU.Build.0 = Release|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Release|x64.ActiveCfg = Release|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Release|x86.ActiveCfg = Release|x86 - {0174B67B-00C4-4785-8F2C-92C94445585F}.Release|x86.Build.0 = Release|x86 {83AA956C-0AD5-41AE-8271-61CAEE1EA345}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {83AA956C-0AD5-41AE-8271-61CAEE1EA345}.Debug|Any CPU.Build.0 = Debug|Any CPU {83AA956C-0AD5-41AE-8271-61CAEE1EA345}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -370,10 +327,6 @@ Global {65C523D2-F936-4E81-95EB-A69A5E3ECE79} = {97DFB2BD-EADF-4A78-8A81-6950AE090A4C} {FC82DD03-2A84-4100-B276-1F1489661FAD} = {40A8E6C7-CB44-49DC-BEE6-90E97DC95FED} {4236B979-6BB0-4018-B0E7-62005B8E7D64} = {40A8E6C7-CB44-49DC-BEE6-90E97DC95FED} - {B3749ABA-A118-421B-BF25-A923D441262E} = {C816DBD2-003D-43BA-8578-ECE95C457FFE} - {857D0761-1B7F-4B35-AFCB-A4F3E22690B0} = {C816DBD2-003D-43BA-8578-ECE95C457FFE} - {0174B67B-00C4-4785-8F2C-92C94445585F} = {C816DBD2-003D-43BA-8578-ECE95C457FFE} - {C816DBD2-003D-43BA-8578-ECE95C457FFE} = {97DFB2BD-EADF-4A78-8A81-6950AE090A4C} {83AA956C-0AD5-41AE-8271-61CAEE1EA345} = {B0D71349-F748-4C98-ABF1-BEABC0350431} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution diff --git a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-full.json b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-full.json index 64206b8c..9bf83767 100644 --- a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-full.json +++ b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-full.json @@ -1,10 +1,10 @@ { - "Title":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-20220126-163358", + "Title":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-20220127-170134", "HostEnvironmentInfo":{ "BenchmarkDotNetCaption":"BenchmarkDotNet", - "BenchmarkDotNetVersion":"0.13.0", - "OsVersion":"Windows 10.0.17763.2452 (1809/October2018Update/Redstone5)", - "ProcessorName":"Intel Xeon CPU E5-2673 v4 2.30GHz", + "BenchmarkDotNetVersion":"0.13.1", + "OsVersion":"Windows 10.0.17763.2458 (1809/October2018Update/Redstone5)", + "ProcessorName":"Intel Xeon Platinum 8272CL CPU 2.60GHz", "PhysicalProcessorCount":1, "PhysicalCoreCount":2, "LogicalCoreCount":2, @@ -21,120 +21,6 @@ }, "Benchmarks":[ { - "DisplayInfo":"DcrawProcessWhiteBalance.ProccessAndWrite: Job-ULYOBS(Runtime=.NET 5.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", - "Namespace":"FileOnQ.Imaging.Raw.Benchmarking", - "Type":"DcrawProcessWhiteBalance", - "Method":"ProccessAndWrite", - "MethodTitle":"ProccessAndWrite", - "Parameters":"", - "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProccessAndWrite", - "Statistics":null, - "Memory":{ - "Gen0Collections":0, - "Gen1Collections":0, - "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 - }, - "Measurements":[ - - ] - },{ - "DisplayInfo":"DcrawProcessWhiteBalance.ProccessIntoMemory: Job-ULYOBS(Runtime=.NET 5.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", - "Namespace":"FileOnQ.Imaging.Raw.Benchmarking", - "Type":"DcrawProcessWhiteBalance", - "Method":"ProccessIntoMemory", - "MethodTitle":"ProccessIntoMemory", - "Parameters":"", - "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProccessIntoMemory", - "Statistics":null, - "Memory":{ - "Gen0Collections":0, - "Gen1Collections":0, - "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 - }, - "Measurements":[ - - ] - },{ - "DisplayInfo":"DcrawProcessWhiteBalance.ProcessIntoBitmap: Job-ULYOBS(Runtime=.NET 5.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", - "Namespace":"FileOnQ.Imaging.Raw.Benchmarking", - "Type":"DcrawProcessWhiteBalance", - "Method":"ProcessIntoBitmap", - "MethodTitle":"ProcessIntoBitmap", - "Parameters":"", - "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProcessIntoBitmap", - "Statistics":null, - "Memory":{ - "Gen0Collections":0, - "Gen1Collections":0, - "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 - }, - "Measurements":[ - - ] - },{ - "DisplayInfo":"DcrawProcessWhiteBalance.ProccessAndWrite: Job-EYIFXY(Runtime=.NET 6.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", - "Namespace":"FileOnQ.Imaging.Raw.Benchmarking", - "Type":"DcrawProcessWhiteBalance", - "Method":"ProccessAndWrite", - "MethodTitle":"ProccessAndWrite", - "Parameters":"", - "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProccessAndWrite", - "Statistics":null, - "Memory":{ - "Gen0Collections":0, - "Gen1Collections":0, - "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 - }, - "Measurements":[ - - ] - },{ - "DisplayInfo":"DcrawProcessWhiteBalance.ProccessIntoMemory: Job-EYIFXY(Runtime=.NET 6.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", - "Namespace":"FileOnQ.Imaging.Raw.Benchmarking", - "Type":"DcrawProcessWhiteBalance", - "Method":"ProccessIntoMemory", - "MethodTitle":"ProccessIntoMemory", - "Parameters":"", - "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProccessIntoMemory", - "Statistics":null, - "Memory":{ - "Gen0Collections":0, - "Gen1Collections":0, - "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 - }, - "Measurements":[ - - ] - },{ - "DisplayInfo":"DcrawProcessWhiteBalance.ProcessIntoBitmap: Job-EYIFXY(Runtime=.NET 6.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", - "Namespace":"FileOnQ.Imaging.Raw.Benchmarking", - "Type":"DcrawProcessWhiteBalance", - "Method":"ProcessIntoBitmap", - "MethodTitle":"ProcessIntoBitmap", - "Parameters":"", - "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProcessIntoBitmap", - "Statistics":null, - "Memory":{ - "Gen0Collections":0, - "Gen1Collections":0, - "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 - }, - "Measurements":[ - - ] - },{ "DisplayInfo":"DcrawProcessWhiteBalance.ProccessAndWrite: Job-GHSIOX(Runtime=.NET Framework 4.8, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", "Namespace":"FileOnQ.Imaging.Raw.Benchmarking", "Type":"DcrawProcessWhiteBalance", @@ -142,16 +28,592 @@ "MethodTitle":"ProccessAndWrite", "Parameters":"", "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProccessAndWrite", - "Statistics":null, + "Statistics":{ + "OriginalValues":[ + 10401734300,10803987100,10909255200,11122071500,11177417400,11116548600,11034393800,10914943800,10801506300,11062648200,11107136400,10967134100,10797081000,10786900500,10628896000,10721860300 + ], + "N":16, + "Min":10401734300, + "LowerFence":10375684312.5, + "Q1":10794535875, + "Median":10912099500, + "Mean":10897094656.25, + "Q3":11073770250, + "UpperFence":11492621812.5, + "Max":11177417400, + "InterquartileRange":279234375, + "LowerOutliers":[ + + ], + "UpperOutliers":[ + + ], + "AllOutliers":[ + + ], + "StandardError":52483137.345521882, + "Variance":44071675290062624, + "StandardDeviation":209932549.38208753, + "Skewness":-0.60470705565509975, + "Kurtosis":2.6022012085993613, + "ConfidenceInterval":{ + "N":16, + "Mean":10897094656.25, + "StandardError":52483137.345521882, + "Level":12, + "Margin":213751495.171887, + "Lower":10683343161.078114, + "Upper":11110846151.421886 + }, + "Percentiles":{ + "P0":10401734300, + "P25":10794535875, + "P50":10912099500, + "P67":11035806520, + "P80":11107136400, + "P85":11114195550, + "P90":11119310050, + "P95":11135907975, + "P100":11177417400 + } + }, "Memory":{ "Gen0Collections":0, "Gen1Collections":0, "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 + "TotalOperations":1 }, "Measurements":[ - + { + "IterationMode":"Overhead", + "IterationStage":"Jitting", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":266000 + },{ + "IterationMode":"Workload", + "IterationStage":"Jitting", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":9897248300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":1600 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":16, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":17, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":18, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":19, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":20, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":10018004600 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":9972536300 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10116388800 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":10679913400 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":10401108100 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":9951431800 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":10470087100 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":10131825800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":10401734400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":10803987200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10909255300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":11122071600 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":11177417500 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":11116548700 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":11034393900 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":10914943900 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":10801506400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":11062648300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":11107136500 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":10967134200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":10797081100 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":10786900600 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":10628896100 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":16, + "Operations":1, + "Nanoseconds":10721860400 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":10401734300 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":10803987100 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10909255200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":11122071500 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":11177417400 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":11116548600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":11034393800 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":10914943800 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":10801506300 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":11062648200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":11107136400 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":10967134100 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":10797081000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":10786900500 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":10628896000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":16, + "Operations":1, + "Nanoseconds":10721860300 + } + ], + "Metrics":[ + { + "Value":0, + "Descriptor":{ + "Id":"Allocated Memory", + "DisplayName":"Allocated", + "Legend":"Allocated memory per single operation (managed only, inclusive, 1KB = 1024B)", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":3 + } + },{ + "Value":830257503, + "Descriptor":{ + "Id":"AllocatedNativeMemoryDescriptor", + "DisplayName":"Allocated native memory", + "Legend":"Allocated native memory per single operation", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":0 + } + },{ + "Value":0, + "Descriptor":{ + "Id":"NativeMemoryLeakDescriptor", + "DisplayName":"Native memory leak", + "Legend":"Native memory leak size in byte.", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":0 + } + } ] },{ "DisplayInfo":"DcrawProcessWhiteBalance.ProccessIntoMemory: Job-GHSIOX(Runtime=.NET Framework 4.8, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", @@ -161,16 +623,571 @@ "MethodTitle":"ProccessIntoMemory", "Parameters":"", "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProccessIntoMemory", - "Statistics":null, + "Statistics":{ + "OriginalValues":[ + 10728178900,10954776700,10864863600,10897117700,10921643900,10599376200,10978368700,10845812200,10888841300,10530135200,10898942600,10863040100,10937180900,10852897000,10719153400 + ], + "N":15, + "Min":10530135200, + "LowerFence":10602049000, + "Q1":10786995550, + "Median":10864863600, + "Mean":10832021893.333334, + "Q3":10910293250, + "UpperFence":11095239800, + "Max":10978368700, + "InterquartileRange":123297700, + "LowerOutliers":[ + 10530135200,10599376200 + ], + "UpperOutliers":[ + + ], + "AllOutliers":[ + 10530135200,10599376200 + ], + "StandardError":33733539.118864313, + "Variance":17069274922259238, + "StandardDeviation":130649435.21599792, + "Skewness":-1.0450737794175327, + "Kurtosis":2.8457330440339246, + "ConfidenceInterval":{ + "N":15, + "Mean":10832021893.333334, + "StandardError":33733539.118864313, + "Level":12, + "Margin":139672170.790243, + "Lower":10692349722.543091, + "Upper":10971694064.123577 + }, + "Percentiles":{ + "P0":10530135200, + "P25":10786995550, + "P50":10864863600, + "P67":10897811162, + "P80":10924751300, + "P85":10935627200, + "P90":10947738380, + "P95":10961854300, + "P100":10978368700 + } + }, "Memory":{ "Gen0Collections":0, "Gen1Collections":0, "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 + "TotalOperations":1 }, "Measurements":[ - + { + "IterationMode":"Overhead", + "IterationStage":"Jitting", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":436700 + },{ + "IterationMode":"Workload", + "IterationStage":"Jitting", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":10229481500 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":2000 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":600 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":500 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":16, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":17, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":18, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":19, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":20, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":9886080600 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":9841262800 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10857696100 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":10835449900 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":10815083400 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":10816212000 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":10669306400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":10728179100 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":10954776900 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10864863800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":10897117900 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":10921644100 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":10599376400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":10978368900 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":10845812400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":10888841500 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":10530135400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":10898942800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":10863040300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":10937181100 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":10852897200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":10719153600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":10728178900 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":10954776700 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10864863600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":10897117700 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":10921643900 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":10599376200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":10978368700 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":10845812200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":10888841300 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":10530135200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":10898942600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":10863040100 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":10937180900 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":10852897000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":10719153400 + } + ], + "Metrics":[ + { + "Value":153482264, + "Descriptor":{ + "Id":"Allocated Memory", + "DisplayName":"Allocated", + "Legend":"Allocated memory per single operation (managed only, inclusive, 1KB = 1024B)", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":3 + } + },{ + "Value":830226694, + "Descriptor":{ + "Id":"AllocatedNativeMemoryDescriptor", + "DisplayName":"Allocated native memory", + "Legend":"Allocated native memory per single operation", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":0 + } + },{ + "Value":0, + "Descriptor":{ + "Id":"NativeMemoryLeakDescriptor", + "DisplayName":"Native memory leak", + "Legend":"Native memory leak size in byte.", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":0 + } + } ] },{ "DisplayInfo":"DcrawProcessWhiteBalance.ProcessIntoBitmap: Job-GHSIOX(Runtime=.NET Framework 4.8, InvocationCount=1, LaunchCount=1, UnrollFactor=1)", @@ -180,16 +1197,908 @@ "MethodTitle":"ProcessIntoBitmap", "Parameters":"", "FullName":"FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance.ProcessIntoBitmap", - "Statistics":null, + "Statistics":{ + "OriginalValues":[ + 11042122100,10431253700,10445056300,10346323400,10117329800,9995543200,11160232200,10867874500,10690413600,10662788000,10670485900,10928320000,11314317300,10736220600,10793942500,11317583100,11232161400,11276343000,11248253600,10725151300,11227247500,11190289800,10853351400,10958355200,10711009700,11230598800,11265084200,11227353600,11057072000,11265704000,11212896600,10853765800,10230750100,10466479800,10891129100,10788053400,10598620500 + ], + "N":37, + "Min":9995543200, + "LowerFence":9835343500, + "Q1":10670485900, + "Median":10867874500, + "Mean":10865661540.540541, + "Q3":11227247500, + "UpperFence":12062389900, + "Max":11317583100, + "InterquartileRange":556761600, + "LowerOutliers":[ + + ], + "UpperOutliers":[ + + ], + "AllOutliers":[ + + ], + "StandardError":59596496.121049136, + "Variance":1.3141446694653027E+17, + "StandardDeviation":362511333.54218084, + "Skewness":-0.56749071929683725, + "Kurtosis":2.3687069867987871, + "ConfidenceInterval":{ + "N":37, + "Mean":10865661540.540541, + "StandardError":59596496.121049136, + "Level":12, + "Margin":213483587.55353642, + "Lower":10652177952.987003, + "Upper":11079145128.094078 + }, + "Percentiles":{ + "P0":9995543200, + "P25":10670485900, + "P50":10867874500, + "P67":11163839112, + "P80":11229949760, + "P85":11241816720, + "P90":11265332120, + "P95":11283937860, + "P100":11317583100 + } + }, "Memory":{ - "Gen0Collections":0, - "Gen1Collections":0, - "Gen2Collections":0, - "TotalOperations":0, - "BytesAllocatedPerOperation":0 + "Gen0Collections":1, + "Gen1Collections":1, + "Gen2Collections":1, + "TotalOperations":1 }, "Measurements":[ - + { + "IterationMode":"Overhead", + "IterationStage":"Jitting", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":370000 + },{ + "IterationMode":"Workload", + "IterationStage":"Jitting", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":11310567200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":4500 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":300 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":400 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":16, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":17, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":18, + "Operations":1, + "Nanoseconds":100 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":19, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Overhead", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":20, + "Operations":1, + "Nanoseconds":200 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":11022452900 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":11285039800 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":11019151300 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":11060280900 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":11276439900 + },{ + "IterationMode":"Workload", + "IterationStage":"Warmup", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":11197815300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":11042122300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":10431253900 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10445056500 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":10346323600 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":10117330000 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":9995543400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":11160232400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":10867874700 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":10690413800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":10662788200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":10670486100 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":10928320200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":11314317500 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":10736220800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":10793942700 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":16, + "Operations":1, + "Nanoseconds":11317583300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":17, + "Operations":1, + "Nanoseconds":11232161600 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":18, + "Operations":1, + "Nanoseconds":11276343200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":19, + "Operations":1, + "Nanoseconds":11248253800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":20, + "Operations":1, + "Nanoseconds":10725151500 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":21, + "Operations":1, + "Nanoseconds":11227247700 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":22, + "Operations":1, + "Nanoseconds":11190290000 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":23, + "Operations":1, + "Nanoseconds":10853351600 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":24, + "Operations":1, + "Nanoseconds":10958355400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":25, + "Operations":1, + "Nanoseconds":10711009900 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":26, + "Operations":1, + "Nanoseconds":11230599000 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":27, + "Operations":1, + "Nanoseconds":11265084400 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":28, + "Operations":1, + "Nanoseconds":11227353800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":29, + "Operations":1, + "Nanoseconds":11057072200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":30, + "Operations":1, + "Nanoseconds":11265704200 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":31, + "Operations":1, + "Nanoseconds":11212896800 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":32, + "Operations":1, + "Nanoseconds":10853766000 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":33, + "Operations":1, + "Nanoseconds":10230750300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":34, + "Operations":1, + "Nanoseconds":10466480000 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":35, + "Operations":1, + "Nanoseconds":10891129300 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":36, + "Operations":1, + "Nanoseconds":10788053600 + },{ + "IterationMode":"Workload", + "IterationStage":"Actual", + "LaunchIndex":1, + "IterationIndex":37, + "Operations":1, + "Nanoseconds":10598620700 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":1, + "Operations":1, + "Nanoseconds":11042122100 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":2, + "Operations":1, + "Nanoseconds":10431253700 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":3, + "Operations":1, + "Nanoseconds":10445056300 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":4, + "Operations":1, + "Nanoseconds":10346323400 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":5, + "Operations":1, + "Nanoseconds":10117329800 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":6, + "Operations":1, + "Nanoseconds":9995543200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":7, + "Operations":1, + "Nanoseconds":11160232200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":8, + "Operations":1, + "Nanoseconds":10867874500 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":9, + "Operations":1, + "Nanoseconds":10690413600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":10, + "Operations":1, + "Nanoseconds":10662788000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":11, + "Operations":1, + "Nanoseconds":10670485900 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":12, + "Operations":1, + "Nanoseconds":10928320000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":13, + "Operations":1, + "Nanoseconds":11314317300 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":14, + "Operations":1, + "Nanoseconds":10736220600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":15, + "Operations":1, + "Nanoseconds":10793942500 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":16, + "Operations":1, + "Nanoseconds":11317583100 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":17, + "Operations":1, + "Nanoseconds":11232161400 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":18, + "Operations":1, + "Nanoseconds":11276343000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":19, + "Operations":1, + "Nanoseconds":11248253600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":20, + "Operations":1, + "Nanoseconds":10725151300 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":21, + "Operations":1, + "Nanoseconds":11227247500 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":22, + "Operations":1, + "Nanoseconds":11190289800 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":23, + "Operations":1, + "Nanoseconds":10853351400 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":24, + "Operations":1, + "Nanoseconds":10958355200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":25, + "Operations":1, + "Nanoseconds":10711009700 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":26, + "Operations":1, + "Nanoseconds":11230598800 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":27, + "Operations":1, + "Nanoseconds":11265084200 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":28, + "Operations":1, + "Nanoseconds":11227353600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":29, + "Operations":1, + "Nanoseconds":11057072000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":30, + "Operations":1, + "Nanoseconds":11265704000 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":31, + "Operations":1, + "Nanoseconds":11212896600 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":32, + "Operations":1, + "Nanoseconds":10853765800 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":33, + "Operations":1, + "Nanoseconds":10230750100 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":34, + "Operations":1, + "Nanoseconds":10466479800 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":35, + "Operations":1, + "Nanoseconds":10891129100 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":36, + "Operations":1, + "Nanoseconds":10788053400 + },{ + "IterationMode":"Workload", + "IterationStage":"Result", + "LaunchIndex":1, + "IterationIndex":37, + "Operations":1, + "Nanoseconds":10598620500 + } + ], + "Metrics":[ + { + "Value":1000, + "Descriptor":{ + "Id":"Gen0Collects", + "DisplayName":"Gen 0", + "Legend":"GC Generation 0 collects per 1000 operations", + "NumberFormat":"#0.0000", + "UnitType":0, + "Unit":"Count", + "TheGreaterTheBetter":false, + "PriorityInCategory":0 + } + },{ + "Value":1000, + "Descriptor":{ + "Id":"Gen1Collects", + "DisplayName":"Gen 1", + "Legend":"GC Generation 1 collects per 1000 operations", + "NumberFormat":"#0.0000", + "UnitType":0, + "Unit":"Count", + "TheGreaterTheBetter":false, + "PriorityInCategory":1 + } + },{ + "Value":1000, + "Descriptor":{ + "Id":"Gen2Collects", + "DisplayName":"Gen 2", + "Legend":"GC Generation 2 collects per 1000 operations", + "NumberFormat":"#0.0000", + "UnitType":0, + "Unit":"Count", + "TheGreaterTheBetter":false, + "PriorityInCategory":2 + } + },{ + "Value":306957376, + "Descriptor":{ + "Id":"Allocated Memory", + "DisplayName":"Allocated", + "Legend":"Allocated memory per single operation (managed only, inclusive, 1KB = 1024B)", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":3 + } + },{ + "Value":830228638, + "Descriptor":{ + "Id":"AllocatedNativeMemoryDescriptor", + "DisplayName":"Allocated native memory", + "Legend":"Allocated native memory per single operation", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":0 + } + },{ + "Value":0, + "Descriptor":{ + "Id":"NativeMemoryLeakDescriptor", + "DisplayName":"Native memory leak", + "Legend":"Native memory leak size in byte.", + "NumberFormat":"N0", + "UnitType":2, + "Unit":"B", + "TheGreaterTheBetter":false, + "PriorityInCategory":0 + } + } ] } ] diff --git a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-github.md b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-github.md index c1d287b7..77955341 100644 --- a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-github.md +++ b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report-github.md @@ -1,31 +1,16 @@ ``` ini -BenchmarkDotNet=v0.13.0, OS=Windows 10.0.17763.2452 (1809/October2018Update/Redstone5), VM=Hyper-V -Intel Xeon CPU E5-2673 v4 2.30GHz, 1 CPU, 2 logical and 2 physical cores - [Host] : .NET Framework 4.8 (4.8.4420.0), X64 RyuJIT +BenchmarkDotNet=v0.13.1, OS=Windows 10.0.17763.2458 (1809/October2018Update/Redstone5), VM=Hyper-V +Intel Xeon Platinum 8272CL CPU 2.60GHz, 1 CPU, 2 logical and 2 physical cores + [Host] : .NET Framework 4.8 (4.8.4420.0), X64 RyuJIT + Job-GHSIOX : .NET Framework 4.8 (4.8.4420.0), X64 RyuJIT -InvocationCount=1 LaunchCount=1 UnrollFactor=1 +Runtime=.NET Framework 4.8 InvocationCount=1 LaunchCount=1 +UnrollFactor=1 ``` -| Method | Job | Runtime | Mean | Error | -|------------------- |----------- |------------------- |-----:|------:| -| ProccessAndWrite | Job-ULYOBS | .NET 5.0 | NA | NA | -| ProccessIntoMemory | Job-ULYOBS | .NET 5.0 | NA | NA | -| ProcessIntoBitmap | Job-ULYOBS | .NET 5.0 | NA | NA | -| ProccessAndWrite | Job-EYIFXY | .NET 6.0 | NA | NA | -| ProccessIntoMemory | Job-EYIFXY | .NET 6.0 | NA | NA | -| ProcessIntoBitmap | Job-EYIFXY | .NET 6.0 | NA | NA | -| ProccessAndWrite | Job-GHSIOX | .NET Framework 4.8 | NA | NA | -| ProccessIntoMemory | Job-GHSIOX | .NET Framework 4.8 | NA | NA | -| ProcessIntoBitmap | Job-GHSIOX | .NET Framework 4.8 | NA | NA | - -Benchmarks with issues: - DcrawProcessWhiteBalance.ProccessAndWrite: Job-ULYOBS(Runtime=.NET 5.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProccessIntoMemory: Job-ULYOBS(Runtime=.NET 5.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProcessIntoBitmap: Job-ULYOBS(Runtime=.NET 5.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProccessAndWrite: Job-EYIFXY(Runtime=.NET 6.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProccessIntoMemory: Job-EYIFXY(Runtime=.NET 6.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProcessIntoBitmap: Job-EYIFXY(Runtime=.NET 6.0, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProccessAndWrite: Job-GHSIOX(Runtime=.NET Framework 4.8, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProccessIntoMemory: Job-GHSIOX(Runtime=.NET Framework 4.8, InvocationCount=1, LaunchCount=1, UnrollFactor=1) - DcrawProcessWhiteBalance.ProcessIntoBitmap: Job-GHSIOX(Runtime=.NET Framework 4.8, InvocationCount=1, LaunchCount=1, UnrollFactor=1) +| Method | Mean | Error | StdDev | Allocated native memory | Native memory leak | Gen 0 | Gen 1 | Gen 2 | Allocated | +|------------------- |--------:|--------:|--------:|------------------------:|-------------------:|----------:|----------:|----------:|--------------:| +| ProccessAndWrite | 10.90 s | 0.214 s | 0.210 s | 830,257,503 B | - | - | - | - | - | +| ProccessIntoMemory | 10.83 s | 0.140 s | 0.131 s | 830,226,694 B | - | - | - | - | 153,482,264 B | +| ProcessIntoBitmap | 10.87 s | 0.213 s | 0.363 s | 830,228,638 B | - | 1000.0000 | 1000.0000 | 1000.0000 | 306,957,376 B | diff --git a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.csv b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.csv index 84042d61..40cab364 100644 --- a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.csv +++ b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.csv @@ -1,10 +1,4 @@ -Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Mean,Error -ProccessAndWrite,Job-ULYOBS,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 5.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProccessIntoMemory,Job-ULYOBS,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 5.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProcessIntoBitmap,Job-ULYOBS,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 5.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProccessAndWrite,Job-EYIFXY,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 6.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProccessIntoMemory,Job-EYIFXY,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 6.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProcessIntoBitmap,Job-EYIFXY,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 6.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProccessAndWrite,Job-GHSIOX,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET Framework 4.8,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProccessIntoMemory,Job-GHSIOX,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET Framework 4.8,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA -ProcessIntoBitmap,Job-GHSIOX,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET Framework 4.8,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,NA,NA +Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Mean,Error,StdDev,Allocated native memory,Native memory leak,Gen 0,Gen 1,Gen 2,Allocated +ProccessAndWrite,Job-GHSIOX,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET Framework 4.8,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,10.90 s,0.214 s,0.210 s,"830,257,503 B",0 B,-,-,-,0 B +ProccessIntoMemory,Job-GHSIOX,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET Framework 4.8,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,10.83 s,0.140 s,0.131 s,"830,226,694 B",0 B,-,-,-,"153,482,264 B" +ProcessIntoBitmap,Job-GHSIOX,False,Default,Default,Default,Default,Default,Default,11,Empty,RyuJit,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET Framework 4.8,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,1,Default,Default,1,Default,Default,Default,Default,Default,Default,1,Default,10.87 s,0.213 s,0.363 s,"830,228,638 B",0 B,1000.0000,1000.0000,1000.0000,"306,957,376 B" diff --git a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.html b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.html index d74ba3d8..2a571163 100644 --- a/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.html +++ b/benchmarks/results/dcraw-whitebalance.net48/FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-report.html @@ -2,7 +2,7 @@ -FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-20220126-163358 +FileOnQ.Imaging.Raw.Benchmarking.DcrawProcessWhiteBalance-20220127-170134