public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/35423]  New: Implement OpenMP workshare
@ 2008-03-03 14:28 burnus at gcc dot gnu dot org
  2008-03-06 11:21 ` [Bug fortran/35423] " jakub at gcc dot gnu dot org
                   ` (8 more replies)
  0 siblings, 9 replies; 12+ messages in thread
From: burnus at gcc dot gnu dot org @ 2008-03-03 14:28 UTC (permalink / raw)
  To: gcc-bugs

Jakub wrote:
> BTW, omp workshare is implemented the same as omp single and this is the
> first time I see somebody actually using that construct anywhere. I don't
> have plans to implement omp workshare more efficiently, at least in the
> foreseeable future. So ATM !$omp parallel workshare is just a fancy
> way to say something is not parallelized. It is standard conforming, but
> not going beyond that.

Seemingly it becomes more requested. The quote above comes from:
  http://gcc.gnu.org/ml/fortran/2008-02/msg00137.html
and it was requested also in
  http://gcc.gnu.org/ml/fortran/2008-03/msg00008.html


-- 
           Summary: Implement OpenMP workshare
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: openmp
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: burnus at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
@ 2008-03-06 11:21 ` jakub at gcc dot gnu dot org
  2008-03-07 11:49 ` fxcoudert at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu dot org @ 2008-03-06 11:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from jakub at gcc dot gnu dot org  2008-03-06 11:20 -------
This is not middle-end thing, all that is needed is change fortran FE to lower
(some forms of ) !$omp workshare constructs into some other standard
worksharing construct than single, particularly into OMP_FOR or perhaps
sometimes OMP_SECTIONS or OMP_SINGLE just for one or a couple of lines rather
than the whole !$omp workshare.
I don't plan to work on this myself, but any of the numerous Fortran FE
maintainers could do this, I can help with advice if needed.
Either code to expand the implicit loops in expressions will need to be
duplicated, or tweaked (e.g. add a flag to them, which would result in OMP_FOR
loops being created rather than normal loops).


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|middle-end                  |fortran


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
  2008-03-06 11:21 ` [Bug fortran/35423] " jakub at gcc dot gnu dot org
@ 2008-03-07 11:49 ` fxcoudert at gcc dot gnu dot org
  2008-07-01 18:08 ` burnus at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2008-03-07 11:49 UTC (permalink / raw)
  To: gcc-bugs



-- 

fxcoudert at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2008-03-07 11:48:45
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
  2008-03-06 11:21 ` [Bug fortran/35423] " jakub at gcc dot gnu dot org
  2008-03-07 11:49 ` fxcoudert at gcc dot gnu dot org
@ 2008-07-01 18:08 ` burnus at gcc dot gnu dot org
  2008-08-13 20:59 ` burnus at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: burnus at gcc dot gnu dot org @ 2008-07-01 18:08 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from burnus at gcc dot gnu dot org  2008-07-01 18:08 -------
First patch: http://gcc.gnu.org/ml/fortran/2008-06/msg00281.html


-- 

burnus at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2008-07-01 18:08 ` burnus at gcc dot gnu dot org
@ 2008-08-13 20:59 ` burnus at gcc dot gnu dot org
  2009-03-29  7:59 ` fxcoudert at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: burnus at gcc dot gnu dot org @ 2008-08-13 20:59 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from burnus at gcc dot gnu dot org  2008-08-13 20:57 -------
Patch v1.1: http://gcc.gnu.org/ml/fortran/2008-08/msg00032.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2008-08-13 20:59 ` burnus at gcc dot gnu dot org
@ 2009-03-29  7:59 ` fxcoudert at gcc dot gnu dot org
  2009-03-29  8:12 ` fxcoudert at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2009-03-29  7:59 UTC (permalink / raw)
  To: gcc-bugs



-- 

fxcoudert at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |enhancement


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2009-03-29  7:59 ` fxcoudert at gcc dot gnu dot org
@ 2009-03-29  8:12 ` fxcoudert at gcc dot gnu dot org
  2009-04-16 16:59 ` jakub at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2009-03-29  8:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from fxcoudert at gcc dot gnu dot org  2009-03-29 08:11 -------
Has the second patch been reviewed? Has Vasilis completed his copyright
assignment?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2009-03-29  8:12 ` fxcoudert at gcc dot gnu dot org
@ 2009-04-16 16:59 ` jakub at gcc dot gnu dot org
  2009-04-20 11:00 ` jakub at gcc dot gnu dot org
  2009-12-03 14:16 ` burnus at gcc dot gnu dot org
  8 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-04-16 16:59 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from jakub at gcc dot gnu dot org  2009-04-16 16:59 -------
http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01249.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2009-04-16 16:59 ` jakub at gcc dot gnu dot org
@ 2009-04-20 11:00 ` jakub at gcc dot gnu dot org
  2009-12-03 14:16 ` burnus at gcc dot gnu dot org
  8 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-04-20 11:00 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from jakub at gcc dot gnu dot org  2009-04-20 11:00 -------
