This is the mail archive of the
mailing list for the GCC project.
Re: [gomp4] New builtins, preparation for oacc vector-single
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Bernd Schmidt <bernds at codesourcery dot com>
- Cc: gcc-patches at gnu dot org
- Date: Wed, 20 May 2015 14:39:41 +0200
- Subject: Re: [gomp4] New builtins, preparation for oacc vector-single
- Authentication-results: sourceware.org; auth=none
- References: <555C77A8 dot 2030300 at codesourcery dot com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Wed, May 20, 2015 at 02:01:44PM +0200, Bernd Schmidt wrote:
> To implement OpenACC vector-single mode, we need to ensure that only one
> thread out of the group representing a worker executes. The others skip
> computations but follow along the CFG, so the results of conditional branch
> decisions must be broadcast to them.
> The patch below adds a new builtin and nvptx pattern to implement that
> broadcast functionality.
So, is the goal of this that threads in the warp other than the 0th
don't do anything except in vectorized regions, where all the threads
in the warp participate in the vectorization?
Thus, for OpenMP, should the whole warp be a single thread
(thus omp_get_thread_num () would be tid.x >> 5)?
If so, is the GCC vectorizer going to be taught about this?