This action might not be possible to undo. Are you sure you want to continue?

4, July 2010

**LDCP+: An Optimal Algorithm for Static Task Scheduling in Grid Systems
**

Negin Rzavi

Islamic Azad University, Science and Research Branch, Tehran, Iran n.razavi@srbiau.ac.ir

Safieh Siadat

Islamic Azad University, Science and Research Branch, Tehran, Iran s.siadat@srbiau.ac.ir

**Amir Masoud Rahmani
**

Islamic Azad University, Science and Research Branch, Tehran, Iran rahmani@srbiau.ac.ir

Abstract— after a computational job is designed and realized as a set of tasks, an optimal assignment of these tasks to the processing elements in a given architecture needs to be determined. In grid system with the existence of heterogeneous processing elements and data transferring time between them, determining an assignment of tasks to processing elements in order to optimize the performance and efficiency is so important. In this paper a heuristic algorithm named LDCP+ is presented, which has optimized the Longest Dynamic Critical Path algorithm (LDCP) presented by Mohammad L. Daoud and Nawwaf Kharma in 2007. This algorithm is a list-based algorithm in the way it assigns each task a priority for its execution. Using task duplication, using idle processing element's time and also optimizing priority assignment method which is used in LDCP algorithm, are the basic specifications of LDCP+, since LDCP algorithm is executable with the assumption that computation cost of tasks are monotonic, our algorithm which is presented in this paper has made the scheduling algorithm free from this restriction and in the case of non-monotonic computation costs, LDCP+ has the minimum total finish time in the comparison of other scheduling algorithms such as HEFT and CPOP. Keywords- Grid; Static task scheduling; Longest Dynamic Critical Path.

scheduling algorithms all information needed for scheduling such as the structure of the parallel application, the execution time of individual tasks and the communication costs between tasks must be known, in contrast, these information are unknown in dynamic task scheduling algorithms. Among different types of scheduling algorithms, HEFT is a scheduling algorithm for heterogeneous distributed computing systems which is consists of two phases: first, cost computing for each task and task selection, second, processor selection. In the task selection phase the algorithm sets the computation costs of tasks to their mean values and this may limit the ability of scheduling algorithm to precisely compute the priorities of tasks. The CPOP algorithm is same as HEFT in the two phases but with different strategies in assigning priorities to tasks and processor selection. These two algorithms have been mentioned as optimal algorithms in the parameter of total finish time. In this paper we present a heuristic list-based algorithm called LDCP+ (optimized of Longest Dynamic Critical Path algorithm) for static task scheduling in Grid systems with limited number of processors and we compare our scheduling results with other algorithms such as CPOP, HEFT and LDCP for performance evaluation. II. RELATED WORKS

I.

INTRODUCTION Static task scheduling for Grid systems, in general is known to be NP-Complete problem [4, 7, 9] and most of these algorithms are heuristic [1, 2, 3, 4, 7]. One of the most important classes of heuristic algorithms is list-based algorithms [6], in such algorithms each task is assigned with a priority and three steps of task selection, processor selection and status update are repeated until all tasks are scheduled. In the task selection phase the unscheduled task with the highest priority is selected. In the processor selection phase, the selected task is assigned to the processor that minimizes a predefined cost criterion that can be minimizing the schedule length. At last in status update phase, the status of the system is updated. Examples of list-based algorithms are: Heterogeneous Earliest Finish Time (HEFT) [9], Critical Path on a Processor (CPOC) [9], Critical Path on a Cluster (CPOC) [5], Dynamic

A Grid system is a group of connected computers that has the ability of executing parallel programs via a high speed interconnection. The efficiency of program parallelism in Grid systems depends on methods used in task scheduling on available processing elements. Inner connection of processing elements in Grid causes an overhead when two tasks assigned to different processing elements of distinct computers, transfer data. In fact, task scheduling in distributed heterogeneous systems are more complex in which each task can have different execution time on different processing elements, so scheduling algorithms for a Grid system should consider the execution time of each task on different processing elements and even one incorrect decision can restrict the system performance to the slowest processing element [2]. There are two kinds of scheduling algorithms: static scheduling algorithms and dynamic scheduling algorithms. In static

335

http://sites.google.com/site/ijcsis/ ISSN 1947-5500

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 8, No. 4, July 2010