Subject: Bug 35423

Author: jakub
Date: Mon Apr 20 10:59:59 2009
New Revision: 146397

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=146397
Log:
        PR fortran/35423
        * trans.h (OMPWS_WORKSHARE_FLAG, OMPWS_CURR_SINGLEUNIT,
        OMPWS_SCALARIZER_WS, OMPWS_NOWAIT): Define.
        (ompws_flags): New extern decl.
        * trans-array.c (gfc_trans_scalarized_loop_end): Build OMP_FOR
        for the outer dimension if ompws_flags allow it.
        * trans.c (gfc_generate_code): Clear ompws_flags.
        * trans-expr.c (gfc_trans_assignment_1): Allow worksharing
        array assignments inside of !$omp workshare.
        * trans-stmt.c (gfc_trans_where_3): Similarly for where statements
        and constructs.
        * trans-openmp.c (ompws_flags): New variable.
        (gfc_trans_omp_workshare): Rewritten.

        * testsuite/libgomp.fortran/workshare2.f90: New test.

Added:
    trunk/libgomp/testsuite/libgomp.fortran/workshare2.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/trans-array.c
    trunk/gcc/fortran/trans-expr.c
    trunk/gcc/fortran/trans-openmp.c
    trunk/gcc/fortran/trans-stmt.c
    trunk/gcc/fortran/trans.c
    trunk/gcc/fortran/trans.h
    trunk/libgomp/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
  2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2009-04-20 11:00 ` jakub at gcc dot gnu dot org
@ 2009-12-03 14:16 ` burnus at gcc dot gnu dot org
  8 siblings, 0 replies; 12+ messages in thread
From: burnus at gcc dot gnu dot org @ 2009-12-03 14:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from burnus at gcc dot gnu dot org  2009-12-03 14:16 -------
Items left to do:

* worksharing of other stuff (say FORALL)
[I have not check the patch, but possibly assignments in WHERE blocks could
also profit from more work]

* dependency analysis ("the goal of dependency checking is to avoid unnecessary 
barriers by inserting NOWAIT clauses when safe.  Hopefully the functionality
provided in dependency.c will be useful here")

(cf. http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01598.html)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
       [not found] <bug-35423-4@http.gcc.gnu.org/bugzilla/>
  2014-12-23 14:48 ` dominiq at lps dot ens.fr
@ 2015-08-30 15:49 ` dominiq at lps dot ens.fr
  1 sibling, 0 replies; 12+ messages in thread
From: dominiq at lps dot ens.fr @ 2015-08-30 15:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |RESOLVED
         Resolution|---                         |FIXED

--- Comment #9 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> This PR is more than five years old and seems (mostly) fixed. Any reason
> to keep it open?

No feedback for more than eight months. Closing as FIXED. Please open new PR(s)
with test cases for remaining issue(s).


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug fortran/35423] Implement OpenMP workshare
       [not found] <bug-35423-4@http.gcc.gnu.org/bugzilla/>
@ 2014-12-23 14:48 ` dominiq at lps dot ens.fr
  2015-08-30 15:49 ` dominiq at lps dot ens.fr
  1 sibling, 0 replies; 12+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-12-23 14:48 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35423

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |WAITING
                 CC|                            |burnus at gcc dot gnu.org,
                   |                            |jakub at gcc dot gnu.org

--- Comment #8 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
This PR is more than five years old and seems (mostly) fixed. Any reason to
keep it open?


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2015-08-30 15:49 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-03 14:28 [Bug middle-end/35423] New: Implement OpenMP workshare burnus at gcc dot gnu dot org
2008-03-06 11:21 ` [Bug fortran/35423] " jakub at gcc dot gnu dot org
2008-03-07 11:49 ` fxcoudert at gcc dot gnu dot org
2008-07-01 18:08 ` burnus at gcc dot gnu dot org
2008-08-13 20:59 ` burnus at gcc dot gnu dot org
2009-03-29  7:59 ` fxcoudert at gcc dot gnu dot org
2009-03-29  8:12 ` fxcoudert at gcc dot gnu dot org
2009-04-16 16:59 ` jakub at gcc dot gnu dot org
2009-04-20 11:00 ` jakub at gcc dot gnu dot org
2009-12-03 14:16 ` burnus at gcc dot gnu dot org
     [not found] <bug-35423-4@http.gcc.gnu.org/bugzilla/>
2014-12-23 14:48 ` dominiq at lps dot ens.fr
2015-08-30 15:49 ` dominiq at lps dot ens.fr

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).