[PATCH i-g-t v5 0/8] benchmarks/kms_fb_stress: benchmark formats

Arthur Grillo arthurgrillo at riseup.net
Mon Apr 22 22:18:15 UTC 2024


After some discussion[1], I changed how to tackle the problem. (2x)

With the upcoming addition of YUV format to VKMS[2] it would be great to
test the their performance. So, test all formats available.

- PATCH #1: Just a non-related assert that I found needed while developing
- PATCH #2: Log the KMS structure
- PATCH #3: Moving code, should be noop
- PATCH #4, #5 & #6 : Fix a couple of bugs found while developing
- PATCH #7: Add a enable_overlay flag in preparation for #8
- PATCH #8: The new benchmark that tests performance between format

[1]: https://lore.kernel.org/all/6979cd2e-2b00-4dc4-8e41-66b435cf7ea8@riseup.net/
[2]: https://lore.kernel.org/all/20240304-yuv-v4-11-76beac8e9793@bootlin.com/

Signed-off-by: Arthur Grillo <arthurgrillo at riseup.net>
---
Changes in v5:
- Move global data variable to main (Kamil Konieczny)
- Create a function for creating fbs named `create_fb` (Kamil Konieczny)
- Move the stride checking to inside the `create_fb`
- Link to v4: https://lore.kernel.org/r/20240411-kms_fb_stress-dev-v4-0-7a8f3a419ebb@riseup.net

Changes in v4:
- Change (again) how the new test is done, now it just uses the primary
  and writeback, and changes the formats based on primary format list.
  (Pekka Paalanen)
- Add an enable_overlay flag, for the new test.
- Remove the addition of command-line flags, as I don't see them that
  useful anymore (Pekka Paalanen)
- Change the RGB565 test to a stride test (Pekka Paalanen)
- Link to v3: https://lore.kernel.org/r/20240307-kms_fb_stress-dev-v3-0-d5b948a541be@riseup.net

Changes in v3:
- Make the help message and commit message more clear on how the
  command-line options work (Louis Chauvet)
- Link to v2: https://lore.kernel.org/r/20240305-kms_fb_stress-dev-v2-0-78888a38e563@riseup.net

Changes in v2:
- Change how the command-line options work, now they pin the specific
  format and let the other change.
- Add a patch to test all the possible formats combination
- Add a couple of patches to fix some bugs
- Move the KMS logging patch to the beginning of the series
- Move the default_kms definition to the static struct data_t variable
- Link to v1: https://lore.kernel.org/r/20240226-kms_fb_stress-dev-v1-0-1c14942b1244@riseup.net

---
Arthur Grillo (8):
      benchmarks/kms_fb_stress: Assert that we have an supported pipe
      benchmarks/kms_fb_stress: Log the KMS structure
      benchmarks/kms_fb_stress: Separate the benchmark in a subtest
      benchmarks/kms_fb_stress: Free resources on the stress procedure
      benchmarks/kms_fb_stress: Move FB creation to a separate function
      benchmarks/kms_fb_stress: Don't paint the FB's if the format is not supported by Pixman
      benchmarks/kms_fb_stress: Optionally enable the overlay planes
      benchmarks/kms_fb_stress: Create a benchmark for formats

 benchmarks/kms_fb_stress.c | 227 +++++++++++++++++++++++++++++++++------------
 1 file changed, 166 insertions(+), 61 deletions(-)
---
base-commit: e490cb6ffc497275544b36871c24af0a04f98470
change-id: 20240226-kms_fb_stress-dev-c93ae176f901

Best regards,
-- 
Arthur Grillo <arthurgrillo at riseup.net>



More information about the igt-dev mailing list