Results 1  10
of
93
The NPcompleteness column: an ongoing guide
 Journal of Algorithms
, 1985
"... This is the nineteenth edition of a (usually) quarterly column that covers new developments in the theory of NPcompleteness. The presentation is modeled on that used by M. R. Garey and myself in our book ‘‘Computers and Intractability: A Guide to the Theory of NPCompleteness,’ ’ W. H. Freeman & Co ..."
Abstract

Cited by 188 (0 self)
 Add to MetaCart
This is the nineteenth edition of a (usually) quarterly column that covers new developments in the theory of NPcompleteness. The presentation is modeled on that used by M. R. Garey and myself in our book ‘‘Computers and Intractability: A Guide to the Theory of NPCompleteness,’ ’ W. H. Freeman & Co., New York, 1979 (hereinafter referred to as ‘‘[G&J]’’; previous columns will be referred to by their dates). A background equivalent to that provided by [G&J] is assumed, and, when appropriate, crossreferences will be given to that book and the list of problems (NPcomplete and harder) presented there. Readers who have results they would like mentioned (NPhardness, PSPACEhardness, polynomialtimesolvability, etc.) or open problems they would like publicized, should
Graph problems arising from wavelengthrouting in alloptical networks
, 1997
"... We survey the theoretical results obtained for wavelength routing in all–optical networks, present some new results and propose several open problems. In all–optical networks the vast bandwidth available is utilized through wavelength division multiplexing: a single physical optical link can carry s ..."
Abstract

Cited by 82 (23 self)
 Add to MetaCart
We survey the theoretical results obtained for wavelength routing in all–optical networks, present some new results and propose several open problems. In all–optical networks the vast bandwidth available is utilized through wavelength division multiplexing: a single physical optical link can carry several logical signals, provided that they are transmitted on different wavelengths. The information, once transmitted as light, reaches its destination without being converted to electronic form in between, thus reaching high data transmission rates. We consider both networks with arbitrary topologies and particular networks of practical interest.
Multiwavelength Optical Networks with Limited Wavelength Conversion
, 1997
"... This paper proposes optical wavelength division multiplexed (WDM) networks with limited wavelength conversion that can efficiently support lightpaths (connections) between nodes. Each lightpath follows a route in the network and must be assigned a channel along each link in its route. The load m ..."
Abstract

Cited by 72 (3 self)
 Add to MetaCart
This paper proposes optical wavelength division multiplexed (WDM) networks with limited wavelength conversion that can efficiently support lightpaths (connections) between nodes. Each lightpath follows a route in the network and must be assigned a channel along each link in its route. The load max of a set of lightpath requests is the maximum over all links of the number of lightpaths that use the link. At least max wavelengths will be needed to assign channels to the lightpaths. If the network has full wavelength conversion capabilities then max wavelengths are sufficient to perform the channel assignment. We propose ring networks with fixed wavelength conversion capability within the nodes that can support all lightpath request sets with load max at most W \Gamma 1, where W is the number of wavelengths in each link. We also propose ring networks with selective pairwise wavelength conversion capability within the nodes that can support all lightpath request sets with l...
A Register Allocation Framework Based on Hierarchical Cyclic Interval Graphs
 In International Workshop on Compiler Construction, Paderdorn
, 1993
"... In this paper, we propose the use of cyclic interval graphs as an alternative representation for register allocation. The "thickness" of the cyclic interval graph captures the notion of overlap between live ranges of variables relative to each particular point of time in the program execution. We de ..."
Abstract

Cited by 56 (12 self)
 Add to MetaCart
In this paper, we propose the use of cyclic interval graphs as an alternative representation for register allocation. The "thickness" of the cyclic interval graph captures the notion of overlap between live ranges of variables relative to each particular point of time in the program execution. We demonstrate that cyclic interval graphs provide a feasible and effective representation that accurately captures the periodic nature of live ranges found in loops. A new heuristic algorithm for minimum register allocation, the fat cover algorithm, has been developed and implemented to exploit such program structure. In addition, a new spilling algorithm is proposed that makes use of the extra information available in the interval graph representation. These two algorithms work together to provide a twophase register allocation process that does not require iteration of the spilling or coloring phases. We extend the notion of cyclic interval graphs to hierarchical cyclic interval graphs and we...
Structured Programs have Small TreeWidth and Good Register Allocation
 Information and Computation
, 1995
"... The register allocation problem for an imperative program is often modelled as the coloring problem of the interference graph of the controlflow graph of the program. The interference graph of a flow graph G is the intersection graph of some connected subgraphs of G. These connected subgraphs repre ..."
Abstract

Cited by 53 (1 self)
 Add to MetaCart
