{"id":13645030,"url":"https://github.com/vkmark/vkmark","last_synced_at":"2026-02-20T18:34:10.250Z","repository":{"id":39620008,"uuid":"96430085","full_name":"vkmark/vkmark","owner":"vkmark","description":"Vulkan benchmark","archived":false,"fork":false,"pushed_at":"2025-09-09T11:44:15.000Z","size":1144,"stargazers_count":221,"open_issues_count":24,"forks_count":37,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-12-11T02:44:36.641Z","etag":null,"topics":["benchmark","drm","gbm","kms","linux","vulkan","wayland","x11","xcb"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vkmark.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS","contributing":null,"funding":null,"license":"COPYING-LGPL2.1","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2017-07-06T12:54:50.000Z","updated_at":"2025-12-03T21:18:07.000Z","dependencies_parsed_at":"2024-06-21T14:41:53.074Z","dependency_job_id":"c4e0bd73-5b06-4b3f-bddd-980b5c25f827","html_url":"https://github.com/vkmark/vkmark","commit_stats":{"total_commits":139,"total_committers":6,"mean_commits":"23.166666666666668","dds":0.05755395683453235,"last_synced_commit":"ab6e6f34077722d5ae33f6bd40b18ef9c0e99a15"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/vkmark/vkmark","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vkmark%2Fvkmark","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vkmark%2Fvkmark/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vkmark%2Fvkmark/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vkmark%2Fvkmark/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vkmark","download_url":"https://codeload.github.com/vkmark/vkmark/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vkmark%2Fvkmark/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29660042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-20T16:33:43.953Z","status":"ssl_error","status_checked_at":"2026-02-20T16:33:43.598Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["benchmark","drm","gbm","kms","linux","vulkan","wayland","x11","xcb"],"created_at":"2024-08-02T01:02:23.961Z","updated_at":"2026-02-20T18:34:10.216Z","avatar_url":"https://github.com/vkmark.png","language":"C++","readme":"![](https://github.com/vkmark/vkmark/workflows/build/badge.svg)\n\nvkmark is an extensible Vulkan benchmarking suite with targeted,\nconfigurable scenes.\n\n# Building requirements\n\nTo build vkmark you need:\n\n * the meson build system\n * a C++17 compiler\n * libvulkan and development files\n * libglm development files (header only library)\n * libassimp and development files\n\nfor the X11 backend:\n\n * libxcb and development files\n * libxcb-icccm and development files\n\nfor the wayland backend:\n\n * libwayland-client and development files\n * wayland-protocols \u003e= 1.12\n\nfor the KMS backend:\n\n * libdrm and development files\n * libgbm and development files\n\nOn a recent Debian/Ubuntu system you can get all the dependencies with:\n\n `$ sudo apt install meson libvulkan-dev libglm-dev libassimp-dev libxcb1-dev libxcb-icccm4-dev libwayland-dev wayland-protocols libdrm-dev libgbm-dev`\n\n# Building and installing\n\nvkmark uses the meson build system.\n\nTo configure vkmark use:\n\n`$ meson build`\n\nThis will create a vkmark build configuration in the **build** directory.\n\nTo see/set the full list of available options use:\n\n`$ mesonconf [-Dopt=val] build`\n\nTo build use:\n\n`$ ninja -C build`\n\nTo install use:\n\n`$ [DESTDIR=...] ninja -C build install`\n\n# Running\n\nAfter installing you can run vkmark with:\n\n`$ vkmark [options...]`\n\nYou can run vkmark from the project directory without installing with:\n\n`$ build/src/vkmark --winsys-dir=build/src --data-dir=data [other-options...]`\n\n# Benchmarks\n\nvkmark offers a suite of scenes that can be used to measure various aspects of\nVulkan performance. The way in which each scene is rendered is configurable\nthrough a set of options. To list the available scenes and their acceptable\noptions you can use the `-l, --list-scenes` command line option.\n\nIn vkmark, a benchmark is defined as a scene plus a set of option values. You\ncan specify the list and order of the benchmarks to run by using the `-b,\n--benchmark` command line option (possibly multiple times). If no benchmarks\nare specified, a default set of benchmarks is used. If a benchmark option is\nnot specified it assumes its default value (listed with `-l, --list-scenes`).\n\nAs a special case, a benchmark description string is allowed to not contain a\nscene name (i.e. to start with ':'). In this case, any specified option values\nare used as the default values for benchmarks following this description\nstring.\n\n# Benchmark examples\n\nTo run the default benchmarks:\n\n`$ vkmark`\n\nTo run a benchmark using scene 'vertex' with a 'duration' of '5.0' seconds and\n'interleave' set to 'false':\n\n`$ vkmark -b vertex:duration=5.0:interleave=false`\n\nTo run a series of benchmarks use the `-b, --benchmark` command line option multiple times:\n\n`$ vkmark -b vertex:duration=5.0 -b clear:color=1.0,0.5,0 -b cube`\n\nTo set default option values for benchmarks and run them:\n\n`$ vkmark -b :duration=2.0 -b vertex:interleave=true -b vertex:interleave=false -b :duration=5.0 -b cube`\n\nTo set default option values for the default benchmarks and run them:\n\n`$ vkmark -b :duration=2.0`\n\n# Window system selection\n\nvkmark tries to automatically detect the most suitable window system to use. If\nthis fails, or you want to override the automatic detection mechanism, you can use\nthe `--winsys` command-line option. For example, to force the XCB window system\nuse:\n\n`$ vkmark --winsys xcb`\n","funding_links":[],"categories":["C++"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvkmark%2Fvkmark","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvkmark%2Fvkmark","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvkmark%2Fvkmark/lists"}