A method for estimating optimal unrolling times for nested loops

A. Koseki, H. Komastu, Yoshiaki Fukazawa

Research output: Contribution to conferencePaper

9 Citations (Scopus)

Abstract

Loop unrolling is one of the most promising parallelization techniques, because the nature of programs causes most of the processing time to be spent in their loops. Unrolling not only the innermost loop but also outer loops greatly expands the scope for reusing data and parallelizing instructions. Nested-loop unrolling is therefore a very effective way of obtaining a higher degree of parallelism. However, we need a method for measuring the efficiency of loop unrolling that takes account of both the reuse of data and the parallelism between instructions. This paper describes a heuristic algorithm for deciding the number of times and the directions in which loops should be unrolled, through the use of information such as dependence, reuse, and machine resources. Our method is evaluated by applying benchmark tests.

Original languageEnglish
Pages376-382
Number of pages7
DOIs
Publication statusPublished - 1997 Jan 1
Event3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997 - Taipei, Taiwan, Province of China
Duration: 1997 Dec 181997 Dec 20

Conference

Conference3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997
CountryTaiwan, Province of China
CityTaipei
Period97/12/1897/12/20

Fingerprint

Heuristic algorithms
Processing

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Hardware and Architecture
  • Safety, Risk, Reliability and Quality

Cite this

Koseki, A., Komastu, H., & Fukazawa, Y. (1997). A method for estimating optimal unrolling times for nested loops. 376-382. Paper presented at 3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997, Taipei, Taiwan, Province of China. https://doi.org/10.1109/ISPAN.1997.645123

A method for estimating optimal unrolling times for nested loops. / Koseki, A.; Komastu, H.; Fukazawa, Yoshiaki.

1997. 376-382 Paper presented at 3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997, Taipei, Taiwan, Province of China.

Research output: Contribution to conferencePaper

Koseki, A, Komastu, H & Fukazawa, Y 1997, 'A method for estimating optimal unrolling times for nested loops', Paper presented at 3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997, Taipei, Taiwan, Province of China, 97/12/18 - 97/12/20 pp. 376-382. https://doi.org/10.1109/ISPAN.1997.645123
Koseki A, Komastu H, Fukazawa Y. A method for estimating optimal unrolling times for nested loops. 1997. Paper presented at 3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997, Taipei, Taiwan, Province of China. https://doi.org/10.1109/ISPAN.1997.645123
Koseki, A. ; Komastu, H. ; Fukazawa, Yoshiaki. / A method for estimating optimal unrolling times for nested loops. Paper presented at 3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997, Taipei, Taiwan, Province of China.7 p.
@conference{ad89c6935eb844a294b72cfe66d2020e,
title = "A method for estimating optimal unrolling times for nested loops",
abstract = "Loop unrolling is one of the most promising parallelization techniques, because the nature of programs causes most of the processing time to be spent in their loops. Unrolling not only the innermost loop but also outer loops greatly expands the scope for reusing data and parallelizing instructions. Nested-loop unrolling is therefore a very effective way of obtaining a higher degree of parallelism. However, we need a method for measuring the efficiency of loop unrolling that takes account of both the reuse of data and the parallelism between instructions. This paper describes a heuristic algorithm for deciding the number of times and the directions in which loops should be unrolled, through the use of information such as dependence, reuse, and machine resources. Our method is evaluated by applying benchmark tests.",
author = "A. Koseki and H. Komastu and Yoshiaki Fukazawa",
year = "1997",
month = "1",
day = "1",
doi = "10.1109/ISPAN.1997.645123",
language = "English",
pages = "376--382",
note = "3rd International Symposium on Parallel Architectures, Algorithms, and Networks, I-SPAN 1997 ; Conference date: 18-12-1997 Through 20-12-1997",

}

TY - CONF

T1 - A method for estimating optimal unrolling times for nested loops

AU - Koseki, A.

AU - Komastu, H.

AU - Fukazawa, Yoshiaki

PY - 1997/1/1

Y1 - 1997/1/1

N2 - Loop unrolling is one of the most promising parallelization techniques, because the nature of programs causes most of the processing time to be spent in their loops. Unrolling not only the innermost loop but also outer loops greatly expands the scope for reusing data and parallelizing instructions. Nested-loop unrolling is therefore a very effective way of obtaining a higher degree of parallelism. However, we need a method for measuring the efficiency of loop unrolling that takes account of both the reuse of data and the parallelism between instructions. This paper describes a heuristic algorithm for deciding the number of times and the directions in which loops should be unrolled, through the use of information such as dependence, reuse, and machine resources. Our method is evaluated by applying benchmark tests.

AB - Loop unrolling is one of the most promising parallelization techniques, because the nature of programs causes most of the processing time to be spent in their loops. Unrolling not only the innermost loop but also outer loops greatly expands the scope for reusing data and parallelizing instructions. Nested-loop unrolling is therefore a very effective way of obtaining a higher degree of parallelism. However, we need a method for measuring the efficiency of loop unrolling that takes account of both the reuse of data and the parallelism between instructions. This paper describes a heuristic algorithm for deciding the number of times and the directions in which loops should be unrolled, through the use of information such as dependence, reuse, and machine resources. Our method is evaluated by applying benchmark tests.

UR - http://www.scopus.com/inward/record.url?scp=34548327881&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=34548327881&partnerID=8YFLogxK

U2 - 10.1109/ISPAN.1997.645123

DO - 10.1109/ISPAN.1997.645123

M3 - Paper

AN - SCOPUS:34548327881

SP - 376

EP - 382

ER -