Mid Sweden University

miun.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Green Coding: Energy consumption in different programming languages and algorithms
Mid Sweden University, Faculty of Science, Technology and Media, Department of Computer and Electrical Engineering (2023-).
2024 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Abstract [sv]

Detta arbete undersöker effekten av green coding på mjukvaruutveckling med syfte att minska dess miljöpåverkan. Huvudmålen var att analysera algoritmisk komplexitet, exekveringstid och energiförbrukning i olika programmeringsspråk. Resultaten indikerar att energiförbrukning av en algoritm växer i samma takt som den algoritmiska komplexiteten. Exekveringstid och energianvändning är direkt relaterade vilket betyder att prestandaoptimering är i sin del en optimering av energiförbrukning. Olika programmeringsspråk har olika värden på energiförbrukning och varje språk presterar olika med Go och Java liknande prestanda men Java var lite effektivare och C# var alldeles för energikonsumerande jämfört med de två språken. Därmed bör programmeringsspråk väljas med omsorg. Det vetenskapliga bidraget från detta arbete ligger i dess empiriska analys av energiförbrukning över olika algoritmer och språk, vilket ger en värdefull resurs för utvecklare som vill anta grönare kodningsmetoder. Genom att visa de miljömässiga fördelarna med energieffektiv programmeringsspråk och algoritmer önskar detta arbete mjukvaruindustrin att prioritera hållbarhet.

Abstract [en]

This project investigates the impact of Green Coding on software development with the aim of reducing its environmental impact. The main objectives were to analyze algorithmic complexity, execution time and energy consumption in different programming languages. The results indicate that the energy consumption of an algorithm increases in conjunction with its algorithmic complexity. Execution time and energy usage are directly related, meaning performance optimization is in part an optimization of energy consumption. Different programming languages have different energy consumption values and each language performs differently. Go and Java showed similar performance with Java being slightly more efficient while C# was significantly more energy-consuming to the other two languages. Therefore, programming languages should be chosen carefully. The scientific contribution of this work lies in its empirical analysis of energy consumption across various algorithms and languages, providing valuable resource for developers who wish to adopt greener coding practices. By demonstrating the environmental benefits of energy-efficient programming languages and algorithms, this work hopefully encourages the software industry to prioritize sustainability.

Place, publisher, year, edition, pages
2024. , p. 43
Keywords [en]
Energy Consumption, Algorithms, Programming languages, C#, Java, Go
Keywords [sv]
Energikonsumtion, algoritmer, programmeringsspråk, C#, Java, Go
National Category
Software Engineering
Identifiers
URN: urn:nbn:se:miun:diva-52227Local ID: DT-V24-G3-009OAI: oai:DiVA.org:miun-52227DiVA, id: diva2:1892385
Subject / course
Computer Engineering DT1
Educational program
Master of Science in Engineering - Computer Engineering TDTEA 300 higher education credits
Supervisors
Examiners
Available from: 2024-08-26 Created: 2024-08-26 Last updated: 2024-08-26Bibliographically approved

Open Access in DiVA

fulltext(901 kB)180 downloads
File information
File name FULLTEXT01.pdfFile size 901 kBChecksum SHA-512
7dc7ad5e2791f9bd1959304c3055c783bddcffb7f20019f9fc1f69d2eb66ada35aa12500d0c80f2d3fe0256ab3c8e30a539cff90cdde2d1f527ef67c56aa3cb3
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Khudher, Taha
By organisation
Department of Computer and Electrical Engineering (2023-)
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 180 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 554 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf