public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Biener <rguenther@suse.de>
To: Nicholas Krause <xerofoify@gmail.com>
Cc: gcc@gcc.gnu.org
Subject: Re: Multi-Threading GCC Compiler Internal Data
Date: Tue, 17 Sep 2019 06:37:00 -0000	[thread overview]
Message-ID: <nycvar.YFH.7.76.1909170831220.5566@zhemvz.fhfr.qr> (raw)
In-Reply-To: <211b7dc7-2535-33c5-7f6e-ed14b16cc3f2@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1270 bytes --]

On Mon, 16 Sep 2019, Nicholas Krause wrote:

> Greetings Richard,
> 
> I don't know if it's currently possible but whats the best way to either so
> about or
> 
> use a tool to expose shared state at both the GIMPLE and RTL level.  This
> would
> 
> allow us to figure out much better what algorthims or data structures to
> choose
> 
> to allow this to scale much better than the current prototype.

You are mixing independent issues.  Shared state needs to be identified
and protected for correctness reasons.  In some cases changing the
data structure to be protected can make it cheaper to do so.  The
scaling of the current prototype is limited by the fraction of the
compilation we parallelize as well as the granularity.

Going forward the most useful things are a) reducing the amount of
state that ends up being shared when we paralellize, b) increase
the fraction of the compilation we paralellize by tackling
RTL optimizations and the early GIMPLE pipeline

The prototype showed that paralellization is beneficial and that it
can be done with a reasonable amount of work.

Richard.

-- 
Richard Biener <rguenther@suse.de>
SUSE Software Solutions Germany GmbH, Maxfeldstrasse 5, 90409 Nuernberg,
Germany; GF: Felix Imendörffer; HRB 247165 (AG München)

  reply	other threads:[~2019-09-17  6:37 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-16 18:25 Nicholas Krause
2019-09-17  6:37 ` Richard Biener [this message]
2019-09-17 15:20   ` Nicholas Krause
2019-09-18  8:01     ` Richard Biener
2019-09-18 20:09       ` Nicholas Krause

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=nycvar.YFH.7.76.1909170831220.5566@zhemvz.fhfr.qr \
    --to=rguenther@suse.de \
    --cc=gcc@gcc.gnu.org \
    --cc=xerofoify@gmail.com \
    /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).