Способ оценки энергопотребления вычислителя
Иллюстрации
Показать всеИзобретение относится к области определения количества потребляемой электроэнергии нового разрабатываемого вычислителя. Техническим результатом является повышение эффективности определения энергопотребления разрабатываемого вычислителя за счет определения энергопотребления вычислительно-интенсивных участков выполнения программы. Способ оценки энергопотребления вычислителя содержит запуск программного обеспечения на вычислителе со старой процессорной архитектурой; выделение профилировщиком в программном оборудовании наиболее вычислительно-интенсивных участков (ВИУ) выполнения программы, при этом во время каждого ВИУ выполнения программы синхронно замеряют точное энергопотребление вычислительного кластера старой архитектуры и/или узлов, задействованных в ходе расчета; определение для каждого ВИУ процессорных инструкций каждого типа; запуск этого же программного обеспечения на симуляторе, симулирующем запуск и работу программного обеспечения на кластере, имеющем новую процессорную архитектуру; проведение вычислений в части ВИУ в симуляторе; определение при помощи симулятора новой архитектуры для каждого ВИУ точного числа процессорных инструкций каждого типа; и пропорциональный пересчет энергопотребления старой архитектуры на новую архитектуру, используя соотношение между числом процессорных инструкций, потребовавшихся для выполнения ВИУ на старой и новой архитектуре. 1 ил.
Реферат
Предлагаемое изобретение относится к способу определения количества потребленной электроэнергии нового разрабатываемого вычислителя.
Известен способ определения количества потребленной электроэнергии компьютера, описанный в патенте RU 2436144 C2, от 10.11.2011. В данном патенте предлагается определять текущее количество потребляемой электроэнергии для перевода компьютера в наиболее оптимальный сберегающий режим. Данный способ направлен на определение потребляемой энергии всего компьютера и не позволяет применять его для новых, разрабатываемых вычислителей компьютера.
Предлагаемое техническое решение направлено на создание способа оценки энергопотребления нового разрабатываемого вычислителя, содержащего вычислительный кластер (процессоры) с новой архитектурой.
Технический результат предлагаемого технического решения - определение энергопотребления вычислителя на стадии его разработки.
Технический результат достигается тем, что способ оценки энергопотребления вычислителя включает:
- запуск прикладного программного обеспечения на вычислителе, имеющего вычислительный кластер со старой процессорной архитектурой;
- выделение профилировщиком в прикладном программном оборудовании наиболее вычислительно-интенсивных участков (ВИУ) выполнения программы, при этом во время каждого ВИУ выполнения программы синхронно замеряют точное энергопотребление вычислительного кластера старой архитектуры и/или узлов, задействованных в ходе расчета;
- определение для каждого ВИУ процессорных инструкций каждого типа;
- запуск этого же прикладного программного обеспечения на симуляторе, симулирующего запуск и работу программного обеспечения на кластере, имеющего новую процессорную архитектуру;
- проведение вычислений в части ВИУ в симуляторе;
- определение при помощи симулятора новой архитектуры для каждого ВИУ точного числа процессорных инструкций каждого типа;
и пропорциональном пересчете энергопотребления старой архитектуры на новую архитектуру, используя соотношение между числом процессорных инструкций, потребовавшейся для выполнения ВИУ на старой и новой архитектуре, вычисляют энергопотребление на новой архитектуре из формулы:
P ( H A ) = ∑ i = 1 K n ( H A ) i ⋅ α i ⋅ p ( C A ) i + ∑ j = K + 1 N n ( H A ) j ⋅ p ( H A ) j
где
P(HA) - оценка общего энергопотребления для новой архитектуры в ходе выполнения программного обеспечения,
n(HA)i - число выполненных инструкций с номером i, тип инструкций поддерживается как на старой, так и на новой архитектуре,
αi - поправочный коэффициент для энерговыделения при выполнении одной процессорной инструкции i-го типа, поддержанного как в старой, так и в новой архитектуре, который определяется разработчиком новой архитектуры,
К - число процессорных инструкций старой архитектуры,
p(СА)i - энерговыделение при выполнении инструкции типа i на старой архитектуре,
N - число процессорных инструкций новой архитектуры,
n(HA)j - число инструкций с номером j, тип j поддерживается только на новой архитектуре вычислителя,
p(HA)j - энерговыделение при выполнении инструкции типа j на новой архитектуре, тип j поддерживается только на новой архитектуре вычислителя;
при этом энерговыделение при выполнении инструкции типа i на старой архитектуре - p(CA)i определяется путем решения системы линейных алгебраических уравнений вида
∑ i = 1 K n ( C A ) i ( t ) ⋅ p ( C A ) i = P ( C A ) ( t )
где
n(CA)i(t) - число выполненных инструкций в момент времени t, для старой архитектуры,
P(CA)(t) - общее энергопотребление системы к моменту времени t.
Основные термины
Процессор (микропроцессор) - микроэлектронное устройство с набором команд (инструкций).
Кластер - вычислительный комплекс, состоящий их нескольких компьютеров (узлов), оснащенных процессорами.
Набор инструкций - набор команд, которые может выполнять процессор.
Старая архитектура - архитектура, которая уже создана и доступна.
Новая архитектура - создаваемая микропроцессорная архитектура, характеристики которой (в т.ч. энергопотребление) требуется определить. Набор инструкций новой архитектуры расширен по сравнению с набором старой архитектуры. В свою очередь, все процессорные инструкции, доступные на старой архитектуре, доступны и на новой.
Симулятор - программное обеспечение, позволяющее выполнять ПО для новой архитектуры на старой архитектуре (симуляция новых инструкций).
На фиг.1 показана схема устройства, реализующая данный способ. Так для каждого компьютера, используемого в кластере, используется цифровой блок питания, благодаря которому измеряется его точное энерговыделение, и, соответственно, легко можно вычислить точное энергопотребление вычислительного кластера старой архитектуры и/или узлов, задействованных в ходе расчета. Благодаря этому можно оценить энергопотребление вычислителя, выполняя операции способа:
- запуск прикладного программного обеспечения на вычислителе, имеющем вычислительный кластер со старой процессорной архитектурой; данное программное обеспечение представляет собой специализированную программу максимально загружающего вычислитель,
- выделение профилировщиком в данном запущенном прикладном программном оборудовании наиболее вычислительно-интенсивных участков (ВИУ) выполнения программы, при этом во время каждого ВИУ выполнения программы синхронно замеряют точное энергопотребление вычислительного кластера старой архитектуры и/или узлов, задействованных в ходе расчета:
- определение для каждого ВИУ процессорных инструкций каждого типа;
- запуск этого же прикладного программного обеспечения на симуляторе, симулирующем запуск и работу программного обеспечения на кластере, имеющем новую процессорную архитектуру; по сути это программа позволяющая выполнять ПО для новой архитектуры на старой архитектуре (т.е. в ходе выполнения программы ей принудительно осуществляется симуляция новых инструкций),
- проведение вычислений в части ВИУ в симуляторе;
- определение при помощи симулятора новой архитектуры для каждого ВИУ точного числа процессорных инструкций каждого типа;
и пропорциональный пересчет энергопотребления старой архитектуры на новую архитектуру, используя соотношение между числом процессорных инструкций, потребовавшейся для выполнения ВИУ на старой и новой архитектуре, вычисляют энергопотребление на новой архитектуре по формуле:
P ( H A ) = ∑ i = 1 K n ( H A ) i ⋅ α i ⋅ p ( C A ) i + ∑ j = K + 1 N n ( H A ) j ⋅ p ( H A ) j
где
P(HA) - оценка общего энергопотребления для новой архитектуры в ходе выполнения программного обеспечения.
n(HA)i - число выполненных инструкций с номером i, тип инструкций поддерживается как на старой, так и на новой архитектуре,
αi - поправочный коэффициент для энерговыделения при выполнении одной процессорной инструкции i-го типа, поддержанного старой, так и в новой архитектуре, который определяется разработчиком новой архитектуры,
К - число процессорных инструкций старой архитектуры,
p(CA)j - энерговыделение при выполнении инструкции типа i на старой архитектуре,
N - число процессорных инструкций новой архитектуры,
n(HA)j - число инструкций с номером j, тип j поддерживается только на новой архитектуре вычислителя,
p(HA)j - энерговыделение при выполнении инструкции типа j на новой архитектуре, тип j поддерживается только на новой архитектуре вычислителя;
при этом энерговыделение при выполнении инструкции типа i на старой архитектуре - p(CA)i определяется путем решения системы линейных алгебраических уравнений вида
∑ i = 1 K n ( C A ) i ( t ) ⋅ p ( C A ) i = P ( C A ) ( t )
где
n(CA)i(t) - число выполненных инструкций в момент времени t, для старой архитектуры,
P(CA)(t) - общее энергопотребление системы к моменту времени t.
Выше были раскрыты основные особенности способа оценки энергопотребления вычислителя, но любому специалисту в данной области техники очевидно, что на основе раскрытых данных можно создать вариации способов оценки энергопотребления.
Способ оценки энергопотребления вычислителя, заключающийся в:- запуске прикладного программного обеспечения на вычислителе, имеющем вычислительный кластер со старой процессорной архитектурой;- выделении профилировщиком в прикладном программном оборудовании наиболее вычислительно-интенсивных участков (ВИУ) выполнения программы, при этом во время каждого ВИУ выполнения программы синхронно замеряют точное энергопотребление вычислительного кластера старой архитектуры и/или узлов, задействованных в ходе расчета;- определении для каждого ВИУ процессорных инструкций каждого типа;- запуске этого же прикладного программного обеспечения на симуляторе, симулирующем запуск и работу программного обеспечения на кластере, имеющем новую процессорную архитектуру;- проведении вычислений в части ВИУ в симуляторе;- определении при помощи симулятора новой архитектуры для каждого ВИУ точного числа процессорных инструкций каждого типа;и пропорциональном пересчете энергопотребления старой архитектуры на новую архитектуру, используя соотношение между числом процессорных инструкций, потребовавшихся для выполнения ВИУ на старой и новой архитектуре, вычисляют энергопотребление на новой архитектуре из формулы: ,гдеP(НА) - оценка общего энергопотребления для новой архитектуры в ходе выполнения программного обеспечения,n(НА)i - число выполненных инструкций с номером i, тип инструкций поддерживается как на старой, так и на новой архитектуре,αi - поправочный коэффициент для энерговыделения при выполнении одной процессорной инструкции i-го типа, поддерживаемого как в старой, так и в новой архитектуре, который определяется разработчиком новой архитектуры,K - число процессорных инструкций старой архитектуры,p(CA)i - энерговыделение при выполнении инструкции типа i на старой архитектуре,N - число процессорных инструкций новой архитектуры,n(HA)j - число инструкций с номером j, тип j поддерживается только на новой архитектуре вычислителя,p(HA)j - энерговыделение при выполнении инструкции типа j на новой архитектуре, тип j поддерживается только на новой архитектуре вычислителя;при этом энерговыделение при выполнении инструкции типа i на старой архитектуре - p(CA)i определяется путем решения системы линейных алгебраических уравнений вида ,гдеn(CA)i(t) - число выполненных инструкций в момент времени t, для старой архитектуры,P(CA)(t) - общее энергопотребление системы к моменту времени t.