-
On the mediation of program allocation in high-demand environments
Authors:
Fabiano de S. Oliveira,
Valmir C. Barbosa
Abstract:
In this paper we challenge the widely accepted premise that, in order to carry out a distributed computation, say on the cloud, users have to inform, along with all the inputs that the algorithm in use requires, the number of processors to be used. We discuss the complicated nature of deciding the value of such parameter, should it be chosen optimally, and propose the alternative scenario in which…
▽ More
In this paper we challenge the widely accepted premise that, in order to carry out a distributed computation, say on the cloud, users have to inform, along with all the inputs that the algorithm in use requires, the number of processors to be used. We discuss the complicated nature of deciding the value of such parameter, should it be chosen optimally, and propose the alternative scenario in which this choice is passed on to the server side for automatic determination. We show that the allocation problem arising from this alternative is NP-hard only weakly, being therefore solvable in pseudo-polynomial time. In our proposal, one key component on which the automatic determination of the number of processors is based is the cost model. The one we use, which is being increasingly adopted in the wake of the cloud-computing movement, posits that each single execution of a program is to be subject to current circumstances on both user and server side, and as such be priced independently of all others. Running through our proposal is thus a critique of the established common sense that sizing a set of processors to handle a submission to some provider is entirely up to the user.
△ Less
Submitted 20 September, 2019; v1 submitted 27 April, 2016;
originally announced April 2016.
-
Counting independent terms in big-oh notation
Authors:
Fabiano de S. Oliveira,
Valmir C. Barbosa
Abstract:
The field of computational complexity is concerned both with the intrinsic hardness of computational problems and with the efficiency of algorithms to solve them. Given such a problem, normally one designs an algorithm to solve it and sets about establishing bounds on its performance as functions of the algorithm's variables, particularly upper bounds expressed via the big-oh notation. But if we w…
▽ More
The field of computational complexity is concerned both with the intrinsic hardness of computational problems and with the efficiency of algorithms to solve them. Given such a problem, normally one designs an algorithm to solve it and sets about establishing bounds on its performance as functions of the algorithm's variables, particularly upper bounds expressed via the big-oh notation. But if we were given some inscrutable code and were asked to figure out its big-oh profile from performance data on a given set of inputs, how hard would we have to grapple with the various possibilities before zooming in on a reasonably small set of candidates? Here we show that, even if we restricted our search to upper bounds given by polynomials, the number of possibilities could be arbitrarily large for two or more variables. This is unexpected, given the available body of examples on algorithmic efficiency, and serves to illustrate the many facets of the big-oh notation, as well as its counter-intuitive twists.
△ Less
Submitted 31 December, 2015;
originally announced December 2015.
-
Revisiting deadlock prevention: a probabilistic approach
Authors:
Fabiano de S. Oliveira,
Valmir C. Barbosa
Abstract:
We revisit the deadlock-prevention problem by focusing on priority digraphs instead of the traditional wait-for digraphs. This has allowed us to formulate deadlock prevention in terms of prohibiting the occurrence of directed cycles even in the most general of wait models (the so-called AND-OR model, in which prohibiting wait-for directed cycles is generally overly restrictive). For a particular c…
▽ More
We revisit the deadlock-prevention problem by focusing on priority digraphs instead of the traditional wait-for digraphs. This has allowed us to formulate deadlock prevention in terms of prohibiting the occurrence of directed cycles even in the most general of wait models (the so-called AND-OR model, in which prohibiting wait-for directed cycles is generally overly restrictive). For a particular case in which the priority digraphs are somewhat simplified, we introduce a Las Vegas probabilistic mechanism for resource granting and analyze its key aspects in detail.
△ Less
Submitted 21 October, 2010;
originally announced October 2010.