В GNOME предложили учитывать влияние разработки на окружающую среду

Филипп Витналл (Philip Withnall) из компании Endless выступил на конференции GUADEC 2020 с предложением ввести учёт влияния разработки приложений GNOME на окружающую среду. Для каждого приложения предлагается отображать параметр «Carbon Cost», показывающий примерный уровень выброса углекислого газа в атмосферу и позволяющий оценить как разработка оказывает влияние на глобальное потепление.

По мнению докладчика, несмотря на то, что свободное ПО поставляется бесплатно, у него есть косвенная цена — влияние разработки на окружающую среду. Например, серверная инфраструктура проекта, серверы непрерывной интеграции, работа некоммерческой организации GNOME Foundation и проведение конференций разработчиков требуют электроэнергии и материалов, процессы производства которых приводят к выбросам углекислого газа в атмосферу. Приложения также потребляют энергию на системах пользователя, что тоже косвенно отражается на окружающей среде.

Введение новой метрики позволит показать серьёзное отношение проекта GNOME к сохранению окружающей среды. В числе факторов для вычисления метрики кпоминается время работы приложения, нагрузка на CPU, хранилище и сеть, интенсивность тестирования в системе непрерывной интеграции. Для оценки нагрузки предлагается использовать sysprof, механизмы аккаунтинга systemd и powertop, данные от которых могут быть преобразованы в эквивалент выброса углекислого газа. Например, 1 час интенсивной нагрузки CPU можно оценивать приблизительно как 20 Вт или 6 граммов CO2e, а 1 ГБ загруженных по сети данных, как 17 граммов CO2e. Что касается систем непрерывной интеграции, сборка Glib оценивается как 48 килограмм CO2e в год (для сравнения один человек в год производит 4.1 тонны CO2e).

Для снижения «Carbon Cost» разработчикам предлагается проводить оптимизации, такие как применение кэширования, повышение эффективности кода, снижения сетевой нагрузки и применение предопределённых образов в системе непрерывной интеграции, внося таким способом свой вклад в борьбу с глобальным потеплением. Например, использование готовых docker-образов в системе непрерывной интеграции позволит снизить значение метрики в 4 раза.

Для каждого значительного релиза предлагается считать совокупный «Carbon Cost», суммирующий метрики всех приложений, а также затраты на проект GNOME, Фонд GNOME, хакфесты и систему непрерывной интеграции. Подобная метрика даст возможность вести разработку с оглядкой на влияния на окружающую среду, отслеживать динамику и проводить должные оптимизации.

Источник: http://www.opennet.ru/opennews/art.shtml? num=53426

©  OpenNet