Gps up: GPS Up APK (Android App)

Метрика для сравнения энергоэффективности программного обеспечения

В этом блоге мы поговорим о Greenup, Powerup и Speedup (GPS-UP), простой в использовании метрике энергопотребления, которая помогает разработчикам, студентам и исследователям понять не только энергоэффективность их оптимизации, но помогает им сделать лучший выбор в отношении того, какие оптимизации они хотели бы сделать.

Предыстория и мотивация

За последние десятилетия промышленность и исследователи приложили значительные усилия и достигли значительного прогресса в повышении энергоэффективности оборудования и инфраструктуры объектов. Тем не менее, энергоэффективность программного обеспечения исторически игнорировалась. На самом деле, подавляющее большинство современных разработчиков программного обеспечения либо вообще не рассматривают энергоэффективность программного обеспечения, либо рассматривают ее лишь как второстепенную мысль (обычно слишком поздно). Когда пространство для совершенствования оборудования сужается, энергоэффективность программного обеспечения будет играть все более важную роль в дальнейшем развитии экологически чистых вычислений.

Для повышения энергоэффективности программного обеспечения нам нужна платформа (например, Marcher), которая может легко и точно измерять потребление энергии различными программами. Мы обсуждали это в предыдущей статье . Не менее важны метрики, которые могут оценивать и сравнивать энергоэффективность программного обеспечения. Без хороших метрик разработчики запутаются и могут возникнуть споры. Например, можно утверждать, что энергоэффективность — это просто побочный продукт повышения производительности, потому что более быстрый код имеет тенденцию быть более энергоэффективным. Между тем, другие могут утверждать, что энергоэффективность и производительность являются противоречивыми целями. Чтобы снизить энергопотребление, нужно пожертвовать производительностью программного обеспечения или наоборот. Оба аргумента правомерны при определенных обстоятельствах, но ни один из них не раскрывает общей картины.

Физика потребления энергии и мощности

Чтобы лучше проиллюстрировать проблему, давайте сделаем шаг назад и посмотрим на физику, лежащую в основе потребления энергии и мощности. На энергоэффективность программного обеспечения влияют три фактора:

  • общая потребляемая энергия,

  • время, в течение которого она потреблялась, и

  • скорость ее потребления (мощность).

Единицами измерения энергии, мощности и времени являются джоуль, ватт и секунда соответственно. Основной способ понять взаимосвязь между производительностью, мощностью и энергопотреблением заключается в том, что энергия, потребляемая во время выполнения программы, представляет собой площадь под кривой мощности во время выполнения программы.

Энергия, потребляемая во время выполнения программы

Energy Delay Product

Существует очень мало показателей энергоэффективности программного обеспечения. Продукт с задержкой энергии (EDP) является хорошо известным среди них, который одновременно учитывает как энергию, так и время работы.

По сути, EDP = Энергия x Время работы.

EDP, безусловно, полезен, но недостаточен. Почему это?

Возьмем следующий гипотетический пример. Предположим, что код (до оптимизации) работает 100 секунд и потребляет 20 000 Дж энергии.

Оптимизация 1 распараллеливает код и сокращает время выполнения до 25 секунд и потребляет 10 000 Дж энергии. Оптимизация 1 работает в 4 раза быстрее, но потребляет в 2 раза больше энергии, тем самым экономя энергию в 2 раза.

Оптимизация 2 также распараллеливает код, но использует динамическое масштабирование частоты напряжения (DVFS) для снижения частоты многоядерных процессоров. Он работает 50 секунд и потребляет 5000 Дж энергии. Оптимизация 2 работает в 2 раза быстрее, но потребляет вдвое меньше энергии, тем самым экономя энергию в 4 раза.

Хотя оптимизация 1 и оптимизация 2 имеют одинаковое значение EDP (250 000), они явно относятся к разным категориям. Оптимизация 2 повышает энергопотребление больше, чем производительность, а оптимизация 1 повышает производительность больше, чем потребление энергии. EDP ​​не может эффективно различать две оптимизации.

