This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [OpenACC 7/11] execution model


On Mon, Oct 26, 2015 at 04:11:20PM -0700, Nathan Sidwell wrote:
> Jakub, Richard,
> This is the updated version of patch 7, using target-insns.def for the new
> insns.  Otherwise same as yesterday's, which had the following changes:
> 
> The significant change is that now the head/tail unique markers are
> threaded on a data dependency variable.  I'd not  noticed its lack being a
> problem, but this is certainly more robust in showing the ordering
> dependency between calls.  The dependency var is the 2nd parameter, and all
> others are simply shifted along by one.
> 
> At RTL generation time the date dependency is exposed to the RTL expander,
> which in the PTX case simply does a src->dst move, which will eventually be
> deleted as unnecessary.
> 
> ok?

LGTM, though could I ask you to try to try to move the
struct oacc_collapse
expand_oacc_collapse_init
expand_oacc_collapse_vars
expand_oacc_for
additions somewhere else
(e.g. in between expand_omp_taskreg and expand_omp_for_init_counts),
because it seems patch just got too confused and gave up, so most of
expand_omp_for which I assume is unchanged except for
> +  else if (gimple_omp_for_kind (fd.for_stmt) == GF_OMP_FOR_KIND_OACC_LOOP)
> +    {
> +      gcc_assert (!inner_stmt);
> +      expand_oacc_for (region, &fd);
> +    }
addition is considered to be deleted in one place and added into another
one; if patch does this, I'd be afraid svn blame or git blame would do so
too, and thus lose history for expand_omp_for.  If moving it around doesn't
help, no big deal, but if it helps, it would be appreciated.

> 	(is_oacc_parallel, is_oaccc_kernels): New.

One too many Cs.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]