10 views

Uploaded by sfofoby

- 5 CPU Scheduling
- Scheduling tool CM
- Ca5155 Operating Systems
- LO230 - Capacity Planning
- B.E ( Comp. Science )
- Application Engine Basics
- Operating System Question Bank
- 01600_IM_ch04 (2).pdf
- OS Bits
- 6201 Scheduling 2
- operating system
- studyguide.pdf
- Scheduling
- Assignment
- Scheduling ,Reservations and ATP in Oracle Order Management
- LINUX
- CSC228 Syllabus Spring 2014
- Cs 2254 Operating Systems l t p c
- 10 - Application Controls
- 02-AsymptoticNotations

You are on page 1of 57

Job Scheduling

Uwe Schwiegelshohn EPIT 2007, June 5 Ordonnancement

What is job scheduling? Single machine problems and results Makespan problems on parallel machines Utilization problems on parallel machines Completion time problems on parallel machines Exemplary workload problem

2

Q Q Q Q Q Q

Q

Processor scheduling

Jobs are executed on a CPU in a multitasking operating system. Users submit jobs to web servers and receive results after some time. Users submit batch computing jobs to a parallel processor. Users call other persons and need bandwidth for some period of time. Airlines require gates for their flights at an airport. Customer request the repair of their devices.

3

Bandwidth scheduling

Job Properties

Q

Independent jobs

O

Atomic jobs

No job stages

O

Batch jobs

O

pj rj wj

processing time of job j release date of job j weight of job j earliest starting time importance of the job parallelism of the job

4

mj size of job j

Machine Environments

Q Q

1: single machine

Many job scheduling problems are easy. Every job requires the same processing time on each machine. Use of machine eligibility constraints Mj if job j can only be executed on a subset of machines

O

The machines have different speeds vi that are valid for all jobs. In deterministic scheduling, results for Pm and Qm are related. In online scheduling, there are significant differences between Pm and Qm. Each job has a different processing time on each machine.

5

Q Q

Fixed parallelism: mj machines must be available during the whole processing of the job. Malleable jobs: The number of allocated machines can change before or during the processing of the job. The processing of a job can be interrupted and continued on another machine. Gang scheduling: The processing of a job must be continued on the same machines. rarely discussed in the literature

6

Preemption

Q Q

Objective Functions

Q Q

O

Utilization Ut: Average ratio of busy machines to all machines in the interval (0,t] for some time t. Total completion time: Cj Total weighted completion time: wj Cj Total weighted waiting time: wj ( Cj pj rj ) = wj Cj wj (pj+rj) Total weighted flow time: wj ( Cj rj ) = wj Cj wj rj const. const.

7

User oriented:

Workload Classification

Q

All problem parameters are available at time 0. Optimal algorithms, Simple individual approximation algorithms Polynomial time approximation schemes Parameters of job j are unknown until rj (submission over time). pj is unknown Cj (nonclairvoyant scheduling). Competitive analysis Known distribution of job parameters Randomized algorithms An algorithm is parameterized to achieve a good solution for a given workload.

8

Stochastic scheduling

Q

No machine is kept idle while a job is waiting for processing. An optimal schedule need not be nondelay!

jobs pj rj wj

1 1 1 2

2 3 0 1

0

wj Cj=11

Optimal schedule

1 2 5

wj Cj=9

Complexity Hierarchy

Some problems are special cases of other problems: Notation: 1 | 1 | 1 (reduces to) 2 | 2 | 2 Examples: 1 || Cj 1 || wj Cj Pm || wj Cj Pm | mj | wj Cj

Rm

Qm

wj C j

rj

wj

mj

prmp

Mj

brkdwn

Pm

Cj

1

10

What is job scheduling? Single machine problems and results Makespan problems on parallel machines Utilization problems on parallel machines Completion time problems on parallel machines Exemplary workload problem

11

Q Q Q Q Q Q

1 || wj Cj

Q

1 || wj Cj is easy and can be solved by sorting all jobs in decreasing Smith order wj/pj (weighted shortest processing time first (WSPT) rule, Smith, 1956).

Nondelay schedule Proof by contradiction and localization: If the WSPT rule is violated then it is violated by a pair of neighboring task h and k.

S1: wj Cj = ...+ wh(t+ph) + wk(t + ph + pk) h t k h S2: wj Cj = ...+ wk(t+pk) + wh(t + pk + ph)

