Store the bounded 512x288 synthetic-frame benchmark for the optional sensor bloom model: the tested commit and file hashes, the exact build and run commands, and the raw OMP_NUM_THREADS=1/4/16 outputs. It does not claim any full-resolution or production performance.
6.8 KiB
Sensor bloom model benchmark (2026-09-27)
Isolated benchmark of the optional src/sensor_bloom.c limited-response model.
It performs no ray tracing, catalog lookup, or PSF splatting: it fills a
synthetic HDR framebuffer and times the post-processing model alone. The
default frame is 512x288 so a full sweep stays bounded; larger optional sizes
are clamped to 1024 and this target is not part of make test.
Environment: Gentoo, cc 15.3.0, 16 CPUs.
Tested code
The model under test is committed as
9cd933d1f83cf768249031402cb347a159a70f2d (the sensor-bloom implementation is
the only change it contains). The benchmark was run from that content; the only
untracked files at run time were this record and the pre-existing unrelated
nmesh_spacetime_output_format.md.
$ git rev-parse HEAD
9cd933d1f83cf768249031402cb347a159a70f2d
$ git status --short
?? benchmarks/sensor_bloom_2026-09-27.md
?? nmesh_spacetime_output_format.md
Exact content hashes of the files that define and exercise the model at
benchmark time (nmesh_spacetime_output_format.md is a pre-existing unrelated
untracked file and was not part of this work):
$ sha256sum src/sensor_bloom.c src/sensor_bloom.h tests/test_sensor_bloom.c tests/benchmark_sensor_bloom.c src/main.c Makefile tests/test_camera_cli.py
e6f5c8fd3de13756e6804f27b26c27827715667bf0ec46951b4f2bbb8eaabffd src/sensor_bloom.c
03e8e58061cfe420630a71b7969350e2e7efecee26d96a57b5a1087a25e4a2ab src/sensor_bloom.h
897643aba1631553bdee462a95e6c08c23b16fdf43f0b8d7a4857f369a087f14 tests/test_sensor_bloom.c
b1f4a3ed5622ca5c11fc58c87c3aee3bb9149e3035b68ea8c7671f3ce01c1a10 tests/benchmark_sensor_bloom.c
fdced6f075f77f17cb795c315fb0ac0590cc11789b556af3792d7ef47fed2629 src/main.c
3852dea3c9e9b22a99d03623301b79fc4c0a62cd5808fb97f5f0abb81ee3f379 Makefile
5fd9bae9dc1f841105b508ed6b6fce6429357b40e06adf700d5ce333b72ba92a tests/test_camera_cli.py
Commands
make -B -j4 BUILD_TYPE=Release PSF_BACKEND=cpu sensor-bloom-bench
OMP_NUM_THREADS=1 ./build/Release/obj/minkowski/standard_sink1_cpu/benchmark_sensor_bloom
OMP_NUM_THREADS=4 ./build/Release/obj/minkowski/standard_sink1_cpu/benchmark_sensor_bloom
OMP_NUM_THREADS=16 ./build/Release/obj/minkowski/standard_sink1_cpu/benchmark_sensor_bloom
Raw build output
mkdir -p build/Release/obj/minkowski/standard_sink1_cpu
cc -DENABLE_PNG -DFRAME_PSF_EVENT_SINK=1 -DFAST_PSF_FFTW -std=c11 -march=native -pipe -Wall -Wextra -Wpedantic -O2 -DNDEBUG -fopenmp -Isrc tests/benchmark_sensor_bloom.c src/sensor_bloom.c -lm -lpng -lfftw3_omp -lfftw3 -o build/Release/obj/minkowski/standard_sink1_cpu/benchmark_sensor_bloom
Raw benchmark output
### OMP_NUM_THREADS=1
sensor-bloom benchmark: size=512x288 threads=1 limit=1.000
central e=0.00 size=512x288 saturated=3 predicted=1 actual=1 bbox=0.0001 elapsed=0.001640s checksum=aaec29797d030b5a
scattered e=0.00 size=512x288 saturated=192 predicted=1 actual=1 bbox=0.7751 elapsed=0.003504s checksum=0c52973c56f09383
random5pct e=0.00 size=512x288 saturated=22223 predicted=1 actual=1 bbox=1.0000 elapsed=0.003353s checksum=d489cdf14f756d3a
central e=0.50 size=512x288 saturated=3 predicted=43 actual=15 bbox=0.0065 elapsed=0.001633s checksum=6625d592f76add42
scattered e=0.50 size=512x288 saturated=192 predicted=43 actual=15 bbox=0.8433 elapsed=0.020001s checksum=44e39b09a596122f
random5pct e=0.50 size=512x288 saturated=22223 predicted=40 actual=17 bbox=1.0000 elapsed=0.027526s checksum=d8c99ec18949278a
central e=0.90 size=512x288 saturated=3 predicted=233 actual=43 bbox=0.0513 elapsed=0.002913s checksum=6cf4d8e02d652b62
scattered e=0.90 size=512x288 saturated=192 predicted=233 actual=43 bbox=0.9609 elapsed=0.059650s checksum=ef91f6cf7f41249b
random5pct e=0.90 size=512x288 saturated=22223 predicted=216 actual=47 bbox=1.0000 elapsed=0.077348s checksum=fd976dae0c08cc92
### OMP_NUM_THREADS=4
sensor-bloom benchmark: size=512x288 threads=4 limit=1.000
central e=0.00 size=512x288 saturated=3 predicted=1 actual=1 bbox=0.0001 elapsed=0.001911s checksum=aaec29797d030b5a
scattered e=0.00 size=512x288 saturated=192 predicted=1 actual=1 bbox=0.7751 elapsed=0.002795s checksum=0c52973c56f09383
random5pct e=0.00 size=512x288 saturated=22223 predicted=1 actual=1 bbox=1.0000 elapsed=0.001979s checksum=d489cdf14f756d3a
central e=0.50 size=512x288 saturated=3 predicted=43 actual=15 bbox=0.0065 elapsed=0.001981s checksum=6625d592f76add42
scattered e=0.50 size=512x288 saturated=192 predicted=43 actual=15 bbox=0.8433 elapsed=0.006968s checksum=44e39b09a596122f
random5pct e=0.50 size=512x288 saturated=22223 predicted=40 actual=17 bbox=1.0000 elapsed=0.010725s checksum=d8c99ec18949278a
central e=0.90 size=512x288 saturated=3 predicted=233 actual=43 bbox=0.0513 elapsed=0.002210s checksum=6cf4d8e02d652b62
scattered e=0.90 size=512x288 saturated=192 predicted=233 actual=43 bbox=0.9609 elapsed=0.019092s checksum=ef91f6cf7f41249b
random5pct e=0.90 size=512x288 saturated=22223 predicted=216 actual=47 bbox=1.0000 elapsed=0.020793s checksum=fd976dae0c08cc92
### OMP_NUM_THREADS=16
sensor-bloom benchmark: size=512x288 threads=16 limit=1.000
central e=0.00 size=512x288 saturated=3 predicted=1 actual=1 bbox=0.0001 elapsed=0.002165s checksum=aaec29797d030b5a
scattered e=0.00 size=512x288 saturated=192 predicted=1 actual=1 bbox=0.7751 elapsed=0.002720s checksum=0c52973c56f09383
random5pct e=0.00 size=512x288 saturated=22223 predicted=1 actual=1 bbox=1.0000 elapsed=0.002128s checksum=d489cdf14f756d3a
central e=0.50 size=512x288 saturated=3 predicted=43 actual=15 bbox=0.0065 elapsed=0.001764s checksum=6625d592f76add42
scattered e=0.50 size=512x288 saturated=192 predicted=43 actual=15 bbox=0.8433 elapsed=0.012356s checksum=44e39b09a596122f
random5pct e=0.50 size=512x288 saturated=22223 predicted=40 actual=17 bbox=1.0000 elapsed=0.014079s checksum=d8c99ec18949278a
central e=0.90 size=512x288 saturated=3 predicted=233 actual=43 bbox=0.0513 elapsed=0.002201s checksum=6cf4d8e02d652b62
scattered e=0.90 size=512x288 saturated=192 predicted=233 actual=43 bbox=0.9609 elapsed=0.030918s checksum=ef91f6cf7f41249b
random5pct e=0.90 size=512x288 saturated=22223 predicted=216 actual=47 bbox=1.0000 elapsed=0.020280s checksum=fd976dae0c08cc92
saturatedis the number of channels initially aboveE;predictedis the model's reportedpredicted_iterations: the conservative decay bound plus the fp guard, clamped to the 4096 hard limit;actualis the number of synchronous rounds run;bboxis the fraction of the frame covered by the final monotonic bounding box.actual <= predictedin every row.- The
predicted/actualfields andchecksumare identical across the three runs above withOMP_NUM_THREADS=1,4, and16; onlyelapsedchanges.
These numbers characterize the model on a bounded synthetic frame only. They do not establish any full-resolution or production-render performance.