H IWn^ i lffiBft&frK^fr * 'i V Y/rfU' i Yu'&i'i'h *, + &ic HRX LIBRARY OF THE UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAIGN 510.84 llbr no.630-82>5> asp. 2/ A' r. i Q :> Ik -UIUCDCS-R-77-835 > CfipZ. UILU-ENG 77 1720 PERFORMANCE ANALYSIS OF MULTIPROCESSOR SYSTEMS CONTAINING FUNCTIONAL DEDICATED PROCESSORS by Jane W. S. Liu and Chung L. Liu May 1977 ia Library DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAIGN URBANA, ILLINOIS K. % UIUCDCS-R-77-835 PERFORMANCE ANALYSIS OF MULTIPROCESSOR SYSTEMS CONTAINING FUNCTIONAL DEDICATED PROCESSORS by Jane W. S. Liu Chung L. Liu May 1977 Department of Computer Science University of Illinois at Urbana-Champaign Urbana, Illinois 61801 This work was supported by the National Science Foundation under Grant NSFDCR 72-03740 NSFMCS 73-03408. I ii I . INTRODUCTION In previous works on job scheduling, a multiprocessor system was modeled as one containing functionally identical processors. A task in a given set of tasks can be assigned to any one of the processors in the system. The time required to complete a task may depend only on the execution time of the task in the case where all processors are identical or may also depend on the speed of the processor on which the task is being processed in the case where processors have different speeds. For such multiprocessor systems, efficient algorithms which yield schedules with minimum completion time or mean flow times have been found for some special cases [1-5]. Worst case performance bounds of many heuristic suboptimal scheduling algorithms have also been obtained [6-8]. In this report, we introduce two general models of multiprocessor systems containing different types of processors. A task can be assigned only to a processor of certain types. We described in Section II a model corresponding to systems in which processors are functionally dedicated [91. That is, a task can be executed only on a particular type of processors. (For example, some processors are front end processors for I/O functions, some processors are to perform program compilation, some processors are designed specially for merging/sorting operations, and other are designed for extensive numerical calculations.) Clearly, the model of multiprocessor systems with identical processors is a special case of our model. This model also includes the job shop problem in which there is exactly one processor of each type. In Section III, a more general model is presented. In this general model, each type of functionally dedicated processors is further I divided into subtypes with a partial ordering relation defined over the processor subtypes. Thus, multiprocessor systems in which some pro- cessors are functionally identical but have dedicated memories of differ- ent sizes can be modeled. r K :: ;> 'i i f\ Q :: ;> > > II. MULTIPROCESSOR SYSTEMS WITH FUNCTIONALLY DEDICATED PROCESSORS Consider a model of a multiprocessor system in which there are r different types of functionally dedicated processors. We assume in this section that processors of the same type are identical. We shall refer to these r types of processors as type 1, type 2, ... , type r pro- cessors. A multiprocessor system with m type 1 processors, m type 2 processors, ... , and m type r processors can be represented by the r ordered r-tuple P = (m, , m„ , ... , m ). We let m = 2 m.. 12 r . , j 3=1 Let T = {T n , T., ... , T } be a set of tasks to be executed on 12 n a system P. A task T. is said to be a type j task if it can only be executed on a type j processor. Formally, we define a function A from T to the set {1, 2, ... , r} such that A(T.) is the type of task T.. We denote the time required to complete a task T. (on a type j processor) by u(T.) where u is a function from T to the reals. u(T.) shall be referred to as the execution time of T.. l We suppose that there is a precedence relation < defined over the set T. That T. precedes T. (or T. follows T.) is written as T. < T. i 3 1 i i J and means that the execution of T. cannot begin before the execution of T. J i is completed. A task is said to be executable at a certain time if the tasks preceding it have been completed. Formally, a set of tasks are represented by ordered quadruple (T, A, u, <) . We shall also use the notation (T., A(T.), u(T.)) to represent to a particular task T. . We can depict a set of Tasks (T, A, y, <) graphically as il- lustrated by the example in Figure 1, where T , T~, and T,. are type 1 tasks with execution time 3, 4 and 2, respectively. T„ and T, are type 2 tasks with execution time 4 and 2, respectively. We want to determine the performance of a class of scheduling algorithms in which processors are never left idle intentionally. These algorithms are known as priority driven scheduling algorithms and can be I t: :; ! : > ! > >■ la 18 (T r 1, 3) (T 2 , 1, 4) (T 4 , 2, 2) (T 3 , 2, 4) (T 5 , 1, 2) Figure 1. An example of a Set of Tasks (T, A, u, <) . described by the priorities assigned to the tasks. At any moment when a type i processor is free, the task that has the highest priority among all executable type i tasks is scheduled. For example, for the set of tasks in Figure 2(a), the schedule in Figure 2 (b) is obtained according to the priority list (T. , T , T„, T. , T c , T , , T.., T , T n ) in which tasks appear in decreasing priorities. Schedules produced by priority driven scheduling algorithms are known as priority driven schedules. Let a) and to' denote the completion times of a set of tasks (T, A, u, <) when executed on a system P = (m , m , ... , m ) according to a priority-driven schedule and an arbitrary schedule, respectively. We have Theorem 1 - ,< 1 + r or — min/ 1 \ (1) Moreover, the bound is the best possible. Proof : Let t. denote the sum of the execution times of all type j tasks in (T, A, u, <) . (For example, for the set of tasks in Figure 2, t, = 5 -j and t„ = 3-^-). Let (b(n n , n„ , ... , n ) denote the sum of idle times in 2 2 1 2 r all processors during which there are n idle processors of type 1, n~ idle processors of type 2, ... , and n idle processors of type r in a priority-driven schedule. (In the example shown in Figure 2, 4>(1,0) =1, ((.(2,0) =| + |=1, (j>(l,l) =2 + 2 = 4, (0,1) = 0, and (2,l) = 0.) Clearly, the total idle time, $, is given by m„ m. m = 2 2 n^O n 2 =0 2 4)(n 1 , n 2 , ... , n r ) n =0 r (2) with (fi (m , m , ... , m ) = 0. The completion time of the priority- Note that (m , m . m ) = in a priority-driven schedule, V. (T^ 1,1) (T 2 , 1.1) (T 3 , 2,1) (T 6 ,l,f) (T ? ,l,|) (T Q ,2,1) (T 9 ,2,f) (T 4 , 1,1) (T 5 ,l,l) :; ji :: Type 1 T l T 2 ////////A 1 T 4 T 5 1 1 ////////A 1 1 'J :> Type 1 T 6 T 7 V/////////////A 3 2 3 2 Y/////////////A Type 2 Figure 2. Example of a priority driven schedule on a multiprocessor system con- taining different types of processors. driven schedule to is given by a) = - ( 2 t.+ *) m j=l * (3) To find an upper bound to the total idle time, $, let us examine the terms m, m. I = s n =1 n =1 m n =1 r ((>(n 1 , n 2 , • n ) r in the sum in Eq . (2) . During the time periods corresponding to the terms in the sum I, there is at least one idle processor among the pro- cessors of each type. Therefore, there is a chain of tasks in T that is executed sequentially during these idle periods, and must be executed sequentially in any schedule. Thus, we conclude that I £ (m-l)oj' (4) since no schedule can have a completion time oj' less than the length of this chain. Let K. denote the sum of lengths of idle periods during which all type j processors are busy. We have ra-m. K. < '- J - m I m.-n . _J 1 l ! 8 r m-m. . m-m. v -\ I rain i — . n m. i m-l l T , , , N „^ . Their execution times are 1, (m 1 (m 1 -l)+2) M(T U ) - e u(T..)=- i = 2, 3,... ,m (m -1) + 1 li m n J- - 1 - There are m. + 1 type j tasks for j = 2, 3, . . . , r which we shall denote as V V • ' T j,(.yi) for J = 2 - 3 ' and r. Their execution times are u(T j£ ) =1 j = 2, 3, ... , I = 1, 2, ... , m. y(T j,(m.+l) )=£ J = 2, 3, ... , r J Furthermore, the precedence relation is as shown in Figure 3a. The priority schedule in Figure 3b is obtained according to the priority list T 12' T 13' '•• ' T U(m 1 (m 1 -l)+l)» T ll» T 21' T 22 "• T 2,(m 2 +1) ' T 31' T 32' T r,(m r +1)' T l,(m 1 (m 1 -l)+2)/ It's complete time is m -1 a) = r -\ 1- re m„ while the completion time of the schedule shown in Figure 3c is u) 1 = 1 + re Hence, the bound in Eq. (1) is achieved for very small e When the processors in the system are all identical, r The result in Theorem 1 reduces to the well-known result [6]: Corollary 1 : For a system containing m identical processors ^< 2-i 0)' — m On the other hand, for a job shop problem, m.. = m_ = . . . = m = 1 In this case, we have, Corollary 2 : For a r-processor job shop = 1 rr < r, 10 I i :: i: ! :> St '0 |; ii is ^J' v- ec^ ex e co x w 14-1 o £ a co u o -i P-i CO 0J 3 00 •H ^N> <^> \ " 11 ii To Ti,jyi[Cw r i>i T, 1 \ i \n 1 1 1 i 1 1 1 1 1 1 1 1 1 1 1 1 1 i i { i 1 1 niiuiiiiin Ti^m-O^ I | | \mmiiiiim I mil n nun < s in n ii 1 1 ii 1 1 1 1 1 1 1 ii \ \ i% fas 7m — r '////////// A J \ {i milium n iii ii mil mi i, < j 1 1 1 h 1 1 1 1 1 1 1 1 1 1 il 1 1 ^ \ lYPk I I ////// / / / / /^ /////////////////////// | -j 4 V/// ///// i 1^ |/////// ///// ^ ^/ //// J //// ////// / // // ////////| l2^U | ////////////// ( , ////////////////////// ! j / I '€ //////////// ^ Ik ^// /^/// ///////////// /// ,/]. >Tifc3 ?doc. I III I ' I III I 1 1 7 I I '1 I 1 1 // III 71 T^ | /////^//////////////////// | , ///////////////////////////////////// / ///i | |//////// # / '//////////// /////////// //////////,, //A T*Z »,/////// it '// ///////////////////////////// //ft// A > rrr) r \// /////// a TYPtf m -1 a) ■ r H + r e m« Figure 3b. Worst Case Priority-Driven Schedule. 12 I ; ii ill (3 !> >f '1 :: ;> :: /// /////// /////////////i P/?OC £550^5 T, Tit, Tji ,th 1#ocB&oR5 ///// ///// T /1 I/ // ////// A,d TVi K /////////// Tftfli a) = 1 + r e Figure 3c. Optimal Schedule, 13 III. GENERALIZATION The model of a multiprocessor system in which each processor has a dedicated memory of a certain fixed capacity was studied in [8]. In this case, the execution of a task requires a certain amount of memory space and can only take place on a processor whose memory capacity is larger than or equal to its memory requirement. Our model in Section II can be ex- tended such that every processor is characterized by its type as well as by its memory capacity. We shall, however, present a more general model. Consider a multiprocessor system consisting of processors of r different types. Each type of processors is further divided into sub- types. Thus, we shall refer to a processor as a type (j,k) processor when it is a type j processor of subtype k. A partial ordering relation < is defined over the processor types such that (i) (j,k) and (n,v) are incomparable if j ^ n. (ii) (j,k) < (j,v) means that if a task can be executed on a tyP e (j>k) processor then it can also be executed on a type (j ,v) processor. A multiprocessor system can then be represented as P = (m , m _,..., m ; ^,) ni n ,,.. M m 0(] » . . . m _ . m _. ... , m ', 4 ) where m #1 is the number of '21' "22"'" m 2V- m rl' m r2' rl jk tyP e (j>k) processors and ^ is a partial ordering relation over the processor types. We shall let m = 2 m. k=l J k m = 2 j=l m. For example, the multiprocessor system represented by the directed graph t 4. Neither (j,k) < (u,v) nor (u,v) < (j ,k) . ■L There is an edge from (j,k) to (j ,v) means (j,v) -< (j,k). t. : :; ! \ 14 /- > CN co /■-N m 0) CO a- >^ >, 1 4-1 >v a) a >> ■u /"~\ r-\ ** co s. (M >. •u /— \ iH CN ^ * " ^ >, 4-1 4J 4-) M 3 *** -»* 00 •H Pn « U O w en ^ o i- CO X w u o a co M O (1) a c -a QJ O 01 l-l CO QJ 3 60 •H CO C CO CO •H (rov^r^' 1 '^)^ ^ ( itm ir i) Jobs of k^ -~r 20 71 in,, M% ci. ») ^ i fC r < ii I! 'I n :: ;> ;> /• )V < I ff T M Tzi Tzi lj i^ T li W*".!* 1 I » T, '"lii! | /fri2i| ( j UjJ M III II 1 l"1 ,11 III 'II 1 I'l II III II II 1 1 T31 Tjt 1 1 1 1 1 T^3 1 '%, 1 1 1 %\ 6 1 II 1 1 II 1" 1 II 1 1 v_li I 1 > W3 sections r 7)0 A IC (t,i) "fci Ticn\ wi KJ 17L 5eciib\As Figure 5b. Worst Case Priority-Driven Schedule k m z m n _1 + (m-m +2) e; m i 1 >m 21 >I \l d=i ra jto) m 11 21 Yf), 1 CM) process ofts !U Tt 2. Ti 3 ^Tr) r ryi„ti ////////// c-'c- 1 ''<:- Tii- W r 0fcl m p«ocessofts L -S T?i - T3T)T1, 13 <^ (3J) processors v /■ r,,-.T» Kl- 'tcftV //////////i in •c s (id, i) ptfoceSsoRs v. £ " € T, IT T^lll lOln-l) (I J,) tft$b ^ fo^ ^ ^ ir\ t \ Igl-lgl /" ^ on 3 x nm 3l ^pe(3j 3 ) r ttv * m. ^$fe< Figure 5c. Optimal Schedule w = (m-m ,+2)e + 1 22 I I ■1 C !J i> <> ;> n :: » 1 References [l]. T. C. Hu, Parallel Scheduling and Assembly Line Problems, Oper. Res. 9, No. 6 (1961), pp. 841-848. [2], E. G. Coffman, Jr. and R. L. Graham, Optimal Scheduling for Two Processor Systems, Acta Inf ormatica , 1, (1972), pp. 200-213. [3]. R. R. Muntz and E. G. Coffman, Jr., Preemptive Scheduling of Real Time Tasks on Multiprocessor Systems, J. ACM 17, No. 2, (1970) pp. 324-338. [4]. J. Bruno, E. G. Coffman, Jr. and R. Sethi, Scheduling Independent Tasks to Reduce Mean Finishing Time, Comm of ACM , 17, No. 7, (1974), pp. 382-387. [5]. J. W. S. Liu and A. Yang, Optimal Scheduling of Independent Tasks on Heterogeneous Computing Systems, Proc . 1974 ACM National Conference , pp. 38-45. [6]. R. L. Graham, Bounds on Multiprocessing Timing Anomalies, SIAM Journal on Applied Mathematics , 17, No. 2, (1969) pp. 263-269, also Bounds on Multiprocessing Anomalies and Related Packing Algorithms, AFIPS Conf . Proc. , 40 (1972), pp. 205-217. [7]. J. W. S. Liu and C. L. Liu, Bounds on Scheduling Algorithms for Heterogeneous Computing Systems, IFIP Conf. Proc. (1974) pp. 349-353. [8]. D. G. Kafura and V. Y Shen, Scheduling Independent Processors with Different Storage Capabilities, Proc. ACM National Conference (1974), pp. 161-166, also K. L. Krause, V. Y. Shen, and H. D. Schwetman, Analysis of Several Task Scheduling Algorithms for a Model of A Multiprogramming Computer System, J. ACM, 22, No. 4, (1975) pp. 522-550. [9]. G. L. Chesson, Communication and Control in Cluster Network, Proc . ACM National Conference (1974) pp. 509-514. BIBLIOGRAPHIC DATA SHEET 1. Report No. UIUCDCS-R-77 -835 3. Recipient's Accession No. 4. Title and Subtitle Performance Analysis of Multiprocessor Systems Containing Functional Dedicated Processors 5. Report Date May , 1 977 7. Author(s) Jane W. S. Liu and Chung L. Liu 8- Performing Organization Rept. No. ?. Performing Organization Name and Address Department of Computer Science University of Illinois at Urbana-Champaing Urbana, IL 61801 10. Project/Task/Work Unit No. 11. Contract/Grant No. MCS-73-03408 12. Sponsoring Organization Name and Address National Science Foundation Washington DC 13. Type of Report & Period Covered 14. 15. Supplementary Notes 16. Abstracts General models of multiprocessor systems in which processors are functionally I dedicated are described. In these models, processors are divided into different types. Clearly, the model of multiprocessor systems with identical processors is a special case of our models. These models also include the job shop problem in which there is exactly one processor of each type. Worst case performance bounds of priority-driven schedules are obtained. 17. Key Words and Document Analysis. 17a. Descriptors worst case performance, multiprocessors systems, scheduling algorithms, and functionally dedicated processors. 17b. Identifiers/Open-Ended Terms 17c. COSAT1 Field/Group 18. Availability Statement 19. Security Class (This Report) UNCLASSIFIED 20. Security Class (This Page UNCLASSIFIED 21. No. of Pages 22. Price FORM NTIS-38 (10-70) USCOMM-DC 40329-P7 1 :: :> i i n .••w> <* *> '•■■:■ I i! II 3 3 : : :» < m Eats? JAN 1 9 197b ' I | i ■■ j.'j UNIVERSITY OF ILLINOIS-URBANA 510 84 IL6R no C002 no 830 835(1976 Implementation ot the language CLEOPATRA 3 0112 088403073 JJat-LUftLr. .