12

Q

optimal makespan and optimal utilization for any interval starting at time 0. No direct application to nonclairvoyant scheduling The online nonclairvoyant version (Round Robin) has a competitive factor of 2-2/(n+1) (Motwani, Phillips, Torng,1994). The online, clairvoyant version is easy.

Q Q

1 | prmp | Cj is easy.

Q Q Q

1 | rj ,prmp | Cj is easy.

13

Q

Same optimal solution Larger approximation factor for 1 | rj ,prmp | wj (Cj-rj). No constant approximation factor for the total flowtime objective (Kellerer, Tautenhahn, Wginger, 1999)

j j j

w (C (S) r ) = w (C (OPT) r )

j j j

w C (S) w w C (OPT) =

j j j j

j j j j

j j j j j j j j j

14

Approximation Algorithms

Q

1 | rj | Cj

1 | rj | wjCj

Approximation factor e/(e-1)=1.58 (Chekuri, Motwani, Natarajan, Stein, 2001) Clairvoyant online scheduling: competitive factor 2 (Hoogeveen, Vestjens,1996) Approximation factor 1.6853 (Goemans, Queyranne, Schulz, Skutella, Wang, 2002) Clairvoyant online scheduling: competitive factor 2 (Anderson, Potts, 2004) Approximation factor 1.3333, Randomized online algorithm with the competitive factor 1.3333 WSPT online algorithm with competitive factor 2 (all results: Schulz, Skutella, 2002)

15

1 | rj ,prmp | wj Cj

What is job scheduling? Single machine problems and results Makespan problems on parallel machines Utilization problems on parallel machines Completion time problems on parallel machines Exemplary workload problem

16

Q Q Q Q Q Q

Q

A minimal makespan represents a balanced load on the machines if no single job dominates the schedule.

1 C max (OPT) max max{ p j }, p j m

Preemption may improve a schedule even if all jobs are released at the same time.

1 C max (OPT) = max max{ p j }, p j m

17

Pm || Cmax

Q Q

Pm || Cmax is strongly NP-hard (Garey, Johnson 1979). Approximation algorithm: Longest processing time first (LPT) rule (Graham, 1966)

Whenever a machine is free, the longest job among those not yet processed is put on this machine. Tight approximation factor:

Cmax (LPT) 4 1 Cmax (OPT) 3 3m

The optimal schedule Cmax(OPT) is not necessarily known but a simple lower bound can be used:

1 n Cmax (OPT) p j m j=1

18

Q

If the claim is not true, then there is a counterexample with the smallest number n of jobs. The shortest job n in this counterexample is the last job to start processing (LPT) and the last job to finish processing.

If n is not the last job to finish processing then deletion of n does not change Cmax (LPT) while Cmax (OPT) cannot increase. A counter example with n 1 jobs In time interval [0, Cmax(LPT) pn], all machines are busy.

1 n1 Cmax (LPT) pn p j m j=1

19

C max

1 (LPT) p n + m

n 1 j=1