Level Scheduling (DLS) [8], Modified Critical Path (MCP) [10], Mapping Heuristic (MH) [3], Dynamic Critical Path (DCP), and Longest Dynamic Critical Path (LDCP) [2]. III. PROBLEM DEFINITION

p0

0

t0

6

t2

15 Idle 15

In static task scheduling in Grid system, the execution precedence between tasks is represented by a Directed Acyclic Graph (DAG), each DAG is shown by tupple (T, E) where T is a set of n tasks and E is a set of e edges. Each ti ∈ T represents a task and each ei, j = (ti , t j ) ∈ E represents the execution precedence between the two tasks which are connected with the edge ei, j . If (ti , t j ) ∈ E then the execution of task t i ∈T cannot be started before task finishes its execution. For the edge (t i , t j ) , the source task t i is parent of the sink task t j , while t j is a child of t i . A task with no parents is called an entry task and a task with no children is called an exit task. Associated with each edge (t i ,t j ) is a value d i , j that represents the amount of data to be transmitted from task to task t j , and in some cases it also represents the minimum time that a task needs to wait for starting after task t i finishes its execution. A Grid system is represented by a set P of m processors, a set T of n tasks and n × m computation cost matrix ( Wn×m ). Each element w i , k ∈ W ,1 ≤ i < n ,1 ≤ k ≤ m represents the execution time (computation cost) of task t i on processor Pk . We have the same assumption as LDCP that all processors are fully connected and communications between processors occur via independent communication units [2], so, we can have task execution and data transferring in parallel. Also the data transfer rate between any two processors on the network is assumed to be fixed and constant as same as LDCP. The communication cost between two processors is represented by n × n matrix ( Dn×n ). d i , j ∈ D is zero if two tasks t i and t j of and are scheduled on the same processor and it is equal to communication cost (non zero) in the other case. A task can start its execution on a processor only when all data from its parent become available to that processor. The goal of our algorithm is to assign tasks in processors in a way that minimizes the total finish time, or the schedule length. A. Definition 1 Schedule Length: The maximum execution time of the processors or the finish time of the final task after task scheduling is called scheduled length. There is a DAG and a computation cost matrix with two processors as shown in Fig.1. The schedule length is computed in Fig.2. and it is equal to 23. Task t0 t1 p0 p1

3 2 1

t0

t1

p1

t1

0 4

t3

20 23

Figure 2. Schedule length of the presented DAG in Fig. 1. on two processors

6

n0

2 3

n1

1

6

5

n0

2 3

n1

1 8

4

n2 9

5

n2

5

n3

(a)

7

n3

(b)

3

Figure 3. Tasks computation time on each processor that will be acquired from cost matrix in Fig. 1.

Assigning task priorities in Grid system the efficiency of list-based scheduling algorithms depends on the methods which assign priorities to tasks. In our suggested algorithm LDCP+, if selecting a task in one step of scheduling causes the minimum schedule length we assign a high priority to that task. There are some basic definitions which are used in LDCP algorithm and because LDCP+ is the result of optimization of LDCP, we decided to represent this basic knowledge too. B. Definition 2 Critical Path: For a given DAG, the Critical Path (CP) is defined as the path from an entry task to an exit task for which the sum of the computation costs of tasks and the communication costs of edges is maximal. IV. LDCP: LONGEST DYNAMIC CRITICAL PATH

A. Definition 3 Longest Dynamic Critical Path: Given a DAG with n tasks and e edges and a Grid system with m processors, DCP during a particular scheduling step is a path of tasks and edges from an entry task to an exit task. LDCP is the largest DCP, considering that communication costs between tasks scheduled on the same processors are assumed zero, and the execution constraints are preserved. Fig.3. represents two dynamic critical paths. First path in Fig.3.a. is composed of tasks t 0 , t 2 and t 3 which is scheduled on processor p0 and has the length of 29. The second DCP in Fig.3.b. is composed of tasks t 0 , t 2 and t 3 which is scheduled on processor p1 and has the length of 23, so at the first step of scheduling, LDCP is composed of tasks t 0 , t 2 and t 3 and with the schedule length of 29.

t2

5

t2

t3

(a)

t3

6 6 9 7

(b)

5 4 8 3

Figure 1. An example of (a) DAG (b) computation matrix

336

