public inbox for fortran@gcc.gnu.org
 help / color / mirror / Atom feed
From: Thomas Koenig <tkoenig@netcologne.de>
To: Andre Vehreschild <vehre@gmx.de>, Jerry D <jvdelisle2@gmail.com>
Cc: Mikael Morin <morin-mikael@orange.fr>,
	Paul Richard Thomas <paul.richard.thomas@gmail.com>,
	GCC-Fortran-ML <fortran@gcc.gnu.org>,
	Lexi Pimenidis <lexi@badgersystems.de>
Subject: Re: Possible funding of gfortran work
Date: Tue, 30 May 2023 22:08:40 +0200	[thread overview]
Message-ID: <2fa3240f-fbb8-23b6-2a10-24f9a415f729@netcologne.de> (raw)
In-Reply-To: <20230530153242.54728d4d@vepi2>

On 30.05.23 15:32, Andre Vehreschild wrote:
> Hi all,
> 
> thank you for all your input. I have read the funding requirements and checked
> out the application form. We have to agree on a project goal and describe why
> it is critical to fund this project.
> 
> Let me try a first shot on this:
> 
> - Title:
> 
> GFortran-Improvement
> 
> - Abstract:
> 
> Enable the free gfortran compiler to support contemporary language paradigms.
> 
> - Dependencies (on the project as well as projects that depend on the
>    technology)
> 
> Does any one have a convincing project that uses contemporary Fortran?

CP2K is an example, it's open source and written in Fortran.

https://www.cp2k.org/


> Project goal (max 900 words!):
> 
> * Complete language intrinsic parallel programming paradigm coarrays. This
>    includes completing native coarray support (thread based). As well as
>    refactoring of the library based  coarray approach to support coarrays in
>    modules. I.e. research on how to support the use of coarrays in modules that
>    are not aware of coarrays (not compiled with its support enabled).

The current work is process-based, and there is no problem that we see
about library code.

What about this?

* Fortran has a safe and intuitive method for parallel execution,
   coarrays. There is currently no efficient implementation for
   multi-core CPUs on a freely available compiler.  The goal is to bring
   the existing, process-based shared memory implementation on a branch
   into gfortran mainline as an experimental, but useful feature.

I also would not promise complete coarray support by project's end.
This would include teams, which are scary :-)

Having a useful

(There is Intel, which is dog-slow, and there is NAG, which costs
money).

> * Complete standard compliance from Fortran 2003 onwards. Esp. fixing
>    finalization of partially derived types (PDTs) and issues in the associate
>    command.

Again, we should not promise what we cannot deliver.

> * Ensure maintainability of gfortran by cleaning up/refactoring APIs including
>    the scalarizer. Improve the single responsibility pattern's (SRP) use by,
>    e.g., ensuring the parser does no longer parts of the resolve stage. The goal
>    is not only to separate responsibilities but also to get clearer error
>    messages and with that improve user-friendliness.
> 
> Why is it critical to fund this project (300 words max)?

> Improving the freely available gfortran compiler to support state of the art
> parallelism and language paradigms as well as removing bugs and ensuring
> standard compliance will allow existing codes to be compiled more reliably.
> Furthermore is the lack of support for the newer language paradigms preventing
> the use of Fortran in current projects. Developing in contemporary Fortran needs
> commercial compilers (that support these paradigms already), which leads to
> dependencies on those.

Fortran remains one of the premier language for science, especially for
high-performance computing and fields like quantum chemistry or
computational fluid dynamics.

gfortran is the default Fortran compiler on Linux systems, and lack of
features and bugs in in gfortran hinder adoption of more modern, safer
and more efficient language features. The project has been almost
entirely volunteer-driven so far, but is currently suffering from
a lack of active developers.  Funding will motivate experienced
gfortran developers who have reduced their contributions to return
to the project and advance it substantially.


> This is what I propose for a start. I welcome everyone to participate and make
> the goal or the reasoning more elaborate. We may propose the funding request in
> English or in German. When no one participates, I am tempted to propose it in
> German, as that being my first language, I feel more confident in it.

Make it English, all people here on the list should be able to follow.

> The company Badger Systems GmbH, Cologne, DE, I am working for will support in
> project and bureaucratic management and is willing to act as the proposer of
> this funding request. We of course will be profiting from this.
> 
> Any input is welcome. Feel free to ask, comment, agree, disagree (only when you
> propose something better) or just acknowledge.

One thing I did not find at a cursory glance is how the project funding
would be distributed, and under which conditions.

Did you find anything on the website?

Best regards

	Thomas


  reply	other threads:[~2023-05-30 20:08 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-26  4:34 Jerry DeLisle
2023-05-26 17:09 ` Bernhard Reutner-Fischer
2023-05-26 21:22 ` Jerry D
2023-05-27  8:08   ` Thomas Koenig
2023-05-27 11:24     ` Andre Vehreschild
2023-05-27 16:19       ` Paul Richard Thomas
2023-05-28 14:26         ` Nicolas König
2023-05-28 15:07         ` Thomas Koenig
2023-05-28 19:25         ` Mikael Morin
2023-05-28 20:53           ` Jerry D
2023-05-30 13:32             ` Andre Vehreschild
2023-05-30 20:08               ` Thomas Koenig [this message]
2023-05-31  3:46                 ` Benson Muite
2023-05-31  6:08                   ` Thomas Koenig
2023-05-31  8:42                     ` Benson Muite
2023-05-31 12:23                     ` Andre Vehreschild
2023-05-31 14:08                       ` Damian Rouson
2023-06-01  9:18                         ` Andre Vehreschild
2023-06-01 10:56                           ` Bernhard Reutner-Fischer
2023-06-01 10:59                           ` Mikael Morin
2023-06-04  8:23                             ` Thomas Koenig
2023-06-05  8:08                             ` Andre Vehreschild
2023-06-05 11:44                               ` Mikael Morin
2023-06-06 13:06                                 ` Andre Vehreschild
2023-06-08 12:38                                   ` Mikael Morin
2023-06-14  8:28                                     ` Andre Vehreschild
2023-06-14  9:40                                       ` Mikael Morin
2023-06-14 18:48                                         ` Bernhard Reutner-Fischer
2023-06-01 11:12                           ` Benson Muite
2023-06-04  7:49                             ` Thomas Koenig
2023-06-05 10:12                               ` Andre Vehreschild
2023-06-05 10:07                             ` Andre Vehreschild
2023-06-05 12:16                               ` Thomas Koenig
2023-06-05 12:21                                 ` Andre Vehreschild
2023-06-08  5:34                               ` Benson Muite
2023-06-14  8:00                                 ` Andre Vehreschild
2023-06-02  0:53                           ` Jerry D
2023-06-05 10:09                             ` Andre Vehreschild

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=2fa3240f-fbb8-23b6-2a10-24f9a415f729@netcologne.de \
    --to=tkoenig@netcologne.de \
    --cc=fortran@gcc.gnu.org \
    --cc=jvdelisle2@gmail.com \
    --cc=lexi@badgersystems.de \
    --cc=morin-mikael@orange.fr \
    --cc=paul.richard.thomas@gmail.com \
    --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).