Direct RGBA receive: decoder and ACK scalar changes

Configuration and method

These tests use an instrumented research fixture. Noisedeck A sends 1920 × 1080 RGBA packets through Sync to Noisedeck B.

Native camera publication remains active. B receives direct RGBA through an HTTP BYOB reader.

BUDGET2 is the parent fixture. SCALAR changes decoder validation and ACK sequence encoding. Receiver credit remains one.

Each source packet contains 8,294,400 pixel bytes and a 64-byte header. Both source limits are 16,588,928 bytes.

SCALAR removes four temporary decoder records and ordinary integer BigInt conversions. Public decoded headers remain independent.

The tests use GLSL and synth.testPattern. Timing uses pattern 0 with gridSize 4. Pixel controls use pattern 5 with gridSize 16.

The source, compiled pattern and uniforms passed their existing identity checks.

Retained host metadata identifies an Apple M2, eight logical CPUs, 24 GiB of memory and Darwin 23.6.0.

This metadata is not an in-run thermal or frequency measurement.

All recorded power samples show AC power. The samples do not prove continuous AC power between reads.

ArmContextA browserB browserStart UTCEnd UTC
BUDGET2webChrome/152.0.7977.83Chrome/152.0.7977.832026-09-09T07:54:59.128Z2026-09-09T07:58:17.174Z
BUDGET2desktopChrome/148.0.7778.180Chrome/148.0.7778.1802026-09-09T07:58:17.286Z2026-09-09T08:01:33.810Z
SCALARwebChrome/152.0.7977.83Chrome/152.0.7977.832026-09-09T08:37:45.290Z2026-09-09T08:41:03.603Z
SCALARdesktopChrome/148.0.7778.180Chrome/148.0.7778.1802026-09-09T08:46:04.735Z2026-09-09T08:49:29.303Z

Measurement results

The report includes 16 valid runs and two rejected attempts. Each arm has web and desktop positive, poison-negative, five-second and three-minute runs.

The eight pixel controls passed. Each accepted observation refers to the exact controls for its arm and context.

The four long observations contain 720 complete seconds and four partial tails. The raw data also retains the four short observations.

Input and final markers must match within the same render. Rates use each complete measurement interval, including its partial tail.

The BUDGET2 desktop minimum is 43 input pairs and 44 final pairs. Both sides have four complete seconds below 50.

SCALAR web has no complete seconds below 50. SCALAR desktop has five. This does not establish sustained 60 frames/s.