http://sites.google.com/site/ijcsis/ ISSN 1947-5500

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 8, No. 4, July 2010

V.

LDCP+: THE PROPOSED ALGORITHM

In the algorithm of LDCP+, each scheduling iteration includes three phases below: 1. Task selection 2. Processor selection phase 3. Status update phase These 3 phases will be accomplished for each task until last input task is selected for scheduling. A. Task Selection Phase LDCP+ selects a set of tasks that play main role in determining schedule length. In first step of this phase, DAG of each processor is required for scheduling. 1) Definition 4 Directed Graph: With the assumption of having a DAG including n tasks, e edges and a Grid system with m processors ( p0 , p1 ,..., pm ), DAGP is the directed acyclic graph that k corresponds to processor p k . The computation cost of each task in the processor p k , is represented by a number on the related node of the DAGPk .

5) Definition 8 KeyNodeSet: This set includes KeyNodes that are selected for scheduling and in the first scheduling iteration it can include several tasks, but in other iterations it has only one task for scheduling and in the first scheduling iteration it can include several tasks, but in other iterations it has only one task. 6) Definition 9. Least Execution Time (LET): Least Execution Time is defined as

min{ processTim e( pk ) + wi ,k + d i , j }

(3)

DAGP0 is shown in Fig.3.a. and DAGP1 is shown in Fig.3.b. These figures are related with the DAG and the Grid system which is represented in Fig.1. Trough the course of this paper, ti is used to refer to the i'th task in directed acyclic graph and the node n i identifies task t i in DAGPk . The number associated with this node represents the computation cost of task ti on processor pk. In each DAGPk , all nodes are assigned with a number named UpwardRank (URank). URanks are used to determine tasks priorities in DAGPk .

2) Definition 5 URank: UpwardRank of i'th node ( n i ) in DAGPk is defined recursively as

where processTim e ( p k ) is the time that find scheduled task on processor p k finishes its execution, w i , k is the computation time of task corresponded to i on processor k, and d i , j is the communication time between t i and t j . If both t i and t j are scheduled on processor p k , then communication cost between them will be assumed zero. After computing URankSet, the destined task for scheduling algorithm is the task corresponding to existing KeyNode in URankSet. In the first iteration to obtain minimum execution time on available processing elements, if the number of entry tasks is equal or less than processors number, all entry tasks will be consider as KeyNode, in other case, as same as the number of processors, tasks with maximum URanks will be selected as KeyNodes and place in KeyNodeSet. In the next iterations, KeyNodeSet merely includes one KeyNode (a set with one member). B. Processor Selection Phase In this phase, selected task will be assigned to a processor in the way to gain the minimum schedule length in each iteration of scheduling. Therefore, in LDCP+, these stages will be passed: As mentioned above, in the first scheduling iteration, KeyNodeSet can have more than one KeyNode. For the purpose of optimizing LDCP algorithm, LDCP+ computes distinct permutation of tasks, which their corresponding KeyNodes are available in KeyNodeSet, on different processors and the permutation with the minimum average execution time on processors will be the first assignment of tasks to processors. This average execution time can be achieved from

**URankk (ni ) = wi ,k + max nl ∈succk ( ni ){ck (ni , nl ) + URank (nl )} (1)
**

where succk (ni ) is a set of immediate successors of node n i , ck ( ni , nl ) is the communication cost between nodes n i and nl in DAGPk , and wi , k is the computation cost of t i on processor p k . 3) Definition 6 URankSet: Each element of URankSet is defined as

Max {∑ URank k ( ni )}

k =0

m −1

(2)

where URank k (n i ) is URank (n i ) in DAGPk . 4) Definition 7 KeyNode: KeyNode is the node that has the maximum URank in URankSet. Corresponded task to this node is used as selected task for scheduling algorithm.

Where i is the number of tasks corresponding to their KeyNodes, w i ,k ∈w and m is the number of processors. In the next iterations, the only available KeyNode in KeyNodeSet is selected to be scheduled. 1) Definition 10 Idle Space: In a processor when there is a gap between the start time of a task and the end time of the previous task, that interval time is called idle space.

⎧ m−1 ⎫ ⎪ ∑ wi ,k ⎪ ⎪ ⎪ min ⎨ k =0 ⎬ m ⎪ ⎪ ⎪ ⎪ ⎩ ⎭

(4)

