Bardia Mahjour via llvm-dev
2019-Jul-17 17:26 UTC
[llvm-dev] Loop Opt WG Meeting Minutes for July 17, 2019
Hi all, Apparently some people had trouble joining today. I also had trouble using the attendee ID provided by webex. I've canceled the meeting series and will be scheduling a new one with an updated link. Please remember to update your calendars with the new invite. My apologies to those who couldn't join today, and to everyone for the churn. Today's Meeting Minutes: --------------------------- Wed, July 17th, 2019: --------------------------- - Data Dependence Graph Presentation - Minimal vs full graph: Start with the full graph implementation and leave optimizations until later when we have more imperical evidence on where the bottlenecks are in this implementation. - Trade-offs of the current proposal discussed with no objections to the overall design from the audience at this time. More feedback is welcome! - The approximate sequence of patches to be posted for review will be: 1. DDG (basic), 2. DDG (with simplification) 3. DDG (with root node and pi-blocks) 4. Control Dependence Graph (CDG) 5. Program Dependence Graph (PDG) - Status Updates: - Directed Graph (https://reviews.llvm.org/D64088) - Patch is approved and ready to land. - First patch of DDG to be posted soon. - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) - Ready and awaiting approval. - Loop Guard API (https://reviews.llvm.org/D63885) - Need to clarify comments from Philip to agree on the strength of the definition of a loop guard - Impact of Loop Rotation on existing passes - Min unable to join today, will send a follow up email and/or discuss next meeting. - Bugzilla bugs update - Ran out of time. Postponed to next meeting. ------------------------------------------------------------ Tentative Agenda for next meeting (July 31 @ 11:00 am EST): ------------------------------------------------------------ - Status Updates - Impact of Loop Rotation on existing passes (Min-Yih) - Bugzilla bugs update (Vivek) - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) (Ettore) - Loop Guard API (https://reviews.llvm.org/D63885) (Whitney) - Data Dependence Graph (Bardia) - Delinearization (Gary Elsesser) - Loop vs Function pass (Jamie Schmeiser) - Loop Guard API (Whitney) Bardia Mahjour Compiler Optimizations IBM Toronto Software Lab bmahjour at ca.ibm.com (905) 413-2336 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190717/37632ee3/attachment.html>
Amara Emerson via llvm-dev
2019-Jul-19 08:21 UTC
[llvm-dev] Loop Opt WG Meeting Minutes for July 17, 2019
Hi Bardia, Can you add me to the list? Thanks, Amara> On Jul 17, 2019, at 10:26 AM, Bardia Mahjour via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > > Hi all, > > Apparently some people had trouble joining today. I also had trouble using the attendee ID provided by webex. I've canceled the meeting series and will be scheduling a new one with an updated link. Please remember to update your calendars with the new invite. > > My apologies to those who couldn't join today, and to everyone for the churn. > > > Today's Meeting Minutes: > > --------------------------- > Wed, July 17th, 2019: > --------------------------- > - Data Dependence Graph Presentation > - Minimal vs full graph: Start with the full graph implementation and > leave optimizations until later when we have more imperical evidence on > where the bottlenecks are in this implementation. > - Trade-offs of the current proposal discussed with no objections to the > overall design from the audience at this time. More feedback is welcome! > - The approximate sequence of patches to be posted for review will be: > 1. DDG (basic), > 2. DDG (with simplification) > 3. DDG (with root node and pi-blocks) > 4. Control Dependence Graph (CDG) > 5. Program Dependence Graph (PDG) > > - Status Updates: > - Directed Graph (https://reviews.llvm.org/D64088) > - Patch is approved and ready to land. > - First patch of DDG to be posted soon. > - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) > - Ready and awaiting approval. > - Loop Guard API (https://reviews.llvm.org/D63885) > - Need to clarify comments from Philip to agree on the strength of the > definition of a loop guard > - Impact of Loop Rotation on existing passes > - Min unable to join today, will send a follow up email and/or discuss > next meeting. > - Bugzilla bugs update > - Ran out of time. Postponed to next meeting. > > > ------------------------------------------------------------ > Tentative Agenda for next meeting (July 31 @ 11:00 am EST): > ------------------------------------------------------------ > - Status Updates > - Impact of Loop Rotation on existing passes (Min-Yih) > - Bugzilla bugs update (Vivek) > - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) (Ettore) > - Loop Guard API (https://reviews.llvm.org/D63885) (Whitney) > - Data Dependence Graph (Bardia) > > - Delinearization (Gary Elsesser) > - Loop vs Function pass (Jamie Schmeiser) > - Loop Guard API (Whitney) > > > Bardia Mahjour > Compiler Optimizations > IBM Toronto Software Lab > bmahjour at ca.ibm.com (905) 413-2336 > _______________________________________________ > 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/20190719/3ea85594/attachment.html>
Min-Yih Hsu via llvm-dev
2019-Jul-19 17:47 UTC
[llvm-dev] Loop Opt WG Meeting Minutes for July 17, 2019
Hi all, Sorry I can't attend the conference call on Wednesday, so I wrapped up my survey into a blog post that is easier to digest, here is the link: https://medium.com/@mshockwave/llvm-loop-lr-survey-6df55f8dff74 Here is the take away: 1. I'm not sure LoopRotation will cause any problem if the user Passes require the property of exit block predecessors (i.e. predecessors of exit blocks are always in the loop) 2. I do a simple experiment on top of LLVM's existing regression testsuite by running LoopRotation before every Passes that use LoopSimplify loops as inputs. About 10% of the selected test cases are failed. 3. As the follow up of the experiment, I pick part of the failures from LoopFusion and LoopStrengthReduction to find the root cause. All of them are actually producing expecting and correct results. The failures are caused by false negatives coming from the testing infrastructure. As a personal verdicts, I think migrating canonical loops to LoopRotation loops seem to require little of works on existing loop Passes, I’m pretty positive on this migration. But of course, we definitely need feedback from the community and real-field test results. B.R. - Min On Wed, Jul 17, 2019 at 1:28 PM Bardia Mahjour via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi all, > > Apparently some people had trouble joining today. I also had trouble using > the attendee ID provided by webex. I've canceled the meeting series and > will be scheduling a new one with an updated link. Please remember to > update your calendars with the new invite. > > My apologies to those who couldn't join today, and to everyone for the > churn. > > > Today's Meeting Minutes: > > --------------------------- > Wed, July 17th, 2019: > --------------------------- > - Data Dependence Graph Presentation > - Minimal vs full graph: Start with the full graph implementation and > leave optimizations until later when we have more imperical evidence on > where the bottlenecks are in this implementation. > - Trade-offs of the current proposal discussed with no objections to the > overall design from the audience at this time. More feedback is welcome! > - The approximate sequence of patches to be posted for review will be: > 1. DDG (basic), > 2. DDG (with simplification) > 3. DDG (with root node and pi-blocks) > 4. Control Dependence Graph (CDG) > 5. Program Dependence Graph (PDG) > > - Status Updates: > - Directed Graph (https://reviews.llvm.org/D64088) > - Patch is approved and ready to land. > - First patch of DDG to be posted soon. > - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) > - Ready and awaiting approval. > - Loop Guard API (https://reviews.llvm.org/D63885) > - Need to clarify comments from Philip to agree on the strength of the > definition of a loop guard > - Impact of Loop Rotation on existing passes > - Min unable to join today, will send a follow up email and/or discuss > next meeting. > - Bugzilla bugs update > - Ran out of time. Postponed to next meeting. > > > ------------------------------------------------------------ > Tentative Agenda for next meeting (July 31 @ 11:00 am EST): > ------------------------------------------------------------ > - Status Updates > - Impact of Loop Rotation on existing passes (Min-Yih) > - Bugzilla bugs update (Vivek) > - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) (Ettore) > - Loop Guard API (https://reviews.llvm.org/D63885) (Whitney) > - Data Dependence Graph (Bardia) > > - Delinearization (Gary Elsesser) > - Loop vs Function pass (Jamie Schmeiser) > - Loop Guard API (Whitney) > > > Bardia Mahjour > Compiler Optimizations > IBM Toronto Software Lab > bmahjour at ca.ibm.com (905) 413-2336 > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-- Min-Yih Hsu Ph.D Student in ICS Department, University of California, Irvine (UCI). -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190719/91c5bde3/attachment.html>
Bardia Mahjour via llvm-dev
2019-Jul-22 14:57 UTC
[llvm-dev] Loop Opt WG Meeting Minutes for July 17, 2019
Hi Min, Thanks for sharing your findings with us. Regarding loop rotation breaking the "exit block predecessor requirement", do you have specific examples of that? In the tests I've tried, I see a BB with the "crit_edge" suffix that acts as the exit block, while the loop guard branches to the successor of the "crit_edge" block. Bardia Mahjour From: Min-Yih Hsu <minyihh at uci.edu> To: Bardia Mahjour <bmahjour at ca.ibm.com> Cc: llvm-dev <llvm-dev at lists.llvm.org> Date: 2019/07/19 01:47 PM Subject: [EXTERNAL] Re: [llvm-dev] Loop Opt WG Meeting Minutes for July 17, 2019 Hi all, Sorry I can't attend the conference call on Wednesday, so I wrapped up my survey into a blog post that is easier to digest, here is the link: https://medium.com/@mshockwave/llvm-loop-lr-survey-6df55f8dff74 Here is the take away: 1. I'm not sure LoopRotation will cause any problem if the user Passes require the property of exit block predecessors (i.e. predecessors of exit blocks are always in the loop) 2. I do a simple experiment on top of LLVM's existing regression testsuite by running LoopRotation before every Passes that use LoopSimplify loops as inputs. About 10% of the selected test cases are failed. 3. As the follow up of the experiment, I pick part of the failures from LoopFusion and LoopStrengthReduction to find the root cause. All of them are actually producing expecting and correct results. The failures are caused by false negatives coming from the testing infrastructure. As a personal verdicts, I think migrating canonical loops to LoopRotation loops seem to require little of works on existing loop Passes, I’m pretty positive on this migration. But of course, we definitely need feedback from the community and real-field test results. B.R. - Min On Wed, Jul 17, 2019 at 1:28 PM Bardia Mahjour via llvm-dev < llvm-dev at lists.llvm.org> wrote: Hi all, Apparently some people had trouble joining today. I also had trouble using the attendee ID provided by webex. I've canceled the meeting series and will be scheduling a new one with an updated link. Please remember to update your calendars with the new invite. My apologies to those who couldn't join today, and to everyone for the churn. Today's Meeting Minutes: --------------------------- Wed, July 17th, 2019: --------------------------- - Data Dependence Graph Presentation - Minimal vs full graph: Start with the full graph implementation and leave optimizations until later when we have more imperical evidence on where the bottlenecks are in this implementation. - Trade-offs of the current proposal discussed with no objections to the overall design from the audience at this time. More feedback is welcome! - The approximate sequence of patches to be posted for review will be: 1. DDG (basic), 2. DDG (with simplification) 3. DDG (with root node and pi-blocks) 4. Control Dependence Graph (CDG) 5. Program Dependence Graph (PDG) - Status Updates: - Directed Graph (https://reviews.llvm.org/D64088) - Patch is approved and ready to land. - First patch of DDG to be posted soon. - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) - Ready and awaiting approval. - Loop Guard API (https://reviews.llvm.org/D63885) - Need to clarify comments from Philip to agree on the strength of the definition of a loop guard - Impact of Loop Rotation on existing passes - Min unable to join today, will send a follow up email and/or discuss next meeting. - Bugzilla bugs update - Ran out of time. Postponed to next meeting. ------------------------------------------------------------ Tentative Agenda for next meeting (July 31 @ 11:00 am EST): ------------------------------------------------------------ - Status Updates - Impact of Loop Rotation on existing passes (Min-Yih) - Bugzilla bugs update (Vivek) - Loop Cache Cost Analysis (https://reviews.llvm.org/D63459) (Ettore) - Loop Guard API (https://reviews.llvm.org/D63885) (Whitney) - Data Dependence Graph (Bardia) - Delinearization (Gary Elsesser) - Loop vs Function pass (Jamie Schmeiser) - Loop Guard API (Whitney) Bardia Mahjour Compiler Optimizations IBM Toronto Software Lab bmahjour at ca.ibm.com (905) 413-2336 _______________________________________________ LLVM Developers mailing list llvm-dev at lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev -- Min-Yih Hsu Ph.D Student in ICS Department, University of California, Irvine (UCI). -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190722/06107a7b/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: graycol.gif Type: image/gif Size: 105 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190722/06107a7b/attachment.gif>