Ускорение, усиление и экологизация

Итак, если EDP не является эффективным инструментом для сравнения эффективности двух программ, что может быть лучшим решением? Что ж, нам нужно что-то, что дало бы нам несколько ракурсов для оценки производительности, мощности и энергии. Существует много способов добиться повышения энергоэффективности, например, сократить время работы или уменьшить мощность, используемую для того же времени работы.

В параллельном программировании есть показатель Ускорение, который определяется как:

S up = T ϕ / T o

, где T ϕ — время выполнения базового кода, а To — время выполнения базового кода. время выполнения распараллеленного кода.

Аналогичным образом мы определяем показатель Powerup следующим образом:

P up = P o / P ϕ

, где P ϕ — средняя мощность базового кода мощности, а Po — среднее значение оптимизированный код.

Здесь обратите внимание, что оптимизированный код идет сверху. Это дает нам отношение, поэтому, если Powerup больше 1, новый код имеет более высокую среднюю мощность. Это часто бывает с параллельными программами, поскольку они используют больше ядер.

Последней и самой важной метрикой, которую мы введем, является то, что мы называем Greenup:

G up = E ϕ / E o

Стоит отметить, что, поскольку энергия для программы является продуктом времени работы и среднего энергопотребления:  

G UP = ( T ϕ × P ϕ) / ( T O × P O) = S UP / P UP

3444443 Plectization Of 9003

3344. на восемь квадрантов

С помощью функций «Ускорение», «Увеличение мощности» и «Озеленение» все виды оптимизации программного обеспечения можно разделить на один из восьми квадрантов, как показано на графике выше.

Интерпретация

Квадранты зеленого цвета 9Цвет 0044 указывает на то, что оптимизация может экономить энергию.

Красные квадранты указывают на то, что оптимизации потребляют больше энергии.

Этот график охватывает все возможные сценарии и показывает общую картину энергоэффективности программного обеспечения.

Категория 1 представляет тип оптимизации, при котором вы используете меньше средней мощности и видите ускорение. Это идеальный случай, и он часто является результатом оптимизации, например более эффективного использования кеша, чтобы избежать доступа к основной памяти.

Категория 8 представляет собой противоположное. Это худшее, что вы можете сделать, вложить больше энергии, но программа работает медленнее.

Категория 2 на горизонтальной оси представляет оптимизации, которые не влияют на мощность, но уменьшают общее время работы. Этот класс оптимизации часто встречается при усовершенствовании последовательного кода. То есть прирост энергии идет чисто от прироста производительности.

Категория 7 указывает, что модифицированная версия кода потребляет столько же энергии, но снижает производительность.

Категории 3 и 5 представляют случаи большей мощности по сравнению с базовым кодом. Они часто представляют два сценария распараллеливания последовательного кода. Либо увеличение скорости помогает программе завершиться достаточно быстро, что приводит к экономии энергии, как в разделе 3, либо дополнительная мощность не приводит к достаточному повышению производительности, что приводит к потреблению большего количества энергии, как в разделе 5.

Категории 4 и 6 представляют случаи меньшей мощности по сравнению с базовым кодом. Это часто происходит при использовании динамического масштабирования напряжения и частоты (DVFS) для снижения энергопотребления процессора.

Категория 4 представляет программу, которая работает медленнее из-за DVFS, но в конечном итоге потребляет меньше энергии. Категория 6 представляет собой программу, работающую медленнее, но потребляющую больше энергии, чем исходная программа.

Вспомните гипотетический пример, который EDP не различает: оптимизация 1 относится к категории 3, а оптимизация 2 относится к категории 1.

Хотите протестировать собственный код?

Если вы хотите протестировать свой собственный код, чтобы увидеть, к какой категории относятся ваши оптимизации, вы можете запускать свои программы в GreenCode, который имеет встроенные возможности для расчета Greenup, Speedup и Powerup между двумя версиями программ, как показано ниже. на картинке ниже.

