[libre-riscv-dev] LD/ST address matcher

Jacob Lifshay programmerjake at gmail.com
Tue Jun 4 00:09:01 BST 2019


On Mon, Jun 3, 2019, 16:01 Jacob Lifshay <programmerjake at gmail.com> wrote:

> On Mon, Jun 3, 2019, 15:51 Luke Kenneth Casson Leighton <lkcl at lkcl.net>
> wrote:
>
>>  can you please confirm: will the Vulkan API produce batches of LDs in
>> quick succession that are *exactly* on a 1MiB boundary?  if so, i'm
>> curious to know why, and if it can be avoided.
>>
> yes, a series of texture reads to apply multiple different textures to a
> surface. the accesses are all to the same location in each of the textures,
> and the memory for textures is aligned to a large power of 2 (at least a
> page, but quite likely a megapage or larger).
>
another case we can't get around by allowing multiple simultaneous loads is
drawing to multiple output textures simultaneously, a technique that allows
expensive lighting calculations to be done once per visible pixel instead
of once per rendered pixel.

see https://en.wikipedia.org/wiki/Deferred_shading

>


More information about the libre-riscv-dev mailing list