Jump to content

Петлевая перфорация

Петлевая перфорация приближенный вычислительный прием, позволяющий регулярно пропускать некоторые итерации цикла. [ 1 ] [ 2 ] [ 3 ]

Он опирается на один параметр : скорость перфорации . Скорость перфорации можно интерпретировать как количество итераций, которые нужно пропустить каждый раз, или количество итераций, которые необходимо выполнить перед пропуском одной.

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

Техника петлевой перфорации была впервые разработана старшими исследователями Массачусетского технологического института Мартином К. Ринардом и Стелиосом Сидироглу.

Примеры кода

[ редактировать ]

В следующих примерах показан результат перфорации цикла, примененный к этому C -подобному исходному коду.

for (int i = 0; i < N; i++) {
    // do things
}

Пропускать n итераций каждый раз

[ редактировать ]
for (int i = 0; i < N; i++) {
    // do things
    i = i + skip_factor;
}

Пропустить одну итерацию после n

[ редактировать ]
int count = 0;

for (int i = 0; i < N; i++) {
    if (count == skip_factor) {
        count = 0;
    } else {
        // do things
        count++;
    }
}

См. также

[ редактировать ]
  1. ^ Генри Хоффманн, Саса Мисаилович, Стелиос Сидироглу, Анант Агарвал, Мартин Ринар «Использование перфорации кода для повышения производительности, снижения энергопотребления и реагирования на сбои» MIT CSAIL Tech. Отчет 2009-042, сентябрь 2009 г.
  2. ^ Саса Мисаилович, Стелиос Сидироглу, Генри Хоффманн, Мартин К. Ринар «Профилирование качества обслуживания» 32-я Международная конференция по программной инженерии (ИКСБ 2010). Май 2010.
  3. ^ Стейлос Сидироглу, Саса Мисаилович, Генри Хоффманн и Мартин Ринар. «Управление производительностью и компромиссом между точностью при перфорации петли». ЕСЕК/ФСЕ. Сентябрь 2011 г.


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 3d53d8682c2a13e4f0e85036c5aae006__1681379580
URL1:https://arc.ask3.ru/arc/aa/3d/06/3d53d8682c2a13e4f0e85036c5aae006.html
Заголовок, (Title) документа по адресу, URL1:
Loop perforation - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)