scispace - formally typeset
Search or ask a question

Showing papers by "Ravi Sethi published in 1977"


Journal ArticleDOI
TL;DR: A level algorithm is given that constructs optimal preemptive schedules on identical processors when the task system is a tree or when there are only two processors available, and an upper bound on its performance is derived in terms of the speeds of the processors.
Abstract: Muntz and Coffman give a level algorithm that constructs optimal preemptive schedules on identical processors when the task system is a tree or when there are only two processors available. Their algorithm is adapted here to handle processors of different speeds. The new algorithm is optimal for independent tasks on any number of processors and for arbitrary task systems on two processors, but not on three or more processors, even for trees. By taking the algorithm as a heuristic on m processors and using the ratio of the lengths of the constructed and optimal schedules as a measure, an upper bound on its performance is derived in terms of the speeds of the processors. It is further shown that 1.23√m is an upper bound over all possible processor speeds and that the 1.23√m bound can be improved at most by a constant factor, by giving an example of a system for which the bound 0.35√m can be approached asymptotically.

150 citations


Journal ArticleDOI
TL;DR: It is shown that the ratio of the lengths of their algorithm and an optimal schedule is bounded by $2 - 2/m$ and in both the nonpreemptive and the preemptive cases there exist task systems for which the ratio can be approached arbitrarily closely.
Abstract: Coffman and Graham give an algorithm to schedule unit execution time task systems nonpreemptively. On two processors, their algorithm is optimal. We show that in general, if $\omega$ is the length of a schedule produced by their algorithm and $\omega_0$ the length of an optimal schedule, then $\omega / \omega_{0} \leqq 2 - 2/m$, where m is the number of processors. The preemptive equivalent of the above algorithm has been considered by Muntz and Coffman. Again we show that the ratio of the lengths of theirs and an optimal schedule is bounded by $2 - 2/m$. In both the nonpreemptive and the preemptive cases there exist task systems for which the ratio $2 - 2/m$ can be approached arbitrarily closely. On a small number of machines, $2 - 2/m$ is not too far from 1. In particular, as noted above, on two machines the ratio is 1.

91 citations


Journal ArticleDOI
TL;DR: It is shown that determining minimal size tries is an NP-complete problem for several variants of tries and that, for tries m which leaf chains are deleted, determining the trie for which average access time is minimal is also an NP -complete problem.
Abstract: Trle structures are a convenient way of indexing files in which a key consists of a number of attributes Records correspond to leaves in the trle Retrieval proceeds by following a path from the root to a leaf, the choice of edges being determined by attribute values The size of a trle for a file depends on the order in which attributes are tested It is shown that determining minimal size tries IS an NP-complete problem for several variants of tries and that, for tries m which leaf chains are deleted, determining the trie for which average access time is minimal is also an NP-complete problem These results hold even for files in which attribute values are chosen from a binary or ternary alphabet KE] WORDS AND PHRASES reformation retrieval, trle indexes, trte size, average search t i m e , complexity CR CATEGORIES 3 74, 4 33, 5 25

59 citations


Journal ArticleDOI
Ravi Sethi1
TL;DR: It is shown that on two or more machines, the problem is NP-complete even if the precedence constraints are tree-like, and this work proves the result both for in-trees in which the root is the last task to be processed, and out-Trees inWhich theroot is the first task to being processed.
Abstract: There are n tasks lo be scheduled for processing on a set of identical parallel machines We are interested in minimizing the mean flow time, which is related to the sum of the finishing times of all tasks When tasks can be processed in any order, optimal schedules can be constructed in On log n time on any number of identical machines With arbitrary precedence constraints the problem becomes NP-complete even on one machine However, for series-parallel precedence constraints an On log n algorithm is known for one machine We show that on two or more machines, the problem is NP-complete even if the precedence constraints are tree-like We prove the result both for in-trees in which the root is the last task to be processed, and out-trees in which the root is the first task to be processed

45 citations


Book ChapterDOI
Alfred V. Aho1, Ravi Sethi1
18 Jul 1977
TL;DR: A number of theoretical results have been obtained which suggest how well and how extensively code generation can be automated and discusses the problems that still remain to be solved.
Abstract: Over the past two decades great strides have been made in understanding how to design lexical and syntactic analyzers for programming-language compilers. Theory and practice have proceeded to the point where usable lexical and syntactic analyzers can be generated automatically from notations based on regular expressions and context-free grammars [Aho and Ullman (1977), Johnson (1975), Lesk (1975)]. Unfortunately, our understanding of code generation has not kept pace with the developments in the syntactic domain. Recently, however, a number of theoretical results have been obtained which suggest how well and how extensively code generation can be automated. This paper summarizes these results and discusses the problems that still remain to be solved.

5 citations