public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "longb at cray dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/32551]  New: INCORRECT OUTPUT OBTAINED FROM NESTED PARALLELISM THAT IS SERIALIZED
Date: Fri, 29 Jun 2007 18:58:00 -0000	[thread overview]
Message-ID: <bug-32551-14710@http.gcc.gnu.org/bugzilla/> (raw)

Description:
This test case tries to show that
the following statement found in the OpenMP API Version 2.5 May 2005 on p.29
lines 21-24 is true:

"When a thread executing inside an active parallel region encounters a parallel
 construct, the new team which is created will consist of only the encountering
 thread, when any of the following conditions hold:
 *  nested parallelism is disabled."

> gfortran -v
Using built-in specs.
Target: x86_64-suse-linux
Configured with: ../xt-gcc-4.2.0/configure --prefix=/opt/gcc/4.2.0/snos
--disable-nls --libdir=/opt/gcc/4.2.0/snos/lib --enable-languages=c,c++,fortran
--with-gxx-include-dir=/opt/gcc/4.2.0/snos/include/g++
--with-slibdir=/opt/gcc/4.2.0/snos/lib --with-system-zlib --enable-shared
--enable-__cxa_atexit x86_64-suse-linux
Thread model: posix
gcc version 4.2.0 20070514 (rpm:4)

> cat bug2837.f90
! Derived from OpenMP test omp1/F2_2_9g.f90
      use omp_lib
      implicit none
      integer, parameter :: NT = 4
      integer :: nThreads(NT)
      integer :: tmp = 0
!$    call omp_set_dynamic(.false.)
!$    call omp_set_num_threads(NT)
      print *, 'omp_get_nested()=',omp_get_nested()

!$omp parallel default(private) shared(nThreads)
      tmp = 1
!$omp parallel default(shared)
!$omp atomic
      tmp = tmp + omp_get_thread_num() + 1
!$omp end parallel
      nThreads(omp_get_thread_num()+1) = tmp
!$omp end parallel
      print *, nThreads

      END
> ftn -O3 -fopenmp -o x bug2837.f90
> aprun -n 1 ./x
 omp_get_nested()= F
           1           1           1           1
Application 4711 resources: utime 0, stime 0

Expected output (from PGI compilation):

> ftn -o x -O3 -mp -Mconcur=nonuma bug2837.f90
bug2837.f90:
> aprun -n 1 ./x
Warning: omp_set_num_threads (4) greater than available cpus (1)
 omp_get_nested()=  F
            2            2            2            2
Application 4712 resources: utime 0, stime 0


------
Note: ftn is an alias for:

/opt/gcc/4.2.0/bin/../snos/bin/gfortran -static -v
-I/opt/xt-mpt/2.1/mpich2-64/GP/include -I/opt/xt-mpt/2.1/mpich2-64/GP/include
-L/opt/xt-mpt/2.1/mpich2-64/GP/lib -I/opt/acml/3.6.1/gnu64/include
-I/opt/xt-libsci/10.1.0/gnu/snos64/include
-I/opt/xt-libsci/10.1.0/gnu/snos64/include/superlu
-I/opt/xt-mpt/2.1/sma/P/include -L/opt/acml/3.6.1/gnu64/lib
-L/opt/xt-libsci/10.1.0/gnu/snos64/lib -L/opt/xt-mpt/2.1/sma/P/lib -lmpichf90
-lsci -lacml -lsma -lmpichf90 -lmpich -lrt -D__CRAYXT_COMPUTE_LINUX_TARGET
-D__TARGET_LINUX__ -fno-second-underscore
-I/notbackedup/users/rsrel/rs64.DEV.070604.Mon/install/include
-I/opt/xt-catamount/2.1/catamount/linux/include -I/opt/xt-service/2.1/include
-L/notbackedup/users/rsrel/rs64.DEV.070604.Mon/install/lib/snos64
-L/opt/xt-pe/2.1/cnos/linux/64/lib -L/opt/xt-mpt/2.1/lib/snos64
-L/opt/xt-service/2.1/lib/snos64 -Wl,--start -lpct -lalpslli -lalpsutil
-lportals -lpthread -Wl,--end -lgfortranbegin -lgfortran -lm


-- 
           Summary: INCORRECT OUTPUT OBTAINED FROM NESTED PARALLELISM THAT
                    IS SERIALIZED
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: longb at cray dot com
 GCC build triplet: x86_64-suse-linux
  GCC host triplet: x86_64-suse-linux
GCC target triplet: x86_64-suse-linux


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


             reply	other threads:[~2007-06-29 18:58 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-29 18:58 longb at cray dot com [this message]
2007-06-29 21:28 ` [Bug fortran/32551] incorrect output obtained from nested parallelism that is serialized dfranke at gcc dot gnu dot org
2007-07-02 12:04 ` jakub at gcc dot gnu dot org
2007-07-02 12:05 ` jakub at gcc dot gnu dot org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-32551-14710@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).