Matthias Reisinger via llvm-dev
2016-May-10 12:59 UTC
[llvm-dev] [GSoC 2016] Introduction - "Enabling Polyhedral Optimizations in Julia"
Dear LLVM contributors, my name is Matthias, I am a graduate student majoring in computer science at the Vienna University of Technology, and I am glad to be one of this year's GSoC students who work for the Julia foundation. Julia is a relatively young programming language that uses LLVM for just-in-time compilation and the goal of my project is to integrate Polly in this environment to enable polyhedral optimizations for Julia programs. On the one side this will require changing Julia's LLVM IR generator to make the code more amenable for Polly, but on the other side it will also require adaptions to Polly's analyses and transformations. If you are interested you may have a look at my proposal [1], besides, I also plan to post interesting findings and results at my blog [2]. During the next four to five weeks, I plan to do the following: 1. For my proposal, I've already built a very simplistic patch that experimentally integrated Polly into Julia's execution environment [4], but that was really only a proof-of-concept. Currently I am working on improving this patch. Based on this, one of the first milestones will be to introduce an annotation (namely @polly), which enables to selectively run Polly for annotated parts of Julia programs. 2. Identify and analyze first Julia programs (or their corresponding LLVM IR respectively) which currently cannot be optimized via Polly. 3. Begin to correct Julia/Polly such that polyhedral optimizations can be applied to these programs Essentially, points 2 and 3 will be a gradual process which will also build the working process for the subsequent weeks then. I'll gladly accept any kind of input so feel free to comment on this, post suggestions and give advice. [1] https://docs.google.com/document/d/1s5mmSW965qmOEbHiM3O4XFz-Vd7cy9TxX9RQaTK_SQo/edit?usp=sharing <https://docs.google.com/document/d/1s5mmSW965qmOEbHiM3O4XFz-Vd7cy9TxX9RQaTK_SQo/edit?usp=sharing> [2] http://www.mreisinger.com <http://www.mreisinger.com/> [3] https://groups.google.com/group/julia-dev <https://groups.google.com/group/julia-dev> [4] https://gist.github.com/MatthiasJReisinger/18c08b18903d7729b5b3 <https://gist.github.com/MatthiasJReisinger/18c08b18903d7729b5b3> [5] https://github.com/JuliaLang/julia/issues <https://github.com/JuliaLang/julia/issues> [6] https://github.com/JuliaLang/julia/pulls <https://github.com/JuliaLang/julia/pulls> Best regards, Matthias -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160510/40759285/attachment.html>
Tobias Grosser via llvm-dev
2016-May-10 13:17 UTC
[llvm-dev] [GSoC 2016] Introduction - "Enabling Polyhedral Optimizations in Julia"
On 05/10/2016 02:59 PM, Matthias Reisinger wrote:> Dear LLVM contributors, > > my name is Matthias, I am a graduate student majoring in computer > science at the Vienna University of Technology, and I am glad to be one > of this year's GSoC students who work for the Julia foundation. Julia is > a relatively young programming language that uses LLVM for just-in-time > compilation and the goal of my project is to integrate Polly in this > environment to enable polyhedral optimizations for Julia programs. On > the one side this will require changing Julia's LLVM IR generator to > make the code more amenable for Polly, but on the other side it will > also require adaptions to Polly's analyses and transformations. > > If you are interested you may have a look at my proposal [1], besides, I > also plan to post interesting findings and results at my blog [2]. > > During the next four to five weeks, I plan to do the following: > 1. For my proposal, I've already built a very simplistic patch that > experimentally integrated Polly into Julia's execution environment [4], > but that was really only a proof-of-concept. Currently I am working on > improving this patch. Based on this, one of the first milestones will be > to introduce an annotation (namely @polly), which enables to selectively > run Polly for annotated parts of Julia programs. > 2. Identify and analyze first Julia programs (or their corresponding > LLVM IR respectively) which currently cannot be optimized via Polly. > 3. Begin to correct Julia/Polly such that polyhedral optimizations can > be applied to these programs > > Essentially, points 2 and 3 will be a gradual process which will also > build the working process for the subsequent weeks then. > > I'll gladly accept any kind of input so feel free to comment on this, > post suggestions and give advice.Perfect, thanks for posting this intro. Do you happen to have any plans on reporting your progress publicly?> [1] > https://docs.google.com/document/d/1s5mmSW965qmOEbHiM3O4XFz-Vd7cy9TxX9RQaTK_SQo/edit?usp=sharing > [2] http://www.mreisinger.comCool.> [3] https://groups.google.com/group/julia-dev > [4] https://gist.github.com/MatthiasJReisinger/18c08b18903d7729b5b3Eagerly waiting for news here! Also, please submit a patch to llvm.org/SummerOfCode/2016.html to add some information about your project. (Also feel free to suggest improvements to the design if needed. This is the student's page) Best, Tobias
Matthias Reisinger via llvm-dev
2016-May-10 14:25 UTC
[llvm-dev] [GSoC 2016] Introduction - "Enabling Polyhedral Optimizations in Julia"
> Do you happen to have any plans on reporting your progress publicly? >I will try to make my progress transparent by writing about it on my blog as often as possible and definitely give updates at the mailing lists ( julia-dev <https://groups.google.com/group/julia-dev>, polly-dev and llvm-dev). Also, please submit a patch to llvm.org/SummerOfCode/2016.html to add> some information about your project. (Also feel free to suggest > improvements to the design if needed. This is the student's page) >Cool. I'll prepare a patch with my project details. Best, Matthias -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160510/3ea492a1/attachment.html>
Reasonably Related Threads
- [GSoC 2016] Enabling Polyhedral Optimizations in Julia - Midterm Report
- [GSoC 2016] Introduction - "Enabling Polyhedral Optimizations in Julia"
- [GSoC 2016] Introduction - "Enabling Polyhedral Optimizations in Julia"
- [GSoC 2016] Introduction - "Enabling Polyhedral Optimizations in Julia"
- [LLVMdev] Introducing julia, and gauging interest in a julia BOF session at the upcoming LLVM conference in London