Improve native OpenGL submission, completion and CPU preparation #1

Merged
blackbearreloaded merged 75 commits from eden-framebuffer-fallbacks into main 2026-09-21 09:19:04 -05:00
blackbearreloaded commented 2026-09-21 09:14:17 -05:00 (Migrated from github.com)

Draw-heavy OpenGL workloads repeatedly waited for GPU completion and repeated CPU layout, allocation and cache-publication work. This change batches eligible command streams, retains resources until confirmed completion, scopes waits to hazards, and reduces CPU preparation and fallback costs.

  • Add direct packed-float/sRGB rendering and query-isolated GPU clears with guarded fallbacks.
  • Implement grouped submission, bounded asynchronous fences, completion visibility and safe presentation overlap.
  • Reuse retired command/descriptor storage and CPU scratch; narrow upload publication, optimize compatible image copies and aligned clears, and publish persistent buffer updates correctly.
  • Add production-code regression checks and application-independent validation documentation. Full native-work initialization/publication remains enabled.

Validation: make test, make test-staging, native 1080p60 SDK cross-build, and firmware 6.02 integration checks passed. Native draw/readback checks, orderly teardown and console service health passed. The latest follow-up changes only documentation and a test comment; runtime behavior is unchanged.

See docs/native-submission-performance.md for the implementation, exact tested runtime identity and qualification limits. Host tests do not prove hardware cache coherence. The integration checks do not qualify all applications, API states, resolutions or queue depths; fresh CI builds do not inherit exact-binary hardware acceptance. This PR makes no application FPS claim, publishes no SDK release and does not claim Khronos certification.

Draw-heavy OpenGL workloads repeatedly waited for GPU completion and repeated CPU layout, allocation and cache-publication work. This change batches eligible command streams, retains resources until confirmed completion, scopes waits to hazards, and reduces CPU preparation and fallback costs. - Add direct packed-float/sRGB rendering and query-isolated GPU clears with guarded fallbacks. - Implement grouped submission, bounded asynchronous fences, completion visibility and safe presentation overlap. - Reuse retired command/descriptor storage and CPU scratch; narrow upload publication, optimize compatible image copies and aligned clears, and publish persistent buffer updates correctly. - Add production-code regression checks and application-independent validation documentation. Full native-work initialization/publication remains enabled. Validation: `make test`, `make test-staging`, native 1080p60 SDK cross-build, and firmware 6.02 integration checks passed. Native draw/readback checks, orderly teardown and console service health passed. The latest follow-up changes only documentation and a test comment; runtime behavior is unchanged. See `docs/native-submission-performance.md` for the implementation, exact tested runtime identity and qualification limits. Host tests do not prove hardware cache coherence. The integration checks do not qualify all applications, API states, resolutions or queue depths; fresh CI builds do not inherit exact-binary hardware acceptance. This PR makes no application FPS claim, publishes no SDK release and does not claim Khronos certification.
Sign in to join this conversation.
No description provided.