The register allocation problem for an imperative program is often modelled as the coloring problem of the interference graph of the controlflow graph of the program. The interference graph of a flow graph G is the intersection graph of some connected subgraphs of G. These connected subgraphs represent the lives, or life times, of variables, so the coloring problem models that two variables with overlapping life times should be in different registers. For general programs with unrestricted gotos, the interference graph can be any graph, and hence we cannot in general color within a factor O(n " ) from optimality unless NP=P. It is shown that if a graph has treewidth k, we can efficiently color any intersection graph of connected subgraphs within a factor (bk=2c + 1) from optimality. Moreover, it is shown that structured (j gotofree) programs, including, for example, short circuit evaluations and multiple exits from loops, have treewidth at most 6. Thus, for every structured progr...
Scheduling of Virtual Connections in Fast Networks
 In Proc. of Parallel Systems and Algorithms (PASA
, 1996
"... this paper, we assume that all call requests are available at time 0 and do not have to be completed by a certain deadline. There is no precedence relation among the calls. We consider the offline version of the problem, where call durations are known in advance. In section 2 and 3 we restrict our ..."
Abstract

Cited by 51 (6 self)
 Add to MetaCart
this paper, we assume that all call requests are available at time 0 and do not have to be completed by a certain deadline. There is no precedence relation among the calls. We consider the offline version of the problem, where call durations are known in advance. In section 2 and 3 we restrict our attention to the case that all edges have unit capacity, all calls require unit bandwidth, and all call durations are the same (unit duration). In section 4 we present some results for the more general setting of arbitrary call durations and arbitrary bandwidth requirements.
The Meeting Graph: A New Model for Loop Cyclic Register Allocation
 In Proc. of the Fifth Workshop on Compilers for Parallel Computers (CPC95
, 1995
"... Register allocation is a compiler phase in which the gains can be essential in achieving performance on new architectures exploiting instruction level parallelism. We focus our attention on loops and improve the existing methods by introducing a new kind of graph. We model loop unrolling and registe ..."
Abstract

Cited by 31 (11 self)
 Add to MetaCart
Register allocation is a compiler phase in which the gains can be essential in achieving performance on new architectures exploiting instruction level parallelism. We focus our attention on loops and improve the existing methods by introducing a new kind of graph. We model loop unrolling and register allocation together in a common framework, called the meeting graph. We expect our results to significantly improve loop register allocation while keeping the amount of code replication low. As a byproduct, we present an optimal algorithm for allocating loop variables to a rotating register file, as well as a new heuristic for loop variables spilling. 1 Introduction The efficiency of register allocation is a crucial problem in modern microprocessors, where the increasing gap between the internal clock cycle and memory latency exacerbates the need to keep the variables in registers and to avoid spill code. In this paper, we address the important problem of loop register allocation and spi...
On Linear Layouts of Graphs
, 2004
"... In a total order of the vertices of a graph, two edges with no endpoint in common can be crossing, nested, or disjoint. A kstack (resp... ..."
Abstract

Cited by 31 (19 self)
 Add to MetaCart
In a total order of the vertices of a graph, two edges with no endpoint in common can be crossing, nested, or disjoint. A kstack (resp...
Wavelength assignment and generalized interval graph coloring
 In Proceedings of the 14th Annual ACMSIAM Symposium on Discrete Algorithms
, 2003
"... Abstract In this paper we study wavelength assignment on an optical linesystem without wavelength conversion. Consider a set of undirected demands along the line. Each demand is carried on a wavelength and any two overlapping demands require distinct wavelengths. Suppose _ wavelengths are available ..."
Abstract

Cited by 26 (4 self)
 Add to MetaCart
Abstract In this paper we study wavelength assignment on an optical linesystem without wavelength conversion. Consider a set of undirected demands along the line. Each demand is carried on a wavelength and any two overlapping demands require distinct wavelengths. Suppose _ wavelengths are available in the system. We define `(e), the load on link e, to be the smallest integer such that `(e) _ is at least the number of demands passing through e. Hence, `(e) is the minimum number of fibers required on e in order to support all demands. We present a polynomialtime wavelength assignment algorithm that guarantees each wavelength appears at most `(e) times on each link e. (This generalizes the wellknown fact that interval graphs are perfect.) In the presence of MOADMs (mesh optical add/drop multiplexers), devices that multiplex distinct wavelengths from different fibers into a new fiber, we only need to deploy `(e) fibers per link. On the other hand, if each demand has to stay on a single fiber, as is the case without MOADMs, we show that some links may require more than `(e) fibers. In fact, we show that it is NPcomplete to decide if a set of demands can be carried on a given set of fibers, or if there exists a set of fibers with a given total length that can carry all the demands.