Если вы хотите увидеть примеры для каждой категории и узнать больше о метрике GPS-UP, вы можете прочитать нашу статью: Использование метрик Greenup, Powerup и Speedup для оценки энергоэффективности программного обеспечения .

Первоначально опубликовано в GreenSoft, Техасский государственный университет

SyncUP TRACKER, устройство GPS для вашего велосипеда, багажа и многого другого

Узнайте, как отслеживать свои вещи с помощью SyncUP TRACKER™

Следите за своими ценностями — рюкзаком, велосипедом, сумкой для ноутбука, чемоданом или чем-то еще, что вы хотите защитить — с помощью SyncUP TRACKER

TM , подключенного к общенациональной сети T-Mobile.

Для отслеживания собственных вещей. Требуется подходящее устройство, служба и приложение. Для отслеживания требуется сигнал GPS. Покрытие недоступно в некоторых регионах.

Зарегистрируйтесь сегодня и получите SyncUP TRACKER

TM устройство бесплатно.

Стоимость услуги всего от 5 долларов США в месяц.

Купить сейчас

Если вы отмените услугу беспроводной связи, наступает срок погашения остатка по требуемому финансовому соглашению. Посмотреть полные условия

Зарегистрируйтесь сегодня и получите устройство SyncUP TRACKER

TM бесплатно.

Услуга всего от 5 долларов в месяц.

Если вы отмените услугу беспроводной связи до того, как получите 24 кредитных счета, кредиты остановятся, и будет выплачен оставшийся баланс на полной сумме устройства (60 долларов США – SyncUP Tracker). Налог на цену до кредита, подлежащий уплате при продаже. Ограниченное по времени предложение; подлежит изменению. Требуется соответствующий кредит, новая линейка услуг SyncUP Tracker и финансовое соглашение. Если вы отменили линии мобильного интернета за последние 90 дней, повторно активируйте их перед добавлением квалификационной строки. В магазинах и при звонках в службу поддержки, поддержка в размере 35 долларов США, поддержка обновления или плата за подключение устройства при продаже. 60 долларов США через кредиты по счетам; должен быть активным и иметь хорошую репутацию, чтобы получать кредиты; разрешить 2 цикла выставления счетов. Может не сочетаться с некоторыми предложениями или скидками.

Универсальный.

Быстро прикрепляйте и снимайте трекер, чтобы не отставать от вашего образа жизни. Следуйте за своим рюкзаком в понедельник и своим багажом во вторник.

Найдите и отследите.

Получайте оповещения о местоположении и движении в режиме реального времени, чтобы защитить свои вещи.

Виртуальные границы.

Получайте оповещения в режиме реального времени, когда какой-либо объект, который вы защищаете, покидает созданную вами виртуальную границу.

Покрытие, на которое можно положиться.

Отслеживайте и находите что угодно и где угодно благодаря мощной и надежной сети T-Mobile.

Для отслеживания собственных вещей. Требуется подходящее устройство, служба и приложение. Для отслеживания требуется сигнал GPS. Покрытие недоступно в некоторых регионах. Информация о местоположении является приблизительной и не всегда может быть доступна. Используйте по назначению.

Теперь вы уверенно идете по следу.

Прикрепи и забудь.

Учишься в кафе и не хочешь беспокоиться о велосипеде на улице? Используйте приложение, чтобы установить виртуальные границы и включить Motion Alert, чтобы получать оповещения в реальном времени и подробный маршрут, если ваш трекер движется.

Следите за всем.

Наш водонепроницаемый трекер поставляется с аксессуарами для зарядки и ремешком для удобства переноски, датчиком освещенности и звонком, которые помогут вам найти любой предмет, который находится поблизости, но не на виду.

Защита от проникновения пыли и воды; до 30 минут в пресной воде на глубине до 1 метра в соответствии со степенью защиты IP67.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *