Skip to content
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

Improvements to GPU grammars + new benchmark #539

Merged
merged 21 commits into from
Oct 23, 2023
Merged
Changes from 1 commit
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix ids in control barriers
Signed-off-by: Hernan Ponce de Leon <hernanl.leon@huawei.com>
hernan-poncedeleon committed Oct 23, 2023
commit f375f6fad394e1b3bdd74235beb73ff8a8ae2c57
2 changes: 1 addition & 1 deletion cat/spirv-check.cat
Original file line number Diff line number Diff line change
@@ -195,7 +195,7 @@ let scbarinstIsPo = (syncbar & (po | po^-1))
flag ~empty scbarinstIsPo as checkScbarinstIsPo

// can't have two cbars where one comes first in po in one thread and second in po in another thread
let scbarinstIsPo2 = (syncbar & (po; syncbar; po) & syncbar)
let scbarinstIsPo2 = (po; syncbar; po) & syncbar
flag ~empty scbarinstIsPo2 as checkScbarinstIsPo2

// the same instance of a control barrier must have same scope, acq/rel, semantics
4 changes: 2 additions & 2 deletions litmus/PTX/Manual/XF-Barrier-rlx.litmus
Original file line number Diff line number Diff line change
@@ -9,13 +9,13 @@ P1:r0=0;
}
P0@cta 0,gpu 0 | P1@cta 1,gpu 0 | P2@cta 1,gpu 0 ;
st.weak x, 1 | bar.cta.sync 1 | bar.cta.sync 1 ;
LC00: | st.relaxed.gpu f, 1 | bar.cta.sync 1 ;
LC00: | st.relaxed.gpu f, 1 | bar.cta.sync 2 ;
ld.relaxed.gpu r2, f | LC10: | ;
bne r2, 0, LC01 | ld.relaxed.gpu r2, f | ;
goto LC00 | bne r2, 1, LC11 | ;
LC01: | goto LC10 | ;
bar.cta.sync 1 | LC11: | ;
st.relaxed.gpu f, 0 | bar.cta.sync 1 | ;
st.relaxed.gpu f, 0 | bar.cta.sync 2 | ;
| ld.weak r1, x | ;
exists
(P1:r2 != 1 /\ P1:r1 == 0)
4 changes: 2 additions & 2 deletions litmus/PTX/Manual/XF-Barrier-weak.litmus
Original file line number Diff line number Diff line change
@@ -9,13 +9,13 @@ P1:r0=0;
}
P0@cta 0,gpu 0 | P1@cta 1,gpu 0 | P2@cta 1,gpu 0 ;
st.weak x, 1 | bar.cta.sync 1 | bar.cta.sync 1 ;
LC00: | st.weak f, 1 | bar.cta.sync 1 ;
LC00: | st.weak f, 1 | bar.cta.sync 2 ;
ld.weak r2, f | LC10: | ;
bne r2, 0, LC01 | ld.weak r2, f | ;
goto LC00 | bne r2, 1, LC11 | ;
LC01: | goto LC10 | ;
bar.cta.sync 1 | LC11: | ;
st.weak f, 0 | bar.cta.sync 1 | ;
st.weak f, 0 | bar.cta.sync 2 | ;
| ld.weak r1, x | ;
exists
(P1:r2 != 1 /\ P1:r1 == 0)
4 changes: 2 additions & 2 deletions litmus/VULKAN/Manual/XF-Barrier-relacq.litmus
Original file line number Diff line number Diff line change
@@ -10,13 +10,13 @@ P1:r0=0;
}
P0@sg 0, wg 0, qf 0 | P1@sg 0, wg 1, qf 0 | P2@sg 0, wg 1, qf 0 ;
st.av.dv.sc0 x, 1 | cbar.wg 1 | cbar.wg 1 ;
LC00: | st.atom.dv.sc0 f, 1 | cbar.wg 1 ;
LC00: | st.atom.dv.sc0 f, 1 | cbar.wg 2 ;
ld.atom.dv.sc0 r2, f | LC10: | ;
bne r2, 0, LC01 | ld.atom.acq.dv.sc0.semsc0 r2, f | ;
goto LC00 | bne r2, 1, LC11 | ;
LC01: | goto LC10 | ;
cbar.wg 1 | LC11: | ;
st.atom.rel.dv.sc0.semsc0 f, 0 | cbar.wg 1 | ;
st.atom.rel.dv.sc0.semsc0 f, 0 | cbar.wg 2 | ;
| ld.vis.dv.sc0 r1, x | ;
exists
(P1:r2 != 1 /\ P1:r1 == 0)
4 changes: 2 additions & 2 deletions litmus/VULKAN/Manual/XF-Barrier-rlx.litmus
Original file line number Diff line number Diff line change
@@ -10,13 +10,13 @@ P1:r0=0;
}
P0@sg 0, wg 0, qf 0 | P1@sg 0, wg 1, qf 0 | P2@sg 0, wg 1, qf 0 ;
st.av.dv.sc0 x, 1 | cbar.wg 1 | cbar.wg 1 ;
LC00: | st.atom.dv.sc0 f, 1 | cbar.wg 1 ;
LC00: | st.atom.dv.sc0 f, 1 | cbar.wg 2 ;
ld.atom.dv.sc0 r2, f | LC10: | ;
bne r2, 0, LC01 | ld.atom.dv.sc0 r2, f | ;
goto LC00 | bne r2, 1, LC11 | ;
LC01: | goto LC10 | ;
cbar.wg 1 | LC11: | ;
st.atom.dv.sc0 f, 0 | cbar.wg 1 | ;
st.atom.dv.sc0 f, 0 | cbar.wg 2 | ;
| ld.vis.dv.sc0 r1, x | ;
exists
(P1:r2 != 1 /\ P1:r1 == 0)
4 changes: 2 additions & 2 deletions litmus/VULKAN/Manual/XF-Barrier-weak.litmus
Original file line number Diff line number Diff line change
@@ -9,13 +9,13 @@ P1:r0=0;
}
P0@sg 0, wg 0, qf 0 | P1@sg 0, wg 1, qf 0 | P2@sg 0, wg 1, qf 0 ;
st.av.dv.sc0 x, 1 | cbar.wg 1 | cbar.wg 1 ;
LC00: | st.dv.sc0 f, 1 | cbar.wg 1 ;
LC00: | st.dv.sc0 f, 1 | cbar.wg 2 ;
ld.dv.sc0 r2, f | LC10: | ;
bne r2, 0, LC01 | ld.dv.sc0 r2, f | ;
goto LC00 | bne r2, 1, LC11 | ;
LC01: | goto LC10 | ;
cbar.wg 1 | LC11: | ;
st.dv.sc0 f, 0 | cbar.wg 1 | ;
st.dv.sc0 f, 0 | cbar.wg 2 | ;
| ld.vis.dv.sc0 r1, x | ;
exists
(P1:r2 != 1 /\ P1:r1 == 0)