Evaluating address register assignment and offset assignment algorithms

In digital signal processors (DSPs), variables are accessed using k address registers. The problem of finding a memory layout, for a set of variables, that minimizes the address-computation overhead is known as the General Offset Assignment (GOA) problem. The most common approach to this problem is...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on embedded computing systems 2011-04, Vol.10 (3), p.1-22
Hauptverfasser: Huynh, Johnny, Amaral, José Nelson, Berube, Paul, Touati, Sid-Ahmed-Ali
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 22
container_issue 3
container_start_page 1
container_title ACM transactions on embedded computing systems
container_volume 10
creator Huynh, Johnny
Amaral, José Nelson
Berube, Paul
Touati, Sid-Ahmed-Ali
description In digital signal processors (DSPs), variables are accessed using k address registers. The problem of finding a memory layout, for a set of variables, that minimizes the address-computation overhead is known as the General Offset Assignment (GOA) problem. The most common approach to this problem is to partition the set of variables into k partitions and to assign each partition to an address register. Thus, effectively decomposing the GOA problem into several Simple Offset Assignment (SOA) problems. Many heuristic-based algorithms are proposed in the literature to approximate solutions to both the variable partitioning and the SOA problems. However, the address-computation overhead of the resulting memory layouts are not accurately evaluated. This article presents an evaluation of memory layouts that uses Gebotys' optimal address-code generation technique. The use of this evaluation method leads to a new optimization problem: the Memory Layout Permutation (MLP) problem. We then use Gebotys' technique and an exhaustive solution to the MLP problem to evaluate heuristic-based offset-assignment algorithms. The memory layouts produced by each algorithm are compared against each other and against the optimal layouts. The results show that even in small access sequences with 12 variables or less, current heuristics may produce memory layouts with address-computation overheads up to two times higher than the overhead of an optimal layout.
doi_str_mv 10.1145/1952522.1952530
format Article
fullrecord <record><control><sourceid>proquest_hal_p</sourceid><recordid>TN_cdi_hal_primary_oai_HAL_inria_00635915v1</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>901667123</sourcerecordid><originalsourceid>FETCH-LOGICAL-c304t-2eae0c900e16224caf8b8d18e1f36fdd191c481c8ed418c232aadce2e1d8cb873</originalsourceid><addsrcrecordid>eNpVkE1LAzEURYMoWKtrt7NzIdPmJZOZzLKU2goFN7oOr8mbaWQ-ajIt-O9tbRFc3cvlcBeHsUfgE4BMTaFUQgkx-U3Jr9gIlNKpzHJ1feqyTEuui1t2F-Mn51CITI3YcnHAZo-D7-oEnQsUYxKo9nGgkGCMvu5a6oYEO5f0VRVp-Lc2dR_8sG3jPbupsIn0cMkx-3hZvM9X6fpt-TqfrVMreTakgpC4LTknyIXILFZ6ox1ogkrmlXNQgs00WE0uA22FFIjOkiBw2m50Icfs-fy7xcbsgm8xfJsevVnN1sZ3waPhPJeqBHWAI_10pneh_9pTHEzro6WmwY76fTQlhzwvQMgjOT2TNvQxBqr-zoGbk19z8WsufuUPUrFt6g</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>901667123</pqid></control><display><type>article</type><title>Evaluating address register assignment and offset assignment algorithms</title><source>ACM Digital Library Complete</source><creator>Huynh, Johnny ; Amaral, José Nelson ; Berube, Paul ; Touati, Sid-Ahmed-Ali</creator><creatorcontrib>Huynh, Johnny ; Amaral, José Nelson ; Berube, Paul ; Touati, Sid-Ahmed-Ali</creatorcontrib><description>In digital signal processors (DSPs), variables are accessed using k address registers. The problem of finding a memory layout, for a set of variables, that minimizes the address-computation overhead is known as the General Offset Assignment (GOA) problem. The most common approach to this problem is to partition the set of variables into k partitions and to assign each partition to an address register. Thus, effectively decomposing the GOA problem into several Simple Offset Assignment (SOA) problems. Many heuristic-based algorithms are proposed in the literature to approximate solutions to both the variable partitioning and the SOA problems. However, the address-computation overhead of the resulting memory layouts are not accurately evaluated. This article presents an evaluation of memory layouts that uses Gebotys' optimal address-code generation technique. The use of this evaluation method leads to a new optimization problem: the Memory Layout Permutation (MLP) problem. We then use Gebotys' technique and an exhaustive solution to the MLP problem to evaluate heuristic-based offset-assignment algorithms. The memory layouts produced by each algorithm are compared against each other and against the optimal layouts. The results show that even in small access sequences with 12 variables or less, current heuristics may produce memory layouts with address-computation overheads up to two times higher than the overhead of an optimal layout.</description><identifier>ISSN: 1539-9087</identifier><identifier>EISSN: 1558-3465</identifier><identifier>DOI: 10.1145/1952522.1952530</identifier><language>eng</language><publisher>ACM</publisher><subject>Algorithms ; Computer Science ; Heuristic methods ; Mathematical analysis ; Mathematical models ; Offsets ; Optimization ; Partitions ; Programming Languages ; Registers</subject><ispartof>ACM transactions on embedded computing systems, 2011-04, Vol.10 (3), p.1-22</ispartof><rights>Distributed under a Creative Commons Attribution 4.0 International License</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c304t-2eae0c900e16224caf8b8d18e1f36fdd191c481c8ed418c232aadce2e1d8cb873</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>230,314,776,780,881,27903,27904</link.rule.ids><backlink>$$Uhttps://inria.hal.science/inria-00635915$$DView record in HAL$$Hfree_for_read</backlink></links><search><creatorcontrib>Huynh, Johnny</creatorcontrib><creatorcontrib>Amaral, José Nelson</creatorcontrib><creatorcontrib>Berube, Paul</creatorcontrib><creatorcontrib>Touati, Sid-Ahmed-Ali</creatorcontrib><title>Evaluating address register assignment and offset assignment algorithms</title><title>ACM transactions on embedded computing systems</title><description>In digital signal processors (DSPs), variables are accessed using k address registers. The problem of finding a memory layout, for a set of variables, that minimizes the address-computation overhead is known as the General Offset Assignment (GOA) problem. The most common approach to this problem is to partition the set of variables into k partitions and to assign each partition to an address register. Thus, effectively decomposing the GOA problem into several Simple Offset Assignment (SOA) problems. Many heuristic-based algorithms are proposed in the literature to approximate solutions to both the variable partitioning and the SOA problems. However, the address-computation overhead of the resulting memory layouts are not accurately evaluated. This article presents an evaluation of memory layouts that uses Gebotys' optimal address-code generation technique. The use of this evaluation method leads to a new optimization problem: the Memory Layout Permutation (MLP) problem. We then use Gebotys' technique and an exhaustive solution to the MLP problem to evaluate heuristic-based offset-assignment algorithms. The memory layouts produced by each algorithm are compared against each other and against the optimal layouts. The results show that even in small access sequences with 12 variables or less, current heuristics may produce memory layouts with address-computation overheads up to two times higher than the overhead of an optimal layout.</description><subject>Algorithms</subject><subject>Computer Science</subject><subject>Heuristic methods</subject><subject>Mathematical analysis</subject><subject>Mathematical models</subject><subject>Offsets</subject><subject>Optimization</subject><subject>Partitions</subject><subject>Programming Languages</subject><subject>Registers</subject><issn>1539-9087</issn><issn>1558-3465</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2011</creationdate><recordtype>article</recordtype><recordid>eNpVkE1LAzEURYMoWKtrt7NzIdPmJZOZzLKU2goFN7oOr8mbaWQ-ajIt-O9tbRFc3cvlcBeHsUfgE4BMTaFUQgkx-U3Jr9gIlNKpzHJ1feqyTEuui1t2F-Mn51CITI3YcnHAZo-D7-oEnQsUYxKo9nGgkGCMvu5a6oYEO5f0VRVp-Lc2dR_8sG3jPbupsIn0cMkx-3hZvM9X6fpt-TqfrVMreTakgpC4LTknyIXILFZ6ox1ogkrmlXNQgs00WE0uA22FFIjOkiBw2m50Icfs-fy7xcbsgm8xfJsevVnN1sZ3waPhPJeqBHWAI_10pneh_9pTHEzro6WmwY76fTQlhzwvQMgjOT2TNvQxBqr-zoGbk19z8WsufuUPUrFt6g</recordid><startdate>201104</startdate><enddate>201104</enddate><creator>Huynh, Johnny</creator><creator>Amaral, José Nelson</creator><creator>Berube, Paul</creator><creator>Touati, Sid-Ahmed-Ali</creator><general>ACM</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>1XC</scope><scope>VOOES</scope></search><sort><creationdate>201104</creationdate><title>Evaluating address register assignment and offset assignment algorithms</title><author>Huynh, Johnny ; Amaral, José Nelson ; Berube, Paul ; Touati, Sid-Ahmed-Ali</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c304t-2eae0c900e16224caf8b8d18e1f36fdd191c481c8ed418c232aadce2e1d8cb873</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2011</creationdate><topic>Algorithms</topic><topic>Computer Science</topic><topic>Heuristic methods</topic><topic>Mathematical analysis</topic><topic>Mathematical models</topic><topic>Offsets</topic><topic>Optimization</topic><topic>Partitions</topic><topic>Programming Languages</topic><topic>Registers</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Huynh, Johnny</creatorcontrib><creatorcontrib>Amaral, José Nelson</creatorcontrib><creatorcontrib>Berube, Paul</creatorcontrib><creatorcontrib>Touati, Sid-Ahmed-Ali</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><collection>Hyper Article en Ligne (HAL)</collection><collection>Hyper Article en Ligne (HAL) (Open Access)</collection><jtitle>ACM transactions on embedded computing systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Huynh, Johnny</au><au>Amaral, José Nelson</au><au>Berube, Paul</au><au>Touati, Sid-Ahmed-Ali</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Evaluating address register assignment and offset assignment algorithms</atitle><jtitle>ACM transactions on embedded computing systems</jtitle><date>2011-04</date><risdate>2011</risdate><volume>10</volume><issue>3</issue><spage>1</spage><epage>22</epage><pages>1-22</pages><issn>1539-9087</issn><eissn>1558-3465</eissn><abstract>In digital signal processors (DSPs), variables are accessed using k address registers. The problem of finding a memory layout, for a set of variables, that minimizes the address-computation overhead is known as the General Offset Assignment (GOA) problem. The most common approach to this problem is to partition the set of variables into k partitions and to assign each partition to an address register. Thus, effectively decomposing the GOA problem into several Simple Offset Assignment (SOA) problems. Many heuristic-based algorithms are proposed in the literature to approximate solutions to both the variable partitioning and the SOA problems. However, the address-computation overhead of the resulting memory layouts are not accurately evaluated. This article presents an evaluation of memory layouts that uses Gebotys' optimal address-code generation technique. The use of this evaluation method leads to a new optimization problem: the Memory Layout Permutation (MLP) problem. We then use Gebotys' technique and an exhaustive solution to the MLP problem to evaluate heuristic-based offset-assignment algorithms. The memory layouts produced by each algorithm are compared against each other and against the optimal layouts. The results show that even in small access sequences with 12 variables or less, current heuristics may produce memory layouts with address-computation overheads up to two times higher than the overhead of an optimal layout.</abstract><pub>ACM</pub><doi>10.1145/1952522.1952530</doi><tpages>22</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 1539-9087
ispartof ACM transactions on embedded computing systems, 2011-04, Vol.10 (3), p.1-22
issn 1539-9087
1558-3465
language eng
recordid cdi_hal_primary_oai_HAL_inria_00635915v1
source ACM Digital Library Complete
subjects Algorithms
Computer Science
Heuristic methods
Mathematical analysis
Mathematical models
Offsets
Optimization
Partitions
Programming Languages
Registers
title Evaluating address register assignment and offset assignment algorithms
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-23T11%3A15%3A34IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_hal_p&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Evaluating%20address%20register%20assignment%20and%20offset%20assignment%20algorithms&rft.jtitle=ACM%20transactions%20on%20embedded%20computing%20systems&rft.au=Huynh,%20Johnny&rft.date=2011-04&rft.volume=10&rft.issue=3&rft.spage=1&rft.epage=22&rft.pages=1-22&rft.issn=1539-9087&rft.eissn=1558-3465&rft_id=info:doi/10.1145/1952522.1952530&rft_dat=%3Cproquest_hal_p%3E901667123%3C/proquest_hal_p%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=901667123&rft_id=info:pmid/&rfr_iscdi=true