Chris Lattner via llvm-dev
2020-Jan-13 05:47 UTC
[llvm-dev] FC : A MLIR+LLVM based Fortran front end
Agreed! Is the code already available? What are your plans for it, and are you interested in collaboration with the rest of the LLVM community? -Chris> On Jan 11, 2020, at 11:58 AM, Finkel, Hal J. via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > Hi, Prashanth, > > That's great news! It sounds like you've made a lot of progress, and I certainly hope that you can make your source available under the LLVM license and that we can all work together going forward. > > -Hal > > On 1/11/20 12:52 PM, Prashanth N R via llvm-dev wrote: >> Hi- >> >> In August we made an announcement of "FC: A new fortran front end" [1]. At that time to get an end-to-end solution, we made FC to emit LLVM IR directly. At present, we have upgraded FC to emit MLIR. Currently the language supported is close to Fortran-95. Apart from 400+ unit test cases, out framework passes two SPEC-2017 benchmarks successfully. Currently we are cleaning up the code and plan to open source the same in a week or so. >> >> Apart from the front end changes, we have defined a new high level dialect in MLIR for representing Fortran. We have defined a new Loop Nest Optimization framework along with one Loop Nest Optimization in it for the time being. Also we have supported 4 OpenMP constructs and way to express the same in MLIR framework. >> >> Entire code is in the spirit of LLVM. If the community is interested, we would like to work with the community and move forward. >> >> thanks, >> -Prashanth >> >> PS: We did try to use F18 for a while and hit the issues raised in [2], [3]. >> >> 1. http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html <http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html> >> 2. http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html <http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html> >> 3. http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf <http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf> >> OR http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html <http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html> >> >> >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org> >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev <https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev> > -- > Hal Finkel > Lead, Compiler Technology and Programming Languages > Leadership Computing Facility > Argonne National Laboratory > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200112/06b28749/attachment.html>
Prashanth N R via llvm-dev
2020-Jan-13 07:45 UTC
[llvm-dev] FC : A MLIR+LLVM based Fortran front end
Hi Chris- We are mostly cleaning up the code for open sourcing. Early code drop will happen in a day or two and will continue through this week. We would love to work with the rest of the community on this. thanks, -Prashanth On Mon, Jan 13, 2020 at 11:17 AM Chris Lattner <clattner at nondot.org> wrote:> Agreed! Is the code already available? What are your plans for it, and > are you interested in collaboration with the rest of the LLVM community? > > -Chris > > On Jan 11, 2020, at 11:58 AM, Finkel, Hal J. via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > Hi, Prashanth, > > That's great news! It sounds like you've made a lot of progress, and I > certainly hope that you can make your source available under the LLVM > license and that we can all work together going forward. > > -Hal > On 1/11/20 12:52 PM, Prashanth N R via llvm-dev wrote: > > Hi- > > In August we made an announcement of "FC: A new fortran front end" [1]. > At that time to get an end-to-end solution, we made FC to emit LLVM IR > directly. At present, we have upgraded FC to emit MLIR. Currently the > language supported is close to Fortran-95. Apart from 400+ unit test cases, > out framework passes two SPEC-2017 benchmarks successfully. Currently we > are cleaning up the code and plan to open source the same in a week or so. > > Apart from the front end changes, we have defined a new high level dialect > in MLIR for representing Fortran. We have defined a new Loop Nest > Optimization framework along with one Loop Nest Optimization in it for the > time being. Also we have supported 4 OpenMP constructs and way to express > the same in MLIR framework. > > Entire code is in the spirit of LLVM. If the community is interested, we > would like to work with the community and move forward. > > thanks, > -Prashanth > > PS: We did try to use F18 for a while and hit the issues raised in [2], > [3]. > > 1. http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html > 2. http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html > 3. > http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf > OR http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html > > > _______________________________________________ > LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > -- > Hal Finkel > Lead, Compiler Technology and Programming Languages > Leadership Computing Facility > Argonne National Laboratory > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200113/5e5d8e14/attachment.html>
James Y Knight via llvm-dev
2020-Jan-13 17:02 UTC
[llvm-dev] FC : A MLIR+LLVM based Fortran front end
Neat, another fortran compiler option. Does anyone have a list/comparison of all the LLVM fortran compilers? I'm not really tracking this, since Fortran isn't really my area of expertise, but I've seen the following. Perhaps there are even more? "Flang". The original of the name, I think? Abandoned. https://github.com/llvm-flang/flang "Fort" -- fork of the above flang, renamed. Seems active. https://github.com/llvm-fortran/fort/ "Flag". Different from the other "flang". Active, but deprecated in favor of f18. https://github.com/flang-compiler/flang "f18". Rewrite-from-scratch (?) of adjacent "flang". Active, but not fully-functional yet (I think?). https://github.com/flang-compiler/f18 "FC". Newly-developed, independent of the other compilers. Active. (But this source-code dates from the previous announcement, not yet updated with latest developments): https://github.com/compiler-tree-technologies/fc I don't know how any of these compare with each other, nor why we have so many. I have no opinion on which or whether any of these should be "blessed", nor do I really want to become educated enough on this topic to gain such an opinion personally. But, given that there appear to be at least 3 fortran compilers under active development by different people, I would love to be reassured that such a comparison has been done, and that we are selecting one of them for good reasons. It'd be great if someone (or multiple someones) could post a summary/comparison of what these things all are, and why one is the right path forward vs another. On Mon, Jan 13, 2020 at 2:46 AM Prashanth N R via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi Chris- > We are mostly cleaning up the code for open sourcing. Early code drop will > happen in a day or two and will continue through this week. We would love > to work with the rest of the community on this. > > thanks, > -Prashanth > > On Mon, Jan 13, 2020 at 11:17 AM Chris Lattner <clattner at nondot.org> > wrote: > >> Agreed! Is the code already available? What are your plans for it, and >> are you interested in collaboration with the rest of the LLVM community? >> >> -Chris >> >> On Jan 11, 2020, at 11:58 AM, Finkel, Hal J. via llvm-dev < >> llvm-dev at lists.llvm.org> wrote: >> >> Hi, Prashanth, >> >> That's great news! It sounds like you've made a lot of progress, and I >> certainly hope that you can make your source available under the LLVM >> license and that we can all work together going forward. >> >> -Hal >> On 1/11/20 12:52 PM, Prashanth N R via llvm-dev wrote: >> >> Hi- >> >> In August we made an announcement of "FC: A new fortran front end" [1]. >> At that time to get an end-to-end solution, we made FC to emit LLVM IR >> directly. At present, we have upgraded FC to emit MLIR. Currently the >> language supported is close to Fortran-95. Apart from 400+ unit test cases, >> out framework passes two SPEC-2017 benchmarks successfully. Currently we >> are cleaning up the code and plan to open source the same in a week or so. >> >> Apart from the front end changes, we have defined a new high level >> dialect in MLIR for representing Fortran. We have defined a new Loop Nest >> Optimization framework along with one Loop Nest Optimization in it for the >> time being. Also we have supported 4 OpenMP constructs and way to express >> the same in MLIR framework. >> >> Entire code is in the spirit of LLVM. If the community is interested, we >> would like to work with the community and move forward. >> >> thanks, >> -Prashanth >> >> PS: We did try to use F18 for a while and hit the issues raised in [2], >> [3]. >> >> 1. http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html >> 2. http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html >> 3. >> http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf >> OR http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html >> >> >> _______________________________________________ >> LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >> -- >> Hal Finkel >> Lead, Compiler Technology and Programming Languages >> Leadership Computing Facility >> Argonne National Laboratory >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >> >> _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200113/9e64ed33/attachment.html>
Prashanth N R via llvm-dev
2020-Jan-13 21:12 UTC
[llvm-dev] FC : A MLIR+LLVM based Fortran front end
Hi- The code has been open sourced at https://github.com/compiler-tree-technologies. There are two repositories. 1. The Fortran front end, aka FC, at https://github.com/compiler-tree-technologies/fc. 2. Associated LLVM changes including MLIR at https://github.com/compiler-tree-technologies/llvm-project. Build instructions are given at the website. There is a document at https://github.com/compiler-tree-technologies/fc/blob/master/docs/FC_MLIR.pdf which gives low level implementation details. As the week progresses, we might clean up the code and upstream. In the meantime, if there are any questions, please do let me know. thanks, -Prashanth On Mon, Jan 13, 2020 at 11:17 AM Chris Lattner <clattner at nondot.org> wrote:> Agreed! Is the code already available? What are your plans for it, and > are you interested in collaboration with the rest of the LLVM community? > > -Chris > > On Jan 11, 2020, at 11:58 AM, Finkel, Hal J. via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > Hi, Prashanth, > > That's great news! It sounds like you've made a lot of progress, and I > certainly hope that you can make your source available under the LLVM > license and that we can all work together going forward. > > -Hal > On 1/11/20 12:52 PM, Prashanth N R via llvm-dev wrote: > > Hi- > > In August we made an announcement of "FC: A new fortran front end" [1]. > At that time to get an end-to-end solution, we made FC to emit LLVM IR > directly. At present, we have upgraded FC to emit MLIR. Currently the > language supported is close to Fortran-95. Apart from 400+ unit test cases, > out framework passes two SPEC-2017 benchmarks successfully. Currently we > are cleaning up the code and plan to open source the same in a week or so. > > Apart from the front end changes, we have defined a new high level dialect > in MLIR for representing Fortran. We have defined a new Loop Nest > Optimization framework along with one Loop Nest Optimization in it for the > time being. Also we have supported 4 OpenMP constructs and way to express > the same in MLIR framework. > > Entire code is in the spirit of LLVM. If the community is interested, we > would like to work with the community and move forward. > > thanks, > -Prashanth > > PS: We did try to use F18 for a while and hit the issues raised in [2], > [3]. > > 1. http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html > 2. http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html > 3. > http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf > OR http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html > > > _______________________________________________ > LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > -- > Hal Finkel > Lead, Compiler Technology and Programming Languages > Leadership Computing Facility > Argonne National Laboratory > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200114/970c89e9/attachment.html>
River Riddle via llvm-dev
2020-Jan-13 22:42 UTC
[llvm-dev] FC : A MLIR+LLVM based Fortran front end
On Mon, Jan 13, 2020 at 1:13 PM Prashanth N R via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi- > > The code has been open sourced at > https://github.com/compiler-tree-technologies. There are two repositories. > 1. The Fortran front end, aka FC, at > https://github.com/compiler-tree-technologies/fc. > 2. Associated LLVM changes including MLIR at > https://github.com/compiler-tree-technologies/llvm-project. >Hi, (disclaimer: I can’t say much about the Fortran side, but I did look at some of the MLIR bits) I took a look at the repos, and would love for you(+your team) to upstream any of the general MLIR bits you can. Feel free to add me as a reviewer. (I also went ahead and fixed one of your issues). I look forward to collaborating with you more! — River> Build instructions are given at the website. There is a document at > https://github.com/compiler-tree-technologies/fc/blob/master/docs/FC_MLIR.pdf which > gives low level implementation details. As the week progresses, we might > clean up the code and upstream. In the meantime, if there are any > questions, please do let me know. > > thanks, > -Prashanth > > > On Mon, Jan 13, 2020 at 11:17 AM Chris Lattner <clattner at nondot.org> > wrote: > >> Agreed! Is the code already available? What are your plans for it, and >> are you interested in collaboration with the rest of the LLVM community? >> >> -Chris >> >> On Jan 11, 2020, at 11:58 AM, Finkel, Hal J. via llvm-dev < >> llvm-dev at lists.llvm.org> wrote: >> >> Hi, Prashanth, >> >> That's great news! It sounds like you've made a lot of progress, and I >> certainly hope that you can make your source available under the LLVM >> license and that we can all work together going forward. >> >> -Hal >> On 1/11/20 12:52 PM, Prashanth N R via llvm-dev wrote: >> >> Hi- >> >> In August we made an announcement of "FC: A new fortran front end" [1]. >> At that time to get an end-to-end solution, we made FC to emit LLVM IR >> directly. At present, we have upgraded FC to emit MLIR. Currently the >> language supported is close to Fortran-95. Apart from 400+ unit test cases, >> out framework passes two SPEC-2017 benchmarks successfully. Currently we >> are cleaning up the code and plan to open source the same in a week or so. >> >> Apart from the front end changes, we have defined a new high level >> dialect in MLIR for representing Fortran. We have defined a new Loop Nest >> Optimization framework along with one Loop Nest Optimization in it for the >> time being. Also we have supported 4 OpenMP constructs and way to express >> the same in MLIR framework. >> >> Entire code is in the spirit of LLVM. If the community is interested, we >> would like to work with the community and move forward. >> >> thanks, >> -Prashanth >> >> PS: We did try to use F18 for a while and hit the issues raised in [2], >> [3]. >> >> 1. http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html >> 2. http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html >> 3. >> http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf >> OR http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html >> >> >> _______________________________________________ >> LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >> -- >> Hal Finkel >> Lead, Compiler Technology and Programming Languages >> Leadership Computing Facility >> Argonne National Laboratory >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >> >> _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-- Thank you, River Riddle -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200113/e791ebec/attachment.html>
Prashanth N R via llvm-dev
2020-Jan-23 16:12 UTC
[llvm-dev] FC : A MLIR+LLVM based Fortran front end
Hi Chris/Hal- [2/3] As agreed we are open sourcing implementation of 5 Openmp constructs i.e. omp.parallel, omp.single, omp.do, omp.master and omp.parallel_do. The latest code can be accessed at https://github.com/compiler-tree-technologies/fc . Along with LLVM fork the repository can be accessed at https://github.com/compiler-tree-technologies/ . Testing infrastructure has been upgraded to Lit framework. Openmp test cases can be accessed at https://github.com/compiler-tree-technologies/fc/tree/master/test/openmp . Implementation of rest of the constructs will be open sourced in a later release. Please give feedback on the implementation and report any issues you encounter. A detailed design note along with the issues considered will be sent shortly to the group for discussion. Thanks, -Prashanth PS: In the next release we will opensource implementation of some loop transforms like Loop Blocking, Loop Permute(generalized interchange) etc. On Mon, Jan 13, 2020 at 11:17 AM Chris Lattner <clattner at nondot.org> wrote:> Agreed! Is the code already available? What are your plans for it, and > are you interested in collaboration with the rest of the LLVM community? > > -Chris > > On Jan 11, 2020, at 11:58 AM, Finkel, Hal J. via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > Hi, Prashanth, > > That's great news! It sounds like you've made a lot of progress, and I > certainly hope that you can make your source available under the LLVM > license and that we can all work together going forward. > > -Hal > On 1/11/20 12:52 PM, Prashanth N R via llvm-dev wrote: > > Hi- > > In August we made an announcement of "FC: A new fortran front end" [1]. > At that time to get an end-to-end solution, we made FC to emit LLVM IR > directly. At present, we have upgraded FC to emit MLIR. Currently the > language supported is close to Fortran-95. Apart from 400+ unit test cases, > out framework passes two SPEC-2017 benchmarks successfully. Currently we > are cleaning up the code and plan to open source the same in a week or so. > > Apart from the front end changes, we have defined a new high level dialect > in MLIR for representing Fortran. We have defined a new Loop Nest > Optimization framework along with one Loop Nest Optimization in it for the > time being. Also we have supported 4 OpenMP constructs and way to express > the same in MLIR framework. > > Entire code is in the spirit of LLVM. If the community is interested, we > would like to work with the community and move forward. > > thanks, > -Prashanth > > PS: We did try to use F18 for a while and hit the issues raised in [2], > [3]. > > 1. http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html > 2. http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html > 3. > http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf > OR http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html > > > _______________________________________________ > LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > -- > Hal Finkel > Lead, Compiler Technology and Programming Languages > Leadership Computing Facility > Argonne National Laboratory > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200123/83af7795/attachment.html>