[Dwarf-Discuss] modeling different address spaces
Michael Eager
eager@eagercon.com
Mon Jul 20 15:49:28 GMT 2020
On 7/20/20 8:24 AM, Metzger, Markus T wrote:
> Hello Michael,
>
>>> We'd also want an unbounded piece operator to describe partially registerized
>>> unbounded arrays, but I have not worked that out in detail, yet, and we're a bit
>>> farther away from an implementation.
>>
>> Can you describe this more?
>
> Consider a large array kept in memory and a for loop iterating over the array. If that
> loop gets vectorized, compilers would load a portion of the array into registers at the
> beginning of the loop body, operate on the registers, and write them back at the end
> of the loop body.
>
> The entire array can be split into three pieces:
> - elements that have already been processed: in memory
> - elements that are currently being processed: in registers
> - elements that will be processed in future iterations: in memory
>
> For unbounded arrays, the size of the third piece is not known.
When would you need to know the third piece?
How is this different from a non-vector processor doing an optimized
string operation, loading 4 characters into a register at a time? If
the string is nul-terminated, the string length might be unknown.
--
Michael Eager
More information about the Dwarf-discuss
mailing list