public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc/devel/omp/gcc-12] Revert changes to acc_prof-init-1.c and acc_prof-parallel-1.c
@ 2022-06-29 14:48 Kwok Yeung
0 siblings, 0 replies; only message in thread
From: Kwok Yeung @ 2022-06-29 14:48 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:b845d2f62e7da1c4cfdfee99690de94b648d076d
commit b845d2f62e7da1c4cfdfee99690de94b648d076d
Author: Kwok Cheung Yeung <kcy@codesourcery.com>
Date: Fri Jun 24 21:29:28 2022 +0100
Revert changes to acc_prof-init-1.c and acc_prof-parallel-1.c
There is an interaction between the commits "OpenACC profiling-interface
fixes for asynchronous operations" and "[OpenACC] Clarify sequencing of
'async' data copying vs. profiling events in
'libgomp.oacc-c-c++-common/acc_prof-{init,parallel}-1.c'", leading to an
execution test failure and hang in these two tests.
This reverts changes to the tests made by the second patch, allowing the
tests to pass.
2022-05-30 Kwok Cheung Yeung <kcy@codesourcery.com>
libgomp/
* testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
(cb_compute_construct_end): Remove COPYIN block.
(main): Remove assignments to acc_async.
* testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
(cb_enter_data_end): Remove COPYIN block.
(main): Remove assignment to acc_async.
Diff:
---
libgomp/ChangeLog.omp | 9 +++++++++
.../libgomp.oacc-c-c++-common/acc_prof-init-1.c | 17 -----------------
.../libgomp.oacc-c-c++-common/acc_prof-parallel-1.c | 20 --------------------
3 files changed, 9 insertions(+), 37 deletions(-)
diff --git a/libgomp/ChangeLog.omp b/libgomp/ChangeLog.omp
index 3e1ed8efed6..0dbc13381b6 100644
--- a/libgomp/ChangeLog.omp
+++ b/libgomp/ChangeLog.omp
@@ -1,3 +1,12 @@
+2022-05-30 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
+ (cb_compute_construct_end): Remove COPYIN block.
+ (main): Remove assignments to acc_async.
+ * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
+ (cb_enter_data_end): Remove COPYIN block.
+ (main): Remove assignment to acc_async.
+
2022-05-31 Kwok Cheung Yeung <kcy@codesourcery.com>
* testsuite/libgomp.oacc-c-c++-common/pr85381-3.c (foo_v, foo_w):
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
index a33fac7556c..6bbe99df1ff 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
@@ -208,21 +208,6 @@ static void cb_compute_construct_end (acc_prof_info *prof_info, acc_event_info *
assert (state == 11
|| state == 111);
-#if defined COPYIN
- /* In an 'async' setting, this event may be triggered before actual 'async'
- data copying has completed. Given that 'state' appears in 'COPYIN', we
- first have to synchronize (that is, let the 'async' 'COPYIN' read the
- current 'state' value)... */
- if (acc_async != acc_async_sync)
- {
- /* "We're not yet accounting for the fact that _OpenACC events may occur
- during event processing_"; temporarily disable to avoid deadlock. */
- unreg (acc_ev_none, NULL, acc_toggle_per_thread);
- acc_wait (acc_async);
- reg (acc_ev_none, NULL, acc_toggle_per_thread);
- }
- /* ... before modifying it in the following. */
-#endif
STATE_OP (state, ++);
assert (tool_info != NULL);
@@ -295,7 +280,6 @@ int main()
{
state_init = state;
}
- acc_async = acc_async_sync;
#pragma acc wait
assert (state_init == 11);
}
@@ -322,7 +306,6 @@ int main()
{
state_init = state;
}
- acc_async = acc_async_sync;
#pragma acc wait
assert (state_init == 111);
}
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
index 663f7f724d5..9a542b56fe5 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
@@ -248,25 +248,6 @@ static void cb_enter_data_end (acc_prof_info *prof_info, acc_event_info *event_i
assert (state == 4
|| state == 104);
-#if defined COPYIN
- /* Conceptually, 'acc_ev_enter_data_end' marks the end of data copying,
- before 'acc_ev_enqueue_launch_start' marks invoking the compute region.
- That's the 'state_init = state;' intended to be captured in the compute
- regions. */
- /* In an 'async' setting, this event may be triggered before actual 'async'
- data copying has completed. Given that 'state' appears in 'COPYIN', we
- first have to synchronize (that is, let the 'async' 'COPYIN' read the
- current 'state' value)... */
- if (acc_async != acc_async_sync)
- {
- /* "We're not yet accounting for the fact that _OpenACC events may occur
- during event processing_"; temporarily disable to avoid deadlock. */
- unreg (acc_ev_none, NULL, acc_toggle_per_thread);
- acc_wait (acc_async);
- reg (acc_ev_none, NULL, acc_toggle_per_thread);
- }
- /* ... before modifying it in the following. */
-#endif
STATE_OP (state, ++);
assert (tool_info != NULL);
@@ -698,7 +679,6 @@ int main()
state_init = state;
}
- acc_async = acc_async_sync;
#pragma acc wait
assert (state_init == 104);
}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-06-29 14:48 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-29 14:48 [gcc/devel/omp/gcc-12] Revert changes to acc_prof-init-1.c and acc_prof-parallel-1.c Kwok Yeung
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).