Skip to content

Strange framerate behaviour #17

@mwlasiuk

Description

@mwlasiuk

Setup:

  • OS : Windows 11
  • GPU : RTX 3060 Ti 12GB (driver version : 596.21.0.0)
  • Monitor refresh rate : 180 Hz

Test case 1:

  • monitor set to 120 Hz in Windows
  • run the app -> 120 FPS
  • change vsync to off -> 240 FPS
  • change vsync to on -> 120 FPS

Test case 2:

  • monitor set to 120 Hz in Windows
  • change vsync to be off by default in code
  • run the app (presnt mode -> mailbox) -> 1750 FPS
  • change vsync to on -> 120 FPS
  • change vsync to off -> 240 FPS

Test case 3:

  • monitor set to 120 Hz in Windows
  • change present mode selection code to favour immediate over mailbox
  • run the app (presnt mode -> immediate) -> 1650 FPS
  • change vsync to on -> 120 FPS
  • change vsync to off -> 1700 FPS

In further tests I set monitor refresh rate to be 180 Hz and 60 Hz in Window and ran all the tests above (additional 8 tests). In 180 FPS case MAILBOX behaves as IMMEDIATE (in terms of FPS -> uncapped regardles of the changes intriduced) and for 60 Hz case MAILBOX caps at 2x refresh rate whed changet to from FIFO.

In all cases there were zero validation errors (ran all tests with and without validation).

Is this common behaviour that using only mailbox makes FPS uncapped and changing present mode throughout program runtime and cycling through FIFO makes MAILBOX be capped to 2x monitor refreshrate when monitor refresh rate is set to value other than default? Is it related to Vulkan spec or windows shenanigans?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions