Lunderberg commented on pull request #39:
URL: https://github.com/apache/tvm-rfcs/pull/39#issuecomment-937824488


   > How will vectorization work? If there is a `vectorize` directive spanning 
a logical extent, will the vectorization pass create multidimensional `ramp`s? 
How will vector loads and stores be represented?
   
   While in principle a vectorized load/store could fallback to a 
non-vectorized load/store, this would result in ignoring the `vectorize` 
directive entirely, which would be rather unexpected from the user's 
perspective.  Therefore, my plan for the initial implementation is to require 
the elements to be contiguous in both the logical and physical layouts if they 
are vectorized.  In both the physical and logical layouts, the vector 
load/store would be represented using a `RampNode` with `stride==1`.
   
   This restriction could then be loosened by allowing schedules to be 
expressed in terms of the physical layout, rather than the logical layout.  I 
haven't thought through the full implications of this, which would likely 
involve either introducing an inlined Stage whose axes are the physical axes, 
or by exposing the physical axes as a separate parameter within the same stage.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to