Loop splitting
http://dbpedia.org/resource/Loop_splitting an entity of type: TopicalConcept
Loop splitting is a compiler optimization technique. It attempts to simplify a loop or eliminate dependencies by breaking it into multiple loops which have the same bodies but iterate over different contiguous portions of the index range.
rdf:langString
Расщепление цикла (англ. loop splitting) — оптимизация компилятора, которая пытается упростить цикл или устранить зависимости в цикле, разбив его на несколько частей, имеющих одно и то же тело исходного цикла и различные диапазоны счётчика. Например, следующий код: int p = 10;for (int i=0; i<10; ++i){ y[i] = x[i] + x[p]; p = i;} в результате применения оптимизации преобразовывается в: y[0] = x[0] + x[10];for (int i=1; i<10; ++i){ y[i] = x[i] + x[i-1];} Новый код равносилен предыдущему, однако устраняет необходимость в переменной «р» внутри тела цикла.
rdf:langString
Розщеплення циклу (англ. loop splitting) — оптимізація компілятора, яка намагається спростити цикл або усунути залежності в циклі, розбивши його на кілька частин, що мають одне і те саме тіло циклу і різні діапазони лічильника. Розглянемо, наприклад, такий код: int p = 10;for (int i=0; i<10; ++i){ y[i] = x[i] + x[p]; p = i;} Зауважимо, що p = 10 лише для першої ітерації, а для всіх інших ітерацій p = i - 1. Компілятор може скористатися цим, розмотавши (або «відщепивши») першу ітерацію циклу. Після застосування оптимізації код стане таким:
rdf:langString
rdf:langString
Loop splitting
rdf:langString
Расщепление цикла
rdf:langString
Розщеплення циклу
xsd:integer
611631
xsd:integer
1050438254
rdf:langString
y
rdf:langString
August 2019
rdf:langString
Loop splitting is a compiler optimization technique. It attempts to simplify a loop or eliminate dependencies by breaking it into multiple loops which have the same bodies but iterate over different contiguous portions of the index range.
rdf:langString
Расщепление цикла (англ. loop splitting) — оптимизация компилятора, которая пытается упростить цикл или устранить зависимости в цикле, разбив его на несколько частей, имеющих одно и то же тело исходного цикла и различные диапазоны счётчика. Например, следующий код: int p = 10;for (int i=0; i<10; ++i){ y[i] = x[i] + x[p]; p = i;} в результате применения оптимизации преобразовывается в: y[0] = x[0] + x[10];for (int i=1; i<10; ++i){ y[i] = x[i] + x[i-1];} Новый код равносилен предыдущему, однако устраняет необходимость в переменной «р» внутри тела цикла. Впервые данная оптимизация появилась в GCC версии 3.4.
rdf:langString
Розщеплення циклу (англ. loop splitting) — оптимізація компілятора, яка намагається спростити цикл або усунути залежності в циклі, розбивши його на кілька частин, що мають одне і те саме тіло циклу і різні діапазони лічильника. Розглянемо, наприклад, такий код: int p = 10;for (int i=0; i<10; ++i){ y[i] = x[i] + x[p]; p = i;} Зауважимо, що p = 10 лише для першої ітерації, а для всіх інших ітерацій p = i - 1. Компілятор може скористатися цим, розмотавши (або «відщепивши») першу ітерацію циклу. Після застосування оптимізації код стане таким: y[0] = x[0] + x[10];for (int i=1; i<10; ++i){ y[i] = x[i] + x[i-1];} Новий код рівносильний попередньому, проте усуває необхідність у змінній р всередині тіла циклу. Вперше ця оптимізація з'явилася в GCC версії 3.4. Більш узагальнене розщеплення циклу додано в GCC 7.
xsd:nonNegativeInteger
4480