Zasada: Efektywność energetyczna

Ukończone

Zawartość tego klipu wideo jest nadal prawidłowa, ale liczby zasad mogą się różnić ze względu na zasadę Green Software Foundation ponownego numerowania.

Energia elektryczna i węgiel

Większość ludzi uważa, że energia elektryczna jest czysta. Kiedy podłączamy coś do ściany, nasze ręce nie stają się brudne, a nasze laptopy nie potrzebują rur spalinowych. Jednak prawdą jest to, że większość energii elektrycznej jest wytwarzana poprzez spalanie paliwa kopalnego (zwykle węgla), a podaż energii jest jedną najważniejszą przyczyną emisji dwutlenku węgla.

Ponieważ możemy wyciągnąć bezpośrednią linię z energii elektrycznej do emisji dwutlenku węgla, możemy rozważyć, że energia elektryczna będzie jednym z serwerów proxy emisji dwutlenku węgla.

Od aplikacji działających na smartfonie do trenowania modeli uczenia maszynowego działających w centrach danych wszystkie oprogramowanie zużywa energię elektryczną w jego wykonaniu. Jednym z najlepszych sposobów zmniejszenia zużycia energii elektrycznej i kolejnych emisji zanieczyszczeń węglowych naszego oprogramowania jest zwiększenie efektywności energetycznej naszych aplikacji.

Dlatego kluczową zasadą zrównoważonej inżynierii oprogramowania jest tworzenie aplikacji, które są wydajne energetycznie.

Jako zrównoważone inżynierowie musimy zrozumieć energię elektryczną. Nasza podróż nie rozpoczyna się od komputera; zaczyna się od sposobu wytwarzania energii elektrycznej, która zasila nasze komputery.

Energia a moc

Energia mierzy ilość używanej energii elektrycznej; standardową jednostką energii jest Joules lub J. Jednak kilowatowe godziny lub kWh to inny typowy sposób odwoływania się do zużycia energii.

Energia elektryczna jest często zgłaszana jako energia lub energia, które są dwiema różnymi pojęciami:

Energia = Moc ✕ Czas

  • Energia jest całkowitą ilością używanej energii elektrycznej; standardową jednostką energii jest Joules lub J.

  • Moc jest szybkością zużywanej energii elektrycznej na jednostkę czasu; Standardowa jednostka mocy to Watt lub W. Pojedynczy Watt to 1 Dżule na sekundę.

Typowym sposobem odwoływania się do zużycia energii jest zasilanie przez jednostkę czasu, taką jak Watt-seconds lub Kilowat-godziny. Przykład:

  • 20 wat-sekund lub 20 Ws jest ilością energii, którą można uzyskać, gdyby 20 W były uruchamiane przez jedną sekundę. Ponieważ 1 Wat wynosi 1 joule na sekundę, ta wartość wynosi 20 dżuli.

  • 20 kilowatów godzin lub 20 kWh jest energią, którą dostaniesz, jeśli 20 000 watów działa przez jedną godzinę.

    Energy = 60 X 60 X 20,000 = 72,000,000 Joules = 72 Megajoules (72 MJ)

Proporcjonalność energetyczna

Użycie mierzy, ile zasobów komputera jest używanych, co jest zwykle reprezentowane jako wartość procentowa. Bezczynny komputer ma niski procent wykorzystania i nie jest używany. Komputer z maksymalną pojemnością ma wysoki procent i jest w pełni wykorzystywany.

Proporcjonalność energetyczna to miara relacji między zużyciem energii w systemie komputerowym a szybkością wykonywania użytecznej pracy (jej wykorzystanie). Jeśli całkowite zużycie energii jest proporcjonalne do wykorzystania komputera, jest proporcjonalne do zużycia energii.

W systemie proporcjonalnym do energii efektywność energetyczna jest stała; niezależnie od wykorzystania, efektywność energetyczna pozostaje taka sama. Jednak efektywność energetyczna sprzętu nie jest stała. Różni się w zależności od kontekstu. Ze względu na złożone interakcje wielu różnych składników urządzeń sprzętowych może to być nieliniowe, co oznacza, że relacja między zasilaniem a użyciem nie jest proporcjonalna.

Diagram showing power versus utilization.

W przypadku wykorzystania na poziomie 0% komputer nadal rysuje 100 W; przy 50% wykorzystania pobiera 180 Wwartość , a przy 100% wykorzystania pobiera wartość 200 W. Relacja między zużyciem energii a użyciem nie jest liniowa i nie przekracza źródła.

Ze względu na tę relację tym bardziej korzystasz z komputera, tym bardziej wydajna staje się konwersja energii elektrycznej na przydatne operacje obliczeniowe. Uruchamianie pracy na jak najmniejszej liczbą serwerów z najwyższym współczynnikiem wykorzystania maksymalizuje ich efektywność energetyczną.

Narysowanie zasilania statycznego

Istnieją różne przyczyny tego braku proporcjonalności energetycznej, z których jeden jest statycznym przyciąganiem mocy.

Bezczynny komputer, nawet przy zerowym wykorzystaniu, nadal pobiera energię elektryczną. Ten statyczny rysunek mocy różni się w zależności od konfiguracji i składników sprzętowych, ale wszystkie składniki mają pewne statyczne zużycie energii. Ten potencjalny przyciągnąć moc jest jednym z powodów, dla których komputery, laptopy i urządzenia przenośne mają dostępne tryby oszczędzania energii. Jeśli urządzenie jest bezczynne, w końcu wyzwala tryb hibernacji, który powoduje uśpienie dysku i ekranu, a nawet zmienia częstotliwość procesora CPU. Te tryby oszczędzania energii oszczędzają energię elektryczną, ale mają inne kompromisy, takie jak wolniejsze ponowne uruchomienie po przebudzeniu urządzenia.

Serwery nie są zwykle konfigurowane pod kątem agresywnych, a nawet minimalnych oszczędności. Wiele przypadków użycia serwera wymaga jak najszybszej pełnej pojemności w odpowiedzi na szybko zmieniające się wymagania. Ten scenariusz może pozostawić wiele serwerów w trybie bezczynności w okresach niskiego zapotrzebowania. Bezczynny serwer ma koszt zarówno od osadzonego węgla, jak i jego nieefektywnego wykorzystania.

Szybkość zegara

Szybkość zegara (częstotliwość) to szybkość działania komputera lub mikroprocesora wyrażona w cyklach na sekundę (megahertz). Urządzenia konsumenckie często dynamicznie dostosowują szybkość zegara urządzeń obliczeniowych, aby osiągnąć większą proporcjonalność energetyczną.

Szybkość zegara określa, jak szybko komputer może wykonywać instrukcje.

Efektywność energetyczna mikroprocesorów zmienia się z prędkością zegara; wysokie szybkości zegara są często mniej wydajne energetycznie niż niskie prędkości zegara. Na przykład w systemie I7-3770K można uruchomić polecenie w 3.5 GHz50 Wgodzinie , lub dla .175 W5 GHz Przybliżony 40% wzrost szybkości zegara wymaga >zwiększenia mocy 3✕ .

Zmniejszenie szybkości zegara w czasie niskiego wykorzystania może zwiększyć efektywność energetyczną, maksymalizując w ten sposób efektywność energetyczną sprzętu.