ArmContextUnique pairsElapsed sInput pairs/sFinal pairs/sInput minFinal minInput seconds below 50Final seconds below 50
BUDGET2web10752180.00950059.73018159.730181424233
BUDGET2desktop10741180.01140059.66844359.668443434444
SCALARweb10776180.01210059.86264359.862643505000
SCALARdesktop10443180.00610058.01470158.014701404055
ArmContextRunDiagnosticScopeResult SHA256
BUDGET2webpositivePassPixel control147d0150fdb86a979c528601a40c03c2b82338b6298aed369c6505092e99f51a
BUDGET2webnegativePassPixel control3b75fef892f0509b53ad2eb3547b05b5b264ae2b0c4a8cd5490c07954be66b1f
BUDGET2webobserve5PassObservation2974c308d5024685110dd141c6d7e369997b6a111ba1fd8e882e264e46beb507
BUDGET2webobserve180PassObservationc5a377027ff60b5b731737952358172aa12735a6bcc8dfd8da4c6dfc3e40e601
BUDGET2desktoppositivePassPixel controlddd9b90cd2b0330374a58348552ef20fa2e1e93b4f761f50dedf0018c188ebeb
BUDGET2desktopnegativePassPixel controlb6273f83c76368c915e03f63cd81ebb1f4b69fe00daea49892e57ac004aa6df7
BUDGET2desktopobserve5PassObservationd5ef1ab212dc951019877b5d8a9df00e6ad17a56be697fde0d7310ecf964910e
BUDGET2desktopobserve180PassObservation50ddd0635927cfd77c142883e73ab63b54225347826921cbc63b649a77dee84d
SCALARwebpositivePassPixel control478d98a21834180f0a9bbc070e30a9b81f0947fa19fe5d2e725b77ead75ffdee
SCALARwebnegativePassPixel control87164487775bc6196c5ba9aa80cf1252632c15e5342065054a5abeca6f5a9059
SCALARwebobserve5PassObservationece0ac55d80f886a34be2f2117a695d531969e0a6a810b6cba9c9a5510c09eac
SCALARwebobserve180PassObservationfac92cd1fd7f1f0c685db9346eaefb5db4abbd0e1bdfae31a79ad03413107267
SCALARdesktoppositivePassPixel control729a8601e7426fadd816728b8aaf4518a93a7ff384ffc6038ddb02b4bd1a170b
SCALARdesktopnegativePassPixel controlbfa03c492fdd2af7e5ee3b75618deb234f187130b430cf71b0e5c903b9404a56
SCALARdesktopobserve5PassObservation7b2267d354d559bfe2c024d0e6c5cca53ff26759f06f9694ac386f3d9a9decc1
SCALARdesktopobserve180PassObservationa88b43811a3d67b971630e91d0164640d05d03a8d31d034b26df92e7aa7afb25
ArmContextShort pairsElapsed msPairs/sInput minFinal minInput below 50Final below 50
BUDGET2web3005005.80000114440959.930481606000
BUDGET2desktop3015010.20000076293960.077442606000
SCALARweb3005006.69999885559159.919708606000
SCALARdesktop288500657.530963515100
ArmContextTail msInput tail pairsFinal tail pairsInput duplicatesFinal duplicates
BUDGET2web9.51100
BUDGET2desktop11.4000015258789061100
SCALARweb12.1000003814697270000
SCALARdesktop6.1000003814697270000
Open full-size diagramB clocks remain separate. Input: dashed orange. Final: solid blue. All 720 complete seconds use a 0–66 scale. Dotted lines mark 50 and 60. Partial tails remain in the table.
B clocks remain separate. Input: dashed orange. Final: solid blue. All 720 complete seconds use a 0–66 scale. Dotted lines mark 50 and 60. Partial tails remain in the table.

Source pressure

The source checks its byte limit at admission, before encoding and after encoding.

A check rejects additional bytes above the limit. It also rejects observed queued bytes above the limit minus those additional bytes.

The remaining allowance is 8,294,464 bytes in both arms.

The recorder stores positive checks and actual drops. It does not store timed buffer values for passed checks.

BUDGET2 recorded 40 web drops and 54 desktop drops. SCALAR recorded 19 web drops and 128 desktop drops.

No measured run recorded a drop after encoding. The tables retain the other two phases separately.

A positive check and its actual drop are separate records for one decision. Drop counts include only actual drop records.

Positive observations exceed one packet of queued bytes. These points do not show buffer values at passing checks.

The inclusive byte thresholds describe observed positive checks. They do not predict delivery under another limit.

Each pressure diagram uses its own A clock. Each delivery diagram uses its own B clock.

A frame sequence can join identities across processes. It does not establish latency or simultaneous timing.

