From: Benson Muite <benson_muite@emailplus.org>
To: Thomas Koenig <tkoenig@netcologne.de>,
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: Wed, 31 May 2023 06:46:41 +0300 [thread overview]
Message-ID: <5bde7c1f-3524-7f2e-fd48-a4b97734e2b9@emailplus.org> (raw)
In-Reply-To: <2fa3240f-fbb8-23b6-2a10-24f9a415f729@netcologne.de>
On 5/30/23 23:08, Thomas Koenig via Fortran wrote:
> 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).
>
Is distributed memory support for co-arrays of interest as well? There
is a lot of code that uses MPI (for which there is some push for using
more modern Fortran features), and there are also other libraries such
as GASPI.
> 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).
Is this also expected in Flang? See:
https://crd.lbl.gov/divisions/amcr/computer-science-amcr/class/research/caffeine/
https://crd.lbl.gov/divisions/amcr/computer-science-amcr/class/research/caffeine/
Probably good to make a case for two open source compilers.
>
>> * 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.
>
>
Any possibilities for new contributors to participate?
>> 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
>
next prev parent reply other threads:[~2023-05-31 3:46 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
2023-05-31 3:46 ` Benson Muite [this message]
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=5bde7c1f-3524-7f2e-fd48-a4b97734e2b9@emailplus.org \
--to=benson_muite@emailplus.org \
--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=tkoenig@netcologne.de \
--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).