You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tvm.apache.org by "cbalint13 (via GitHub)" <gi...@apache.org> on 2024/11/30 21:08:24 UTC

Re: [I] [Bug] How to use auto_scheduler to generate SVE code [tvm]

cbalint13 commented on issue #17456:
URL: https://github.com/apache/tvm/issues/17456#issuecomment-2509386442

   Hi @yohuna77777 ,
   
   * If you pre-define the length (=1024 in this case) of arrays so there will be no SVE "dynamism" involved.
   * But can try tune your pre-defined kernel against real target to see if a better SVE kernel will be proposed or not.
   
   I updated your script [tvm-17456.py.gz](https://github.com/user-attachments/files/17966884/tvm-17456.py.gz) for dynamic scenario and here is the output:
   
   ```
   $ ./tvm-17456.py | grep ld1
   	ld1b	{ z0.b }, p0/z, [x3, x11]
   	ld1b	{ z1.b }, p0/z, [x5, x11]
   	ld1w	{ z2.s }, p1/z, [x14, #1, mul vl]
   	ld1w	{ z3.s }, p1/z, [x15, #1, mul vl]
   ```
   
   Also you can look at more [tvm testcase examples](https://github.com/apache/tvm/blob/main/tests/python/codegen/test_target_codegen_aarch64.py) where explicit ```T.vscale()``` kernels are constructed if this is the goal. 
   Or simply try tune your kernel agaisnt real arm64+sve target to see if the best performing kernel will have SVE included.
   


-- 
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: commits-unsubscribe@tvm.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org