ArmContextA elapsed sOffersAcceptedReadsSentBusyPressure dropsPending change
BUDGET2web180.06160000038147108041077210772107640400
BUDGET2desktop180.057108031076210762107490540
SCALARweb180.06910000038147108051079210792107860190
SCALARdesktop180.07840000152591080510729107291067701280
ArmContextPhaseChecksPassedPositiveActual dropsBuffer not read
BUDGET2webAdmission108041077232320
BUDGET2webBefore encoding1077210764880
BUDGET2webAfter encoding1076410764000
BUDGET2desktopAdmission108031076241410
BUDGET2desktopBefore encoding107621074913130
BUDGET2desktopAfter encoding1074910749000
SCALARwebAdmission108051079213130
SCALARwebBefore encoding1079210786660
SCALARwebAfter encoding1078610786000
SCALARdesktopAdmission108051072976760
SCALARdesktopBefore encoding107291067752520
SCALARdesktopAfter encoding1067710677000
ArmContextPhaseObservedMin bytesMedian bytesP95 bytesMax bytes≤64KiB≤256KiB≤1MiB≤one packet
BUDGET2webAdmission3287950801140124013497240134972400000
BUDGET2webBefore encoding896025281187716813497240134972400000
BUDGET2webAfter encoding00000
BUDGET2desktopAdmission4183987601052391214677968158280000000
BUDGET2desktopBefore encoding1393920801114976015828000158280000000
BUDGET2desktopAfter encoding00000
SCALARwebAdmission1384752081000574412260992122609920000
SCALARwebBefore encoding688333121000574412260992122609920000
SCALARwebAfter encoding00000
SCALARdesktopAdmission7683316561033776813715760148947600000
SCALARdesktopBefore encoding528331656979812013575928148947600000
SCALARdesktopAfter encoding00000
Open full-size diagramA clocks remain separate. Points show positive checks only. Shapes identify phases. Dashed lines mark each remaining allowance. Dotted lines mark each source limit. There is no continuous buffer trace.
A clocks remain separate. Points show positive checks only. Shapes identify phases. Dashed lines mark each remaining allowance. Dotted lines mark each source limit. There is no continuous buffer trace.
Open full-size diagramA clocks remain separate. Each bar includes actual drops in that second or partial tail. Colors separate phases. Positive-check records do not add another drop.
A clocks remain separate. Each bar includes actual drops in that second or partial tail. Colors separate phases. Positive-check records do not add another drop.

Startup and diagnostic work

The raw data retains startup, warmup and cleanup events. These events do not enter the measured drop counts.

Startup generation history remains in the data. Measurement intervals use each source binding.

All accepted pressure journals have zero unread gaps. Ring overwrite counts remain explicit.

Each long observation has 21 pressure cuts. Each cut has a 250 ms deadline for capture, pressure drains and pressure-journal writes.

Cut durations include controller waiting and I/O. They are not CPU costs or measured effects on rendering.

Existing source checks and source-journal writes occur outside that pressure-cut deadline.

The recorder retains 393,312 bytes of numeric storage. Positive checks and drops add clock reads.

ArmContextScopeEventsPositiveDropsGenerations
BUDGET2webstartup000None
BUDGET2webwarmup000None
BUDGET2webmeasurement8040402
BUDGET2webcleanup000None
BUDGET2weblifetime8040402
BUDGET2desktopstartup000None
BUDGET2desktopwarmup000None
BUDGET2desktopmeasurement10854542
BUDGET2desktopcleanup000None
BUDGET2desktoplifetime10854542
SCALARwebstartup000None
SCALARwebwarmup000None
SCALARwebmeasurement3819192
SCALARwebcleanup000None
SCALARweblifetime3819192
SCALARdesktopstartup000None
SCALARdesktopwarmup000None
SCALARdesktopmeasurement2561281282
SCALARdesktopcleanup000None
SCALARdesktoplifetime2561281282
ArmContextCutsTotal cut msMaximum cut msUnread gapsOverwritesObserved AC samples
BUDGET2web21110.7694610000180517.06512500000099005
BUDGET2desktop21201.70691700001498144.18041599998833005
SCALARweb2148.407374000003984.875458000024082005
SCALARdesktop21187.5627059999878814.617708000005223005

Rejected attempts

BUDGET2 web-observe5-budget2v1-a1 was not accepted. It recorded two invalid input markers and two invalid final markers.

It has no accepted cell journal or rate. The report excludes it from throughput tables and plots.

Its source and pressure journals stopped without a complete measurement receipt. Its B telemetry journal also remained incomplete.

The native process exited and the browser owners reaped their processes. Media cleanup still recorded an error for page B.

