<div dir="ltr">Dear all,<br><br>My name is Konstantin Sidorov, and I am a graduate student in Mathematics at Moscow Institute of Physics and Technology.<br><br>I would like to work on a project "Machine learning and compiler optimizations: using inter-procedural analysis to select optimizations" during the Google Summer of Code 2021.<br><br>I have an extensive background relevant to this project - in particular:<br><br>* I have already participated in GSoC before in 2017 with mlpack organization on the project "Augmented RNNs": <a href="https://summerofcode.withgoogle.com/archive/2017/projects/4583913502539776/">https://summerofcode.withgoogle.com/archive/2017/projects/4583913502539776/</a><br>* In 2019 I have graduated from the Yandex School of Data Analysis — a two-year program in Data Analysis by Yandex (the leading Russian search engine); more info on the curriculum could be also found at <a href="https://yandexdataschool.com/">https://yandexdataschool.com/</a>.<br>* I have also been working as a software engineer at Adeptik from July 2018 to date, where I have predominantly worked on projects on applied combinatorial optimization problems, such as vehicle-routing problems or supply chain modeling. In particular, I have had experience with both metaheuristic algorithms (e.g., local search or genetic algorithms) and more "traditional" mathematical modeling (e.g., linear programming or constraint programming).<br><br>I would like to discuss this project in more detail. While it is hard to discuss any kind of exact plan at this stage, I already have two questions concerning this project: <br><br>(1) I have set up an LLVM dev environment, but I am unsure what to do next. Could you advise me on any simple (and, preferably, relevant) tasks to work on?<br>(2) Could you suggest any learning materials to improve the understanding of "low-level" concepts? (E.g., CPU concepts such as caching and SIMD)<br><br>Best regards,<br>Konstantin Sidorov<br></div>