# Improving Automated Machine-Learning Systems through Green AI
## 4 Materials and Methods
### Sustainability Metrics  
This paper focuses on sustainability aspects induced by computing, as proposed by [63; 64; 65; 66]. These measurements focus on estimating the time and resource consumption, which allows us to determine the carbon footprint of the experimentation in an estimated but precise way. The main metrics identified in the state of the art are [17; 25; 67; 68; 69]:  
* Runtime is a measure of the time it takes for a program to complete. It is not a perfect measure of efficiency, but it is strongly correlated with the power consumption of the corresponding experiment. Runtime can be used to calculate an estimate of the total carbon footprint of the experiment, but additional information is needed, such as the power consumption of the hardware used and the composition of the power mix. Compared to other measures, runtime is easy to measure on most hardware. \begin{table}
\begin{tabular}{c c} \hline \hline
**Family** & **Algorithm** \\ \hline Stochastic Gradient Descent Classifier & SGDClassifier \\ Logistic Regression & LogisticRegression \\ K-Nearest Neighbors Classifier & KNeighborsClassifier \\ Random Forest Classifier & RandomForestClassifier \\ Gradient Boosting Classifier & GradientBoostingClassifier \\ Decision Tree Classifier & DecisionTreeClassifier \\ Linear Support Vector Machine & LinearSVC \\ Nonlinear Support Vector Machine & SVC \\ Gaussian Naive Bayes & GaussianNB \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Taxonomy of Machine-Learning Algorithms. CPU/GPU Hours. Measuring CPU/GPU hours is a practical and straightforward method for quantifying environmental impact. However, its measurement can be ambiguous, as it can be based on either the actual clock time of CPU/GPU or the real time of CPU/GPU, resulting in different interpretations for quantifying environmental impact. Counting CPU/GPU hours is a suboptimal indicator of efficiency, given its hardware dependence. Nonetheless, it remains one of the most practical metrics due to its ease of measurement and relatively straightforward determination of carbon footprint, assuming that the CPU/GPU consistently consumes a certain amount of energy and that the energy mix is known. The total energy consumption of all active CPU devices \(E_{CPU}\) (kWh) is calculated as a product of the power consumption of the CPU devices and its loading time \(E_{CPU}= TDP\int_{0}^{T}W_{CPU}(t)dt\), where \( TDP\) is equivalent CPU model specific power consumption at long-term loading (kW), \(W_{CPU}\) is the total loading of all processors (fraction). If the tracker cannot match any CPU device, the CPU power consumption is set to a constant value equal to 100 W [70,71]. * RAM. Dynamic random access memory devices are an important source of energy consumption in modern computing systems, especially when a significant amount of data should be allocated or processed. However, accounting of RAM energy consumption is problematic as its power consumption is strongly dependent on whether data are read, written, or maintained. In RAM, power consumption is considered proportional to the amount of allocated power by the current running process calculated as follows: \(E_{RAM}=0.375\int_{0}^{T}M_{RAM}(t)dt\), where \(E_{RAM}\)-power consumption of all allocated RAM (kWh), \(M_{RAM}\), is allocated memory (GB) measured via psutiland 0.375 W/Gb is estimated specific energy consumption of DDR3, DDR4 modules [70,71]. * Energy consumption is hardware-dependent, as it heavily relies on the energy efficiency of the hardware itself. Therefore, while it is a suboptimal metric for assessing the efficiency of a given approach, it proves to be a commendable measure for quantifying the environmental impact of a specific experiment on particular hardware. Notably, energy, in conjunction with the hardware, constitutes the primary external resource required for executing AutoML experiments.