public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Damian Rouson <damian@rouson.net>
To: Jerry DeLisle <jvdelisle@charter.net>, FX <fxcoudert@gmail.com>
Cc: Damian Rouson <damian@sourceryinstitute.org>,
	Izaak Beekman <izaak@izaakbeekman.com>,
		Andre Vehreschild <vehre@gmx.de>, gfortran <fortran@gcc.gnu.org>,
	GCC Development <gcc@gcc.gnu.org>
Subject: Re: [patch, libgfortran RFC] Installation script for OpenCoarrays to enable multi-image gfortran
Date: Sat, 28 Jan 2017 02:13:00 -0000	[thread overview]
Message-ID: <CAE0_W2Xi5G239C3zoWo+TNMiOibJR=dBMLYSj5c+q+u+yVk_pg@mail.gmail.com> (raw)
In-Reply-To: <2047e9a6-6d7a-1aae-3c2d-4ad1b9c25e88@charter.net>

On January 26, 2017 at 9:12:36 AM, Jerry DeLisle
(jvdelisle@charter.net(mailto:jvdelisle@charter.net)) wrote:

> On 01/26/2017 05:25 AM, FX wrote:
>
> > - I am a bit surprised by the complexity of the script… couldn’t we provide a Makefile for opencoarrays, to be compatible with our other build requirements?
>

As Jerry alluded, the script takes advantage of code form the
bash3boilerplate project
(https://github.com/zbeekman/bash3boilerplate/tree/add-use-case).
Almost every time I’ve started writing a simple script without
bash3boilerplate, I ultimately decided to use bash3boilerplate. Using
bash3boilerplate makes the code more robust (e.g., preventing the use
of unset variables) and more flexible (e.g., making it easy to add
command-line arguments).


>
> > - do we want to work towards seamless implementation of coarrays into gfortran, or coexistence as a separate package (as is currently the case, for example in Mac Homebrew, where it ships as a separate — but compatible — package)?

It would be difficult or impossible for several OpenCoarrays
developers to contribute without OpenCoarrays remaining separate for
several reasons.  First, committing OpenCoarrays source to the
gfortran repository would almost certainly cut off all possibility
that another compiler would adopt the relevant code as its parallel
runtime library for licensing reasons and that potential for future
adoption by other compilers is a primary motivation of the Sourcery
Institute support for OpenCoarrays. Also, Sourcery Institute has a
government contract in which GitHub and the tools that integrate into
GitHub (e.g., Travis-CI and Markdown) play a central role along with
various git workflows (e.g., the GitHub Flow) so keeping OpenCoarrays
on GitHub creates important synergies with other projects that makes
it much easier to fund the development of OpenCoarrays.

>
> I think we do want to head toward seamless. I have explored even copying the
> source directly into the caf directory of libgfortran and merging the .h files,
> but this takes some time to do and would leave two sets of sources to maintain.

From an end user perspective, building OpenCoarrays during the
gfortran build strikes me as seamles and doing so matches the current
practice with MPFR, MPIC, GMP, and ISL. Also, multi-image execution
will always add at least one new external dependency in the form of a
parallel communication library such as MPI.

> Regarding things like Homebrew, or rpm packages, it will require us to learn how
> to do these packages which none of us know right now.

I wonder if developing an OpenCoarrays rpm package would be a good
task as part of a Google Summer of Code (SoC) project.  February 9 is
the application deadline for organizations seeking to host an SoC
student and I’m interested in applying to host a student.  If anyone
can suggest other good projects related to gfortran and OpenCoarrays,
please let me know.  Several students have expressed interest.  I’m
especially interested in anything that increases the support for the
Fortran standards.

>
> Ultimately, since multi images is part of the Fortran language, it should just
> happen transparently with the gcc regular build process.

We’re all in agreement here so hopefully Jerry’s submission will be
approved.  OpenCoarrays developer Zaak Beekman and I will be glad to
answer any questions about the supporting scripts.  A lot of work went
into them and they have had a lot of user input through the
bash3boilerplate project to which Zaak has contributed.

Damian

  reply	other threads:[~2017-01-28  2:13 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-25 19:37 Jerry DeLisle
2017-01-26 13:25 ` FX
2017-01-26 16:12   ` Jerry DeLisle
2017-01-28  2:13     ` Damian Rouson [this message]
2017-01-28 11:22       ` FX
2017-01-28 17:23         ` Jerry DeLisle
2017-01-28 17:56           ` FX
     [not found]             ` <773757770.55906.1485810049667@mail.yahoo.com>
2017-01-31  8:11               ` FX
     [not found]                 ` <CAE0_W2VWPN6nxO0eHbRibgT7fu9fwnWAVD_2b_5uxFDpzFAzHg@mail.gmail.com>
2017-01-31 16:36                   ` FX
     [not found]         ` <CAAbnBwaL1m+smdtPsNdoY6u2cyYUbm97qYZBjikL=9GqX3hh-Q@mail.gmail.com>
2017-01-28 18:04           ` FX
2019-02-05 22:08       ` Gfortran GSoC (Was: Re: [patch, libgfortran RFC] Installation script for OpenCoarrays to enable multi-image gfortran) Martin Jambor

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='CAE0_W2Xi5G239C3zoWo+TNMiOibJR=dBMLYSj5c+q+u+yVk_pg@mail.gmail.com' \
    --to=damian@rouson.net \
    --cc=damian@sourceryinstitute.org \
    --cc=fortran@gcc.gnu.org \
    --cc=fxcoudert@gmail.com \
    --cc=gcc@gcc.gnu.org \
    --cc=izaak@izaakbeekman.com \
    --cc=jvdelisle@charter.net \
    --cc=vehre@gmx.de \
    /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).