Vishal Chebrolu via llvm-dev
2020-May-22 17:47 UTC
[llvm-dev] Improve MergeFunctions to incorporate MergeSimilarFunction patches and ThinLTO Support
Hello, I am Vishal Chebrolu, a student from India working on "Improve MergeFunctions to incorporate MergeSimilarFunction patches and ThinLTO Support" as a Google Summer of Code project. Thanks to the community for providing feedback to my GSoC proposal. I discussed with my mentors Aditya, JF and improved my previous proposal. We made a few changes and brought up a new plan. This plan addresses the various activities required to achieve the project outcomes. The major outcome is to provide MergeFunctions with the capability to merge not just identical but similar functions too. This can help in the code-size reduction and gain in compile times if the amount of optimization work to do is reduced. We also consider the issue of maintaining sync of the IR with MergeFunction comparators and prevent mis-compiles. Here's the proposal. https://docs.google.com/document/d/1vGFNoyXugeCWvkm7n66uWnG3eniUAChezVTU4XuVjnM/edit?usp=sharing Any feedback is highly appreciated! Thanks :) Regards, Vishal -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200522/ccf6e9f5/attachment.html>
Vishal Chebrolu via llvm-dev
2020-Jun-06 08:50 UTC
[llvm-dev] Improve MergeFunctions to incorporate MergeSimilarFunction patches and ThinLTO Support
Hi, As a part of benchmarking in my project, I measured the build times and build sizes of MySQL-Server, LLVM, and Qemu using my system compiler(Apple Clang) and LLVM compiler. The results and the details of the checkout hashes and my machine specs are given below. We are thinking of using these projects as benchmarks for measuring build time and size. System Compiler (Apple Clang) LLVM Compiler Build Time Build Size (on disk) Build Time Build Size (on disk) MySQL-Server real 83m53.688s user 75m29.850s sys 5m41.172s 941.04MB real 109m39.282s user 99m43.071s sys 6m13.283s 951.2MB LLVM real 72m0.505s user 260m44.044s sys 11m3.760s 1.59GB real 97m59.186s user 356m12.425s sys 12m28.626s 1.57GB Qemu real 6m48.850s user 5m33.292s sys 1m2.211s 355.6MB real 8m34.970s user 7m10.967s sys 1m1.773s 361.7MB Apple Clang Version - Apple LLVM version 10.0.1 (clang-1001.0.46.4) LLVM Compiler Version - clang version 11.0.0 LLVM Compiler Checkout hash - e5bb542362dfbb6c57a597810d740987afbc4202 (Wed May 27 21:13:08 2020) *Project Checkout hashes* : MySQL-Server : 7d10c82196c8e45554f27c00681474a9fb86d137 LLVM : e5bb542362dfbb6c57a597810d740987afbc4202 Qemu : c86274bc2e34295764fb44c2aef3cf29623f9b4b *Machine Specs* : MacBook Air (Early 2015) OS - macOS Mojave 10.14.6 Processor - 1.6 GHz Intel Core i5 Memory - 8 GB 1600 MHz DDR3 Graphics - Intel HD Graphics 6000 1536 MB Regards, Vishal On Fri, May 22, 2020 at 11:17 PM Vishal Chebrolu <chebroluvishal at gmail.com> wrote:> Hello, > > I am Vishal Chebrolu, a student from India working on "Improve > MergeFunctions to incorporate MergeSimilarFunction patches and ThinLTO > Support" as a Google Summer of Code project. Thanks to the community for > providing feedback to my GSoC proposal. I discussed with my mentors Aditya, > JF and improved my previous proposal. We made a few changes and brought up > a new plan. > > This plan addresses the various activities required to achieve the project > outcomes. The major outcome is to provide MergeFunctions with the > capability to merge not just identical but similar functions too. This can > help in the code-size reduction and gain in compile times if the amount of > optimization work to do is reduced. We also consider the issue of > maintaining sync of the IR with MergeFunction comparators and prevent > mis-compiles. > > Here's the proposal. > > > https://docs.google.com/document/d/1vGFNoyXugeCWvkm7n66uWnG3eniUAChezVTU4XuVjnM/edit?usp=sharing > > Any feedback is highly appreciated! > Thanks :) > > Regards, > Vishal >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200606/b8527e62/attachment.html>