Запись на хосте гарантирует доступ к источнику - PullRequest
0 голосов
/ 21 апреля 2020

Согласно спецификации c (1.2.138), раздел 6.9 (Гарантии упорядочения записи хоста):

Когда пакеты командных буферов передаются в очередь через vkQueueSubmit, он определяет Зависимость памяти от предыдущих операций хоста и выполнение командных буферов, отправленных в очередь.

[...]

Первая область доступа включает все записи хоста в сопоставляемые память устройства, доступная для домена памяти хоста.

означает «сопоставляемый» означает, что выделенный с помощью VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT?

делает «доступным домену памяти хоста» среднее значение в настоящее время отображается ?

1 Ответ

1 голос
/ 21 апреля 2020

означает ли "сопоставляемость", выделенную с использованием VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT?

Да.

означает ли "доступная для области памяти хоста" отображаемую в настоящее время?

Нет.

На устройстве это означает, что выполняется синхронизация, которая включает в себя Domain Op с хостом. Это означает барьероподобный примитив с VK_PIPELINE_STAGE_HOST_BIT.

Или при записи на хост через отображенный указатель должно быть vkFlushMappedMemoryRanges, если они не COHERENT. Запись в память уже находится в домене хоста, но vkFlush выполняет OP доступности.

В этой главе это означает позднее. Операции записи в память через сопоставленный указатель, которые COHERENT или vkFlushMappedMemoryRanges, автоматически \ неявно станут видимыми для графического процессора в следующие vkQueueSubmit.

...