-
Notifications
You must be signed in to change notification settings - Fork 805
Adding array operator long vector tests to HLK #7887
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
| OP_DEFAULT_DEFINES(ArrayOperator, ArrayOperator_Loop, 2, "TestArrayOperatorLoop", "", | ||
| " -DFUNC_ARRAY_OPERATOR=1 -DLOOP_ATTRB=loop") | ||
| OP_DEFAULT_DEFINES(ArrayOperator, ArrayOperator_Unroll, 2, "TestArrayOperatorUnroll", "", | ||
| " -DFUNC_ARRAY_OPERATOR=1 -DLOOP_ATTRB=unroll") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you consider doing the loop / unroll versions as a single "OP"? For the expected results instead of using size * 2 you could use size * 4 and in the shader just have the loops one after another?
| [LOOP_ATTRB] for(uint i = 0; i < OutNum; i++) | ||
| OutputVector[i] = Input1[i] + Input2[i]; | ||
| [LOOP_ATTRB] for(uint i = 0; i < OutNum; i++) | ||
| g_OutputVector.Store<OUT_TYPE>(sizeof(OUT_TYPE) * (OutNum + i), OutputVector[i]); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not obvious to me why there are two loops here? Are they testing different dxil ops? A comment to explain this might help.
| vector<OUT_TYPE, OutNum> OutputVector = g_InputVector1.Load< vector<TYPE, | ||
| NUM> >(0); | ||
| OutputVector[0] = Input1[OutNum - 1]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there some auto formatter or something that puts this awkward line break here?
| vector<OUT_TYPE, OutNum> OutputVector = g_InputVector1.Load< vector<TYPE, | |
| NUM> >(0); | |
| OutputVector[0] = Input1[OutNum - 1]; | |
| vector<OUT_TYPE, OutNum> OutputVector = g_InputVector1.Load< vector<TYPE, NUM> >(0); | |
| OutputVector[0] = Input1[OutNum - 1]; |
This patch is adding array operator long vector test to HLK. There are 3 scenarios that were identified when doing those tests:
shufflevectorto order the array in the correct new order.extracelementandinsertelementto perform loads and stores.Closes: #7618