SoK/2022/StatusReport/Karanjot Singh
Preparing Standard Usage Scenarios for Energy Consumption Measurements
Project Type: Planning and scripting
Introduction and Abstract: As part of a pioneering sustainability project, KDE Eco has the aim of measuring and driving down the energy consumption of KDE/Free Software. This requires emulating user behavior, which can be achieved by planning and scripting Standard Usage Scenarios. For this , I will be writing Standard Usage Scenarios for various FOSS/KDE software like Kate, Kwrite, LibreOffice and implementing it using scripts.
Mentor: Joseph P. De Veaugh-Geiss
Blog Posts:
SEASON OF KDE 2022 WITH KDE ECO
SOK'22 EXPERIENCE WITH KDE ECO ( IN PROGRESS )
Merge Requests and Discussion:
Discussion on Pros and cons of different automation tools
Standard usage scenarios and script for Kate
Weekly Progress
WEEK 1 - 3 : For the first three weeks , I have tested various automation tools, in particular Actiona, xdotool, and GNU Xnee, to decide which of these tools would be best for implementing Standard Usage Scenarios. I also wrote some documentation for using various tools which may be helpful for the anyone wanting to contribute to KDE ECO . In the 3rd Week , I attended the community meetup of KDE ECO where we discussed about various problems relating to automation on mobile devices as well as client server testing . Overall , I came to know about a lot of new things and able to meet various past KDE contributors in the meetup. I wrote about my experience and findings in the first three weeks on the blog post [1]
WEEK 4 - 5 : In these two weeks , I worked over the Gcompris screen problem issue . I was trying to find a solution through which we can automate the standard usage scenarios in Gcompris easily . I also had a talk with Emmanuel over the use of xdotool for writing the gcompris script which is still in progress . I also had a very informative talk with nicolas fella who worked with xdotool for his master thesis. This helped me fix some problems i faced while working with xdotool. I worked with Kate to better understand the standard/Daily usage for developing standard usage scenarios .
WEEK 6 - 8 : In Week 6th , I wrote the Standard Usage Scenarios for Kate and joseph helped me review that and suggested some improvements . I started writing script for implementation of these scenarios on xdotool , I faced some problems with the xdotool , There was an issue that xdotool was not able to focus on the Kate screen and therefore the commands were not implemented on the screen correctly , I was able to find two approaches to that and was able to solve the problem with using window id to focus on the screen however in future while improving the script , i found a better way where i replaced the window id part of the script. I added some comments for the log output screen in the script so that while running the script we can analyse the output much better like what process is going on at a particular time and how much time is taking with accuracy . I also had a conversation with Franziska Mai over okular and how she implemented the scripts for the okular using actiona.
WEEK 9 - 10 : I worked over some new ideas and improved the previous script . I increased some time between some actions and also added Standby of 30 and 60 secs in script to depict the usage of the application when user is idle and doing nothing or maybe thinking while writing text. I also improved the script by adding some more functions like Font change , Setting Bookmarks , Spell check , Using different views like fullscreen . I also worked upon saving the output to a log file with accurate timestamp by creating a timestamp function , also removed the logs created by the kate at the end of the script.I also got an idea of creating an ideal scenario using three different modes ( extensive user , normal user and liter user ) here each profile will have different functions of text editors used by different users for eg. Extensive user will have functions like setting bookmarks and normal user will have basic usage functions like changing font , typing text , saving file . The idea is to measure energy consumption of each profile and to know which text editor is more efficient for normal usage and extensive usage . This is just an idea and is yet to be discussed with the community .
WEEK 11 : In the final Week of Session of KDE , I am writing a blog post about my experience of working with KDE . I made a MR for the Standard usage scenarios for KATE in BE4FOSS repo . Here is the link to the MR [2]I am currently working on writing standard usage scenarios and script for LibreOffice. Also attended the community meetup , where we discussed about different ideas and what KDE eco will be looking forward to in future.
PLANS AHEAD
In this Session of KDE period , I learned a lot about working with different automation tools , creating standard usage scenarios for different softwares . Session of KDE helped me get more engaged with the open source community . It also was a great opportunity to meet with a lot of different peoples having different ideas and listen to them . I plan to attend these community meetups in future too . In SOK'22 , I was only able to complete Standard Usage Scenario and Script for only one software ( KATE ) while LibreOffice being still in progress . I plan to complete the standard usage scenarios for other softwares as well for the upcoming measure-athon happening in may-june.
CONTACT ME :
I am available on :
Matrix : drquark:kde.org
Mail : [email protected]