KhronosGroup / KhronosGroup/Vulkan-Tools

Mock ICD fails some simple operations

Open
#84 8 comments 0 reactions 1 assignee View on GitHub

@charles-lunarg is already working on this.

Since Feb 2, 2022.

enhancement MockICD
Dominant language
C++
Stars
493
Forks
202
Avg merge
1h 37m
Merged PRs (30d)
4

Description

The Mock ICD works well for a few simple use cases but breaks down on some workloads.

One simple example is allocating and writing to a buffer larger than 0x1000. This will trigger errors. I think handling arbitrary sizes should be something the Mock ICD should be able to support without too much trouble.

A second example is mapping memory ranges. After a first map call that writes to the data, the memory is discarded and subsequent map calls return junk data. It seems plausible for the Mock ICD to store some state associated with the device memory.

In both cases the application on top of the Mock ICD needs to know specifically that it is running on top of the mock ICD to work without errors. This seems counter to the intent of the mock ICD. It should be basically invisible apart from not executing commands.

@tobine @ShabbyX @y-novikov fyi

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.