Hello Open Source Enthusiasts, 👩💻 👨💻
In this week’s blog post, I’ll talk about project expectations and planning. Let’s start by talking about what I’ve done on the project so far.
“The purpose of my project is to find the slow parts of the revision processing in Guix Data Service and make them faster.”⚡️
The first step in the planned timeline is the instrumentation. The purpose of this instrumentation is to visualize parts with low performance in Guix Data Service.
I was going to visualize the slowing parts with a flame graph that I would have made available to users on the Guix Data Service website. The slow parts of the processing job had to be identified easily with the newly generated graph. In the second stage, these slow parts would be accelerated.
At first, my mentor told me about some part which was already very slow, and we talked about how we could speed it up and made the necessary changes. But I have many slow parts like this and have to find these with the help of the graph.
At the planning stage, I thought that the instrumentation part would be finished in 1 month, but that was not the case. It turns out that the part that will take longer is the instrumentation part. After finding these slow parts, the acceleration part should take a shorter time.
I also mentioned in my previous posts that I needed to learn Guile for this project. Learning about Guile has been perhaps the most time-taken part of the job. I needed to spend more time on this in the timeline.
So far, I have made my first contribution to the acceleration of the slow part using the SQL Index. In addition, I can successfully keep information such as job information, start time, and how long it takes in a table in the database. My next step is to visualize this information on the flame graph on the website. In this process, I’ve been using SQL and Guile. In my next assignment, I will need to program with HTML and Guile. Luckily I know HTML but as I said, I’m just learning Guile and it can be challenging sometimes.
I’m going to reschedule my time planning like that the instrumentation part should take 2 months and the acceleration part may take 1 month. I don’t know if all the speedups will be done with SQL though.
I was aware that I did not choose an easy project and I’m the only trainee in the project. Sometimes I get tired and upset when I can’t do it, but I want to enjoy this 3-month internship anyway. 🤙🏻🤘🏼💪🏽💪🏾
I am living the firsts of my life in many subjects and I am in a unique experience. No matter how much I learn it will be so valuable for me.
Thanks for reading. 💫✨