Retained telemetry shows a wall-minus-page clock offset change of about 77 ms in A and 80 ms in B.

The clock change does not establish why the marker checks failed. The later accepted web five-second attempt remains a separate record.

SCALAR desktop-observe180-scalarv1-a1 failed before native startup or measurement. It has no accepted rate or pressure interval.

The harness requested debugger port 65535. Electron 42.3.0 selected port 49154 because its source excludes that upper boundary.

All owned browser processes exited. The unchanged desktop repeat passed and remains a separate result.

The startup failure is not a product performance measurement.

AttemptInput invalidFinal invalidAccepted cellsDiagnosticMedia cleanupPhysical process exit
web-observe5-budget2v1-a1220RejectedFailedComplete
PageFirst wall-minus-page msLast wall-minus-page ms
A-0.5999031066894531-77.99990272521973
B-0.2999992370605469-80.69999885559082
AttemptStageNative startedMeasurement startedPhysical browser exit
desktop-observe180-scalarv1-a1app-BFalseFalseTrue

Native timing and retained events

Native elapsed times cover setup, measurement and cleanup. They are not CPU times.

The SCALAR desktop ring retained 256 of 462 slow events. It overwrote 206 individual records.

Aggregate stage counts, totals and maxima remain available. They do not reconstruct the lost individual events.

Native clocks have no measured alignment to either page clock. These maxima cannot identify a plotted B gap.

ArmContextLifetime sSlow eventsRetainedOverwrittenComplete event historyWrite-submit maximum ms
BUDGET2web186.20732244440True97.677
BUDGET2desktop186.30219695856560True147.156
SCALARweb186.30044116721210True20.172
SCALARdesktop188.623489042462256206False61.347

Limitations

This sequential comparison does not establish causation, repeatability or a performance ranking. It does not estimate statistical uncertainty.

Both arms use the same source limit. These observations do not establish an effect on end-to-end latency.

There is no uninstrumented comparison with the same scheduling conditions. The recorder does not measure continuous socket occupancy.

There are no in-run thermal or frequency measurements. These tests do not establish garbage collection as the cause of pressure.

Native durations include setup and cleanup. Their monotonic clock is separate from both page clocks.

These measurements do not establish released-product performance, external camera delivery or hours-long operation.

The earlier source-budget and allocation reports remain unchanged.

Source references

The numeric data includes result, control, source-manifest, native-receipt and journal digests.

SHA256SUMS identifies every public file. The exact private inputs remain outside the report.

ArmContextResult SHA256Pressure journal SHA256Native receipt SHA256
BUDGET2webc5a377027ff60b5b731737952358172aa12735a6bcc8dfd8da4c6dfc3e40e601d20b05c58c97ef89d00f22bceb26b5d5ed90d49a779bd6ed417743fc56bf5eea5e320fc6cb36fbd086976f18095c891807624ef4feda0af6ce8772f14b639433
BUDGET2desktop50ddd0635927cfd77c142883e73ab63b54225347826921cbc63b649a77dee84d653bdee311405367d300c0da253c8f0c687b0f63aa75239eb745dd7a6794b3a79da7b9ca47f434f2bdc2b908a98267811ea57dbaa382a9370d816a46ae777a23
SCALARwebfac92cd1fd7f1f0c685db9346eaefb5db4abbd0e1bdfae31a79ad03413107267270abae50fe4d28c8b0fe0042ff5ff41f847f525de13fcca1675349b3235f5da4393b921cf7ca98272da59fe4bd499a3b2116fc522b75b03c5c4593493a6855c
SCALARdesktopa88b43811a3d67b971630e91d0164640d05d03a8d31d034b26df92e7aa7afb25bbe63860a37be7cc556fd1599d0606a8720de73991c375b8105619af928d743129467a3c8a8eb996f201f4e42c76217d668e9525dfba27e7f2de66ef5602b32e

Numeric data · Text report · Checksums

Earlier source-budget report