[llvm-dev] Improve MergeFunctions to incorporate MergeSimilarFunction patches and ThinLTO Support

Vishal Chebrolu via llvm-dev llvm-dev at lists.llvm.org
Sat Jun 6 01:50:06 PDT 2020


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>


More information about the llvm-dev mailing list