1 1 )+ p j = p n (1 m m

p

j=1

n 1 1 pj pn (1 ) m j=1 Cmax (LPT) 4 1 pn (1 1 m) m < + +1 3 3m Cmax (OPT) Cmax (OPT) Cmax (OPT) Cmax (OPT)

At most two jobs are scheduled on each machine. For such a problem, LPT is optimal.

20

jobs pj

Q Q Q

1 7

2 7

3 6

4 6

5 5

6 5

7 4

8 4

9 4

4 parallel machines: P4||Cmax Cmax(OPT) = 12 =7+5 = 6+6 = 4+4+4 Cmax(LPT) = 15 = 11+4=(4/3 -1/(34))12

7 7 6 6 5 5

21

4 4

List Scheduling

Q

6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Cmax(LIST)=11

Cmax(OPT)=6

22

Online Transformation

Let A be an algorithm for a job scheduling problem without release dates and with

C max (A) k C max (OPT)

Then there is an algorithm A for the corresponding online job scheduling problem with

C max (A' ) 2k C max (OPT)

23

Transformation Proof

Q Q Q Q Q

S0: Jobs available at time 0=F-1=F-2 F0=Cmax(A,S0) Si+1: Jobs released in (Fi-1,Fi] Fi=Cmax(A,Si) such that no job from Si starts before Fi-1. Assume that all jobs in Si are released at time Fi-2

Proof

Fi-1 Fi-2 Fi-3 + Fi-1 Fi-2 k C max (A, Si-1 ) < k C max (A' )

24

Q

The List scheduling bound 2-1/m also applies to Pm|rj|Cmax (Hall, Shmoys, 1989). Online extension of List scheduling to parallel jobs:

No machine is kept idle while there is at least one job waiting and there are enough machines idle to start this job (nondelay).

The List scheduling bound 2-1/m also applies to Pm|mj|Cmax (Feldmann, Sgall, Teng, 1994). The List scheduling bound 2-1/m also applies to Pm|mj,rj|Cmax (Naroska, Schwiegelshohn, 2002).

2-1/m is a competitive factor for the corresponding online nonclairvoyant scheduling problem. Proof by induction on the number of different release dates

25

Pm | mj | Cmax Proof

Q

The bound holds if during the whole schedule there is no interval with at least m/2 idle machines.

C max (OPT) m +1 1 C max (S) m p j j 2m m m 1 C max (S) = C max (S) 1 2m - 1 2 m

The sum of machines used in any two intervals is larger than m unless the jobs executed in one interval are a subset of the jobs executed in the other interval.

1 1 C max (S) max 2 m j p j , 2 max{ p j } m m

26

Q

Transformation of a nonpreemptive single machine schedule in a preemptive parallel schedule (McNaughton, 1959)

The single machine schedule is split into at most m schedules of length Cmax(OPT). Each schedule is executed on a different machine. There are at most m-1 preemptions.

O O

O O

Competitive factor 1 for allocation as late as possible. Competitive factor e/(e-1)=1.58 for allocation of machine slots at submission time (Chen, van Vliet, Wginger, 1995)

Nonclairvoyant online scheduling: same competitive factor 2-1/m as for the nonpreemptive case (Shmoys, Wein Williamson, 1995)

27

What is job scheduling? Single machine problems and results Makespan problems on parallel machines Utilization problems on parallel machines Completion time problems on parallel machines Exemplary workload problem

28

Q Q Q Q Q Q

Utilization

Q

In online job scheduling problems, there is no last submitted job. Ut with t being the actual time is better suited than the makespan objective. Nonclairvoyant online scheduling: tight competitive factor for any nondelay schedule 1.3333 (Hussein, Schwiegelshohn, 2006) Proof by induction on the different release dates.

1 1 2 1 2 1

Pm |rj| Ut

U2(LIST)=0.75

U2(OPT)=1

29

Q

time

t2 t1

machines

30

Q

Splitting of jobs The system only contains short and long jobs.

O

time

machines

31

Q

Nondelay schedule

time

Optimal schedule

machines

machines

32

If all long jobs of a transformed job system start at their release date, then the utilization is maximal for all t and the equal priority completion time is minimal.

long jobs

time

short jobs

machines

33

r k

t r

r tk

Nondelay schedule S

Optimal schedule

r r

t r tk r

Nondelay schedule S

Optimal schedule

34

Pm | rj,mj | Ut

Q Q

Parallel jobs may cause intermediate idle time even if all jobs are released at time 0. Nonclairvoyant online scheduling:

Competitive factor m in the worst case Competitive factor 2 if the actual time >> max{pj}

Jobs pj rj mj 1 2 3 4 1 1+ 0 1 5 6 6 2 1+ 1 1 3 1+ 2 1 4 1+ 3 1 5 1 4 1 6 5 0 5 1 2 3 4 5

35

U5(LIST)=0.2+0.16

U5(OPT)=1

Pm | rj,mj,prmp | Ut

Q

All allocated machines concurrently start, interrupt, resume, and complete the execution of a parallel job. There is no migration or change of parallelism.

1 1 1 2 4 4 4 3 4 1 2 3

U3(A)=7/15

U3(OPT)=14/15

36

What is job scheduling? Single machine problems and results Makespan problems on parallel machines Utilization problems on parallel machines Completion time problems on parallel machines Exemplary workload problem

37

Q Q Q Q Q Q

Pm || Cj

Q

Pm || Cj is easy.

O O

Shortest processing time (SPT) (Conway, Maxwell, Miller, 1967) Single machine proof:

Cj=n p(1)+ (n-1) p(2) + 2 p(n-1) + p(n) p(1) p(2) p(3) ..... p(n-1) p(n) must hold for an optimal schedule. Dummy jobs with processing time 0 are added until n is a multiple of m. The sum of the completion time has n additive terms with one coefficient each: m coefficients with value n/m m coefficients with value n/m 1 : m coefficients with value 1 If there is one coefficient h>n/m then there must be a coefficient k<n/m. Then we replace h with k+1 and obtain a smaller Cj .

O O

O O

38

Pm || wjCj

Q

The WSPT algorithm has a tight approximation factor of 1.207 (Kawaguchi, Kyan, 1986) It is sufficient to consider instances where all jobs have the same ratio wj/pj. Proof by induction on the number of different ratios.

O O

O O O O

J is the set of all jobs with the largest ratio in an instance I. The weights of all jobs in J are multiplied by a positive factor <1 such that those jobs now have the second largest ratio. This produces instance I. The WSPT order is still valid. The WSPT schedule remains unchanged. The optimal schedule may change.

39

Different Ratios

Q

Induction Proof

wjCj(WSPT,I)wjCj(OPT,I) (induction assumption) x: contribution of all jobs in J to wjCj(WSPT,I) y: contribution of all jobs not in J to wjCj(WSPT,I) x: contribution of all jobs in J to wjCj(OPT,I) y: contribution of all jobs not in J to wjCj(OPT,I) xx (induction assumption) wjCj(WSPT,I)= x+y and wjCj(WSPT,I)=x+y, wjCj(OPT,I)=x+y and wjCj(OPT,I)x+y yy wjCj(WSPT,I)wjCj(OPT,I) y>y xy>xy x/y>x/y xy-xy>0 xy-xy>(xy-xy) wjCj(WSPT,I)wjCj(OPT,I) =(x+y)(x+y)>(x+y)(x+y) wjCj(OPT,I)wjCj(WSPT,I) wjCj(WSPT,I)wjCj(OPT,I)

40

Q

Splitting of job j into jobs j1 and j2. The system only contains short and long jobs.

O

All long jobs start at the end of busy interval in the list schedule.

j j j j j j

j1

C j1 (S) p j2 C j2 (S) =

time

machines

j j j j j1 j2 j j j j j1 j j j j

j2

41

Q

wj=pj holds for all jobs. wjCj(S)=wjCj(OPT)= 0.5((pj)2+pj2) Proof by induction on the number of jobs

1 w jC j (S) = 2 1 = 2

(( p ) + p )+ p (p + p ) = (( p ) + 2p p + p )+ 1 ( p 2

2 2 j j j' j' j 2 2 j j' j j'

2 j

+ p j'

42

Q

Assumption of a continuous model (fraction of machines) k long jobs with different processing times are transformed into n(k) jobs with the same processing time p(k) such that pj=n(k)p(k) and pj2=n(k)(p(k))2 hold. p(k)= pj2/ pj and n(k)= (pj)2/ pj2 Then we have kn(k) for reasons of convexity.

time

machines

machines

43

Q

Partitioning of the long jobs into two groups Equalization of the both groups separately The maximum completion time of the small jobs decreases due to the large rectangle. The jobs of the small rectangle are rearranged. New equalization of the large rectangle Determination of the size of the large rectangle

time

machines

machines

44

Release Dates

Q

Pm |rj| Cj

Approximation factor 2 Clairvoyant, randomized online scheduling: competitive factor 2 Approximation factor 2 Clairvoyant, randomized online scheduling: competitive factor 2 Approximation factor 2 Clairvoyant, randomized online scheduling: competitive factor 2 Approximation factor 2 Clairvoyant, randomized online scheduling: competitive factor 2 (all results Schulz, Skutella, 2002)

45

Pm |rj,prmp| Cj

Pm |rj| wjCj

Pm |rj,prmp| wjCj

Parallel Jobs

Q

Pm |mj,prmp| wjCj

Use of gang scheduling without any task migration Approximation factor 2.37 (Schwiegelshohn, 2004) Nonclairvoyant approximation factor 2-2/(n+1) if all jobs are malleable with linear speedup (Deng, Gu, Brecht, Lu, 2000).

Pm |mj,prmp| Cj

Pm |mj| wjCj

Approximation factor 7.11 (Schwiegelshohn, 2004) Approximation factor 2 if mj0.5m holds for all jobs (Turek et al., 1994) Approximation factor 2 if the jobs are malleable without superlinear speedup (Turek et al., 1994)

46

Pm |mj| Cj

Online Problems

Q

Pm |mj,rj,prmp| wjCj

Nonclairvoyant online scheduling with gang scheduling and wj=mjpj: competitive factor 3.562 (Schwiegelshohn, Yahyapour, 2000)

O

O O

wj=mjpj guarantees that no job is preferred over another job regardless of its resource consumption as all jobs have the same (extended) Smith ratio. All jobs are started in order of their arrival (FCFS). Any job started after a job j can increase the flow time Cj-rj by at most a factor of 2

O O

Competitive factor 12+ for a deterministic algorithm Competitive factor 8.67 for a randomized algorithm (both results Chakrabarti et al.,1996)

47

What is job scheduling? Single machine problems and results Makespan problems on parallel machines Utilization problems on parallel machines Completion time problems on parallel machines Exemplary workload problem

48

Q Q Q Q Q Q

MPP Problem

Q

Machine model

Massively parallel processor (MPP): m parallel identical machines Multiple independent users Nonclairvoyant (unknown processing time pj ) with estimates Online (submission over time rj ) Fixed degree of parallelism mj during the whole processing No preemption Machine utilization Average weighted response time (AWRT): pjmj(Cj-rj ) Based on user groups

49

Job model

Objective

Algorithmic Approach

Q

Waiting queue

Parameters of jobs in the waiting queue Actual time Scheduling situations: weekdays daytime (8am 6pm), weekdays nighttime (6pm 8am), weekends

Q Q

Consideration of 2 user groups: 10 AWRT1+ 4 AWRT2 Recorded workloads and simulations Workload scaling for comparison

50

User Group RCu/RC 1 > 8% 2 28% 3 12% 4 0.1 1 % 5 < 0.1 %

Workload scaling

51

Sorting Criteria

f1 ( Job) = f 2 ( Job) =

|Groups|

i =1 i =1

requestedTime waitTime wi K i + a requestedTime + b processors requestedTime wi K a waitTime b + + i processors waitTime wi K a + i requestedT ime processors

+ a waitTime + b requestedTime processors )

|Groups|

f 3 ( Job) =

|Groups|

i =1

f 4 ( Job) =

|Groups| i =1

w (K

i

52

15,00

10,00

AWRT Improvements in %

-15,00 -20,00

53

20,00

10,00

Objective Improvements in %

SDSC 00 SDSC 95

SDSC 96

-40,00 -50,00

Q Q

Some workloads are similar (CTC, LANL). Some workloads are significantly different (CTC, KTH).

54

70000 68000 66000 AWRT 2 in Seconds 64000 62000 60000 58000 56000 54000 52000 50000 45000 PF EASY GREEDY CTC opt GREEDY ALL opt 47000 49000 51000 53000 55000 57000 59000 61000 63000 65000

AWRT 1 in Seconds

55

65000 PF EASY 60000 AWRT 2 in Seconds GREEDY CTC opt GREEDY ALL opt 55000

50000

45000

40000 40000

42000

44000

46000

48000

50000

52000

54000

56000

AWRT 1 in Seconds

56

Conclusion

Q

Approximation algorithms

O O

Online algorithms

O

Stochastic scheduling

O

Challenges

Partial information

O O

57

- 5 CPU SchedulingUploaded byShaikh Mohammed Love
- Scheduling tool CMUploaded byPardeep Jog
- Ca5155 Operating SystemsUploaded byPravallika Reddy
- LO230 - Capacity PlanningUploaded byrukometlas
- B.E ( Comp. Science )Uploaded byshivaji university syllabus computer science 2002-2006
- Application Engine BasicsUploaded byharikishore14
- Operating System Question BankUploaded byNitin Manjhi
- 01600_IM_ch04 (2).pdfUploaded bymasculinehawk
- OS BitsUploaded byPhani Bandhakavi
- 6201 Scheduling 2Uploaded bystocktrial1
- operating systemUploaded bygrsrik
- studyguide.pdfUploaded byraqibapp
- SchedulingUploaded byNtoane Lekuba-Da Cuba
- AssignmentUploaded byAaditya Malhotra
- Scheduling ,Reservations and ATP in Oracle Order ManagementUploaded bygaurav upmanyu
- LINUXUploaded byGustavo Sepulveda
- CSC228 Syllabus Spring 2014Uploaded bytrun12
- Cs 2254 Operating Systems l t p cUploaded byRaji Sharmi
- 10 - Application ControlsUploaded byurooj ansari
- 02-AsymptoticNotationsUploaded byinstance one
- The Easiest Hard ProblemUploaded byJeff Pratt
- CS1252 Operating Systems May Jun 2007Uploaded byaniruthgsabapathy
- 4364 529 Embedded SystemUploaded byyogesh_b_k
- ps2sol.pdfUploaded byPorkerriaCcdlv
- 14-Unit14Uploaded byJohn Arthur
- Data Structures Algorith ComplexityUploaded byRajesh Aggarwal
- 01 Rankpi o2 Uk Rrm FeaturesUploaded byashu17
- RtsUploaded bysalagram
- Report (1)Uploaded bySam Paurac Malawani
- The Amazing Performance of C++17 Parallel Algorithms, is it Possible_ - CodeProjectUploaded byGabriel Gomes

- LizYUploaded bysfofoby
- LizNUploaded bysfofoby
- LizJuUploaded bysfofoby
- Liz01Uploaded bysfofoby
- LizNUploaded bysfofoby
- LizNUploaded bysfofoby
- LizJuUploaded bysfofoby
- LizQUploaded bysfofoby
- LizQUploaded bysfofoby
- LizAlUploaded bysfofoby
- Nouveau Document TexteUploaded bysfofoby
- Nouveau Document TexteUploaded bysfofoby
- LizJuUploaded bysfofoby
- LizAlUploaded bysfofoby
- LizAlUploaded bysfofoby
- LizDeUploaded bysfofoby
- LizDeUploaded bysfofoby
- LizYUploaded bysfofoby
- LizYUploaded bysfofoby
- Liz ActualUploaded bysfofoby
- LizBUploaded bysfofoby
- LizBUploaded bysfofoby
- LizBUploaded bysfofoby
- LizConUploaded bysfofoby
- Liz FactsUploaded bysfofoby
- Liz FactsUploaded bysfofoby
- Liz FactsUploaded bysfofoby
- LizDocUploaded bysfofoby
- Nouveau Document TexteUploaded bysfofoby
- LizLoUploaded bysfofoby

- MS_sekerUploaded byedward.rhodes4760
- Jacob Davies Thesis Corrected Aug08Uploaded byhcmcrlho
- Crude Oil Statistics NigeriaUploaded byEfemena Doroh
- Parkin 9e Chapter 24Uploaded bykevin cody
- GeotaggingUploaded byIroshan Priyantha
- Oracle PLSQL Imp DocsUploaded bySumit K
- Configuring the IMMUploaded byNitesh Kohli
- Conflong CreepUploaded byAnonymous LMfIjpE
- 2nd grade lakota folk art lessonUploaded byapi-340008827
- Alexander Kurth - HummingbirdUploaded byalejaNdro12
- Automotion Spec. Issue Packaging MM-E01409.115Uploaded byback1949
- MITBOTS - Beginners WorkshopUploaded bypdboy2010
- evolutionunitstandardsUploaded byapi-300736669
- 67435200-Perioperative-Nursing-Concept.pdfUploaded byMari Fe
- IBM WCS - IBM WebSphere Commerce Blog_ August 2014Uploaded byjeffa123
- Clustering sMp3Uploaded by12053345
- Steam Trap SizingUploaded byViswanathan Damodaran
- project planning standardsUploaded byapi-243909487
- DocMgtSystem.pdfUploaded byharpreet
- Most Popular Mandarin Chinese WordsUploaded byeChineseLearning
- CIS 499 STRAYER. Project Deliverable 2_ Business RequirementsUploaded byteacher.theacestud
- Asset Management in PythonUploaded byyamabushi
- PhilipsUploaded byRupesh Jain
- SEI.docxUploaded byayumanik11
- apendicitaUploaded byBîcă Ovidiu
- 810_manuUploaded byJose Carlos Sierra Ciudad
- Game Snakes Ladders With English Game Questions and InstructionsUploaded byquadromagico
- Objective Type of Questions on Tourism MarketUploaded byprasadkulkarnigit
- Can ERP Becomes an Alternatives to MISUploaded byswatisudha
- Acsa 2010 Budget ProposedUploaded byreadthehook