337

http://sites.google.com/site/ijcsis/ ISSN 1947-5500

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 8, No. 4, July 2010

2) Definition 11 Replacement Ability: One task can be placed in an idle space when parents of that task have been terminated before the start time of the task. If any of its parents have been scheduled on a different processor, the required time for transferring data between processors should be mentioned. If there is a processor with the idle space and selected task has the ability of locating in that space (replacement ability), that processor will be selected. At the end of this phase, LDCP+ algorithm uses duplication process to decrease the schedule length. With this definition, after selecting the processor if the selected task has a parent scheduled on a different processor and the selected processor has an idle space before the start time of the selected task, then duplication process in the idle space will be used (regarding to the replacement ability). 3) Definition 12 Duplication Process: Duplication process is repeating the execution of one task on other processors. C. Status Update Phase After selecting the task and assigning it to a processor, appropriate URank with the selected task will be deleted from URankSet. Finish process time of the selected processor will be updated after the task has been assigned to the processor. Selected task will be deleted from the list of unscheduled tasks. LDCP+ algorithm is proposed in Fig.4. VI. CASE STUDY

Establish DAGP for all processors in the system where 0 ≤ k ≤ m − 1 k Calculate URanks for all DAGPk Compute the URankSet While there are unscheduled tasks in task list do Find the KeyNode(s) in the URankSet Put the KeyNode(s) in KeyNodeSet If (it’s the first step of scheduling) then Choose the processors which have the minimum permutation; Else If (there is any processor with idle time and the task have the replacement ability) then Selected the processor; Else Compute the finish time of the selected task on every system; Find and select the processor that minimizes the finish time of the Selected task; End if Duplicate the parent(s) of the selected task if needed; End if Assign the selected task to the selected processor; Update the selected processor time; Update the URANK set; Update unscheduled task list; End while Figure 4. LDCP+ algorithm

Task 1 2 3 4 5 6 7 8 9 10

p1 14 13 11 13 12 13 7 5 18 21

p2 16 19 13 8 13 16 15 11 12 7

p3 9 18 19 17 10 9 11 14 20 16

In this section, execution results of CPOP, HEFT and LDCP+ algorithms are compared in the case of having non monotonic computation cost matrix. A Grid system compose of three single-processor computers (m=3), fifteen tasks (n=15), a non monotonic computation cost matrix and a DAG with communication costs assigned to graph edges are shown in Fig.5. which also presents scheduling results of the mentioned DAG, executed by HEFT, CPOP and LDCP+ algorithms. Execution results of LDCP and LDCP+ are compared according to monotonic computation cost matrix. A Grid system with the parameters m=2 and n=10, a monotonic computation cost matrix and a DAG with communication costs assigned to graph edges are shown in Fig.6. Fig.6 also shows scheduling results of the mentioned DAG presented in Fig6.b, executed by LDCP and LDCP+ scheduling algorithms.

(a)

(b)

p1

0 10 20 30 40 50 60 70 80 90

(c)

p2

p3 n1

p1

p2 n1

p3

n4

n3

n2

n2

n6

n5

n7

n4

n3

n7

n5

n6

n8

n8

n9

n9

n10

n1 0

(d)

338

http://sites.google.com/site/ijcsis/ ISSN 1947-5500

step 1 2 3 4 5 6 7 8 9 10 11

Selected task t2 t1 t4 t9 t5 t3 t7 t6 t8 t11 t10

Selected processor p0 p1 p1 p0 p0 p0 p1 p1 p0 p0 p1

step

Selecte d task n1 n4 n3 n2 n5 n6 n9 n7 n8 n10

1 2 3 4 5 6 7 8 9 10

Selected processo r p1 p2 p1 p3 p2 p3 p2 p1 p1 p2

(e)

(f)

(e)

(f)

Figure 5. Scheduling results for HEFT, CPOP, LDCP+ algorithms. (a) A graph with 10 tasks. (b) Graph cost matrix. (c) HEFT Scheduling algorithm with schedule length of 80. (d) CPOP algorithm with schedule length of 89. (e) LDCP+ algorithms with schedule length of 68. (f) Tasks execution sequence in LDCP+ algorithm. Duplicated tasks:

Figure 6. Scheduling results for LDCP and LDCP+ algorithms. (a) A graph with 11 tasks. (b) Graph cost matrix (c) tasks execution sequence in LDCP algorithm (d) LDCP algorithm with schedule length of 64 (e) tasks execution sequence in LDCP+ algorithm. (f) LDCP+ algorithm with schedule length of 61.5

**VII. CONCLUSION AND FUTURE WORK
**

task t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 p0 4 15 4 13 10 7 8 4 12 6 9 p1 6 22.5 6 19.5 15 10.5 12 6 18 9 13.5

(a)

(b)

In Grid systems, task scheduling is an important problem in the domain of optimizing heterogeneous distributed systems. In this paper a new heuristic scheduling algorithm, named LDCP+, is proposed. This algorithm has optimized LDCP algorithm that better result are attained for schedule length by improving these three phases: task selection phase, processor selection phase and status update phase. LDCP+ can schedule tasks in Grid systems in both case of having monotonic and non monotonic cost matrix. Using duplication process for optimizing priority assigns to tasks and also using idle spaces of processors will result in having better schedule length rather than other scheduling algorithms. In real time environment, the assignment of resources such as processors in a specific time is so important. More works can be done to improve algorithms with less computation cost for such environments. REFERENCES

step 1 2 3 4 5 6 7 8 9 10 11

Selected task t2 t1 t4 t9 t5 t3 t7 t6 t8 t10 t11

Selected processor p0 p1 p1 p0 p0 p0 p1 p1 p0 p0 p0

[1]

[2]

[3]

[4]

[5] (c) (d) [6]

S. Bansal, P. Kumar, and K. Singh. An improved duplication strategy for scheduling precedence constrained graphs in multiprocessor systems. In IEEE Transactions on Parallel and Distributed Systems 14(6), pages 533-544, 2003. M. I. Daoud and N. N. Kharma. A high performance algorithm for static task scheduling in heterogeneous distributed computing systems. In Journal of Parallel and Distributed Computing 68(4), pages 399-409, 2008. H. El-Rewini and T. G. Lewis. Scheduling parallel program tasks onto arbitrary target machines. Journal of Parallel and Distributed Computing 9(2), pages 138-153, 1990. E. Ilavarasan, P. Thambidurai, and R. Mahilmannan. Performance effective task scheduling algorithm for heterogeneous computing system. 4th International Symposium on Parallel and Distributed Computing, 0:28-38, 2005. J. Kim, J. Rho, J.-O. Lee, and M.-C. Ko. Cpoc: Effective static task scheduling for grid computing. In Proceeding of the 2005 International Conference on High Performance Computing and Communcations, pages 477-486, 2005.

339

http://sites.google.com/site/ijcsis/ ISSN 1947-5500

Y.-K. Kwok and I. Ahmad. Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Comput. Surv. 31(4), pages 406-471, 1999. [8] Y. kwong Kwok, I. Ahmad, and I. Ahmad. Dynamic critical-path scheduling: An effective technique for allocating task graphs to multiprocessors. IEEE Transactions on Parallel and Distributed Systems 7(5), pages 506-521, 1996. [9] G. C. Sih and E. A. Lee. A compile-time scheduling heuristic for interconnection constrained heterogeneous processor architectures. IEEE Transaction on Parallel and Distributed Systems 4(2), pages 175-187, 1993. [10] H. Topcuoglu, S. Hariri, and W. Min-You. Performance-effective and low complexity task scheduling forheterogeneous computing. IEEE Transaction on Parallel and Distributed Systems 13(3), pages 260-274, 2002. [7]

340

http://sites.google.com/site/ijcsis/ ISSN 1947-5500

- Journal of Computer Science IJCSIS March 2016 Part II
- Journal of Computer Science IJCSIS March 2016 Part I
- Journal of Computer Science IJCSIS April 2016 Part II
- Journal of Computer Science IJCSIS April 2016 Part I
- Journal of Computer Science IJCSIS February 2016
- Journal of Computer Science IJCSIS Special Issue February 2016
- Journal of Computer Science IJCSIS January 2016
- Journal of Computer Science IJCSIS December 2015
- Journal of Computer Science IJCSIS November 2015
- Journal of Computer Science IJCSIS October 2015
- Journal of Computer Science IJCSIS June 2015
- Journal of Computer Science IJCSIS July 2015
- International Journal of Computer Science IJCSIS September 2015
- Journal of Computer Science IJCSIS August 2015
- Journal of Computer Science IJCSIS April 2015
- Journal of Computer Science IJCSIS March 2015
- Fraudulent Electronic Transaction Detection Using Dynamic KDA Model
- Embedded Mobile Agent (EMA) for Distributed Information Retrieval
- A Survey
- Security Architecture with NAC using Crescent University as Case study
- An Analysis of Various Algorithms For Text Spam Classification and Clustering Using RapidMiner and Weka
- Unweighted Class Specific Soft Voting based ensemble of Extreme Learning Machine and its variant
- An Efficient Model to Automatically Find Index in Databases
- Base Station Radiation’s Optimization using Two Phase Shifting Dipoles
- Low Footprint Hybrid Finite Field Multiplier for Embedded Cryptography

after a computational job is designed and realized as a set of tasks, an optimal assignment of these tasks to the processing elements in a given architecture needs to be determined. In grid system ...

after a computational job is designed and realized as a set of tasks, an optimal assignment of these tasks to the processing elements in a given architecture needs to be determined. In grid system with the existence of heterogeneous processing elements and data transferring time between them, determining an assignment of tasks to processing elements in order to optimize the performance and efficiency is so important. In this paper a heuristic algorithm named LDCP+ is presented, which has optimized the Longest Dynamic Critical Path algorithm (LDCP) presented by Mohammad L. Daoud and Nawwaf Kharma in 2007. This algorithm is a list-based algorithm in the way it assigns each task a priority for its execution. Using task duplication, using idle processing element's time and also optimizing priority assignment method which is used in LDCP algorithm, are the basic specifications of LDCP+, since LDCP algorithm is executable with the assumption that computation cost of tasks are monotonic, our algorithm which is presented in this paper has made the scheduling algorithm free from this restriction and in the case of non-monotonic computation costs, LDCP+ has the minimum total finish time in the comparison of other scheduling algorithms such as HEFT and CPOP.

- IJAIEM-2013-04-30-124by editorijettcs1
- ESD UNIT III Lecture 03 Task Scheduling Rate Monotonic.pptby Neha Mendhe
- Branch & bound: An Algorithm for Divisible Load Scheduling with Result Collection on Heterogeneous Systemsby International Journal of Science and Engineering Investigations
- Survey of Real Time Scheduling Algorithmsby International Organization of Scientific Research (IOSR)

- STY08UweSchwiegelsohnby sfofoby
- The Branch & Bound Algorithm Improvement in Divisible Load Scheduling with Result Collection on Heterogeneous Systems by New Heuristic Functionby International Journal of Science and Engineering Investigations
- Distributed System Assignmentby Nishant Khandelwal
- GLP08cUweSchwiegelsohnby sfofoby

- A Study of Load Distribution Algorithms in Distributed Scheduling
- Lre-tl Cited 2
- Pre Port
- A New Algorithm for Static Task Scheduling for Heterogeneous Distributed Computing Systems
- lieu_sol
- v9-4
- KS Scheduling
- 10[1].1.1.44.7577
- IJAIEM-2013-04-30-124
- ESD UNIT III Lecture 03 Task Scheduling Rate Monotonic.ppt
- Branch & bound
- Survey of Real Time Scheduling Algorithms
- STY08UweSchwiegelsohn
- The Branch & Bound Algorithm Improvement in Divisible Load Scheduling with Result Collection on Heterogeneous Systems by New Heuristic Function
- Distributed System Assignment
- GLP08cUweSchwiegelsohn
- 09 Chapter 1
- A Hyperbolic Bound for the Rate Monotonic Algorithm____2001
- ch5.6-Fall-2007
- Scheduling Algorithms for Real-Time Multiprocessor Systems
- Revised Slide Window First Algorithm for Advanced Reservation in Optical Grid
- Solution 1
- Introduction to Rate Monotonic Scheduling
- Chapter 18
- Scheduling
- 00760525
- IJAIEM-2013-04-30-141
- A synthesis algorithm for customized heterogeneous multi-processors.pdf
- A Multi-Objective Perspective for Operator Scheduling Using Finegrained DVS Architectures
- 05274659
- LDCP+

Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

We've moved you to where you read on your other device.

Get the full title to continue

Get the full title to continue reading from where you left off, or restart the preview.

scribd