[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