def get_server_power()

in analysis/GreenSKU-Framework/src/carbon_model.py [0:0]


    def get_server_power(self) -> float:
        """Get the power of the server. Rack stuff is NOT amortized."""
        provisioned_power = 0
        allocated_power = 0
        for key, value in self.data.items():
            if key == 'rack':
                continue
            if key in self.per_socket:
                provisioned_power += self.provisioned_component_power[key] * self.socket_count
                allocated_power += self.allocated_component_power[key] * self.socket_count
                continue
            provisioned_power += self.provisioned_component_power[key]
            allocated_power += self.allocated_component_power[key]
        provisioned_power *= 1.0 + (1.0 - self.params['PSU_efficiency'])
        allocated_power *= 1.0 + (1.0 - self.params['PSU_efficiency'])
        used_power = allocated_power * self.params['power_factor']

        return provisioned_power, allocated_power, used_power