Sheikh K. GhafoorDepartment of Computer Science
Tennessee Technological UniversityMay 05, 2010
OutlineOverview RMS for adaptive parallel application
A model for adaptive parallel system
ConclusionsFuture research
Autonomic Computing
”What is autonomic computing? It is the ability of systems to be more self-managing. The term autonomic comes from the autonomic nervous system, which controls many organs and muscles in the human body. Usually, we are unaware of its workings because it functions in an involuntary, reflexive manner -- for example, we don't notice when our heart beats faster or our blood vessels change size in response to temperature, posture, food intake, stressful experiences and other changes to which we're exposed. And, by the way, our autonomic nervous system is always working”
Alan Ganek, VP Autonomic Computing, IBM
Research Area
Autonomic computing -systems that adapt themselves without human intervention in response to unpredictable events and data Adaptive hardwareAdaptive OSAdaptive system softwareAdaptive applications
Demand for Computational Speed
Applications in science and engineering are computationally intensive
Continual demand of greater computational speed from computer systems than is currently feasible
Areas requiring great computational speed include numerical modeling and simulation of scientific and engineering problems
Examples Weather forecasting Manufacturing and design Modeling large DNA structures Modeling motion of astronomical bodies Problems in particle physics
Classification of Parallel Application [Feitelson and Rudolp 1996]
RigidFixed no. of processors defined by users
MoldableFixed no. processors defined by Resource
Management Systems (RMS)Evolving
Processors vary during execution, initiated by application
MalleableProcessors change during execution, initiated
by RMS
Adaptive Applications
Evolving and malleable applications
Change resources during execution Characteristics of Adaptive Applications
Capable of expanding or shrinking Capable of communicating with RMSCapable of negotiating resources with RMS
May have resource utilization constraints Consist of phases where adaptation can occur
Adaptive RMSCharacteristics
Handle additional scheduling event Release or request of resources from running
evolving applicationsScheduling may involve rescheduling running
applications Request for change in resource allocation Additional degree of freedom with malleable
applicationsNegotiate resource reallocation with running
applications
MotivationAdaptive applications promise
New classes of applications driven by unpredictable data and events
Autonomic computingImproved system utilizationBetter application performance
Current job schedulers and resource management systems are unable to handle adaptive applications efficientlyLack of infrastructure supports Absence of large number of adaptive
applications
Research Objective
To investigate the characteristics of adaptive workload and the RMS, and their impact on system and application performance.
Research Methodology
Investigate through prototype systemInvestigate by modeling and simulation
Research IssuesResource management system (RMS)Programming model for adaptive applicationsScheduling
RMS Requirement for Malleable ApplicationsNegotiate with running malleable applicationsAllocate/Claim resources to/from running
malleable applicationsScheduler
Consider running applications in addition to pending applications Choose candidates to allocate idle resources Choose resource preemption candidates
Resource Negotiation Protocol
Different communication scenarios are possibleSupports all possible negotiation scenariosSupports multi-round and multiple resources
negotiationsThe resource negotiation model consists of two
partiesAny party may initiate the negotiationNegotiation is done by exchanging
Negotiation Template(NT)
Scheduler
Negotiation Manager
Dispatcher
System StateUpdate
Poll Events
Update
Update
invoke
Neg. ListNew Job List
Read State
negotiate
job info
invoke
events
Execution of agreement
Neg. Status
New Job List
Server
user
Job Submission
Mal. Job Registration Job
Completion
Event Handler
Coordinator
Node Controllers
Running Applications
Test Rigid Application
OpenSees (Simulation of structural behavior in response to earthquake)
Implemented using PVMMaster-Slave
(coordinator, computing) Input – host list, structure
listEmbarrassingly parallelExecution time
proportional to number of structure
Coordinator
Computing Computing
Host list & list. of structures
H1 H2
Malleable ApplicationCoordinator capable of
negotiationParameters: Min. and
max. processorsAccept offer as long as
total processors between min. and max.
Create and destroy computing process during execution
Expand 2
Accept 1
Negotiation
Coordinator
Computing Computing
RMS
Host 3
H1 H2
Computing
H3
Experimental SetupScheduling Policy
First Come First Serve (FCFS)Pending jobs have priority over running malleable jobsNo job preemptionExpansion and shrinkage candidates are selected in
chronological order of start timeWorkload
Two workloads 40 jobs 120 jobs
Hardware4 processor Pentium Linux cluster connected by 100mb
Ethernet16 processor Pentium Linux cluster connected by
100mb Ethernet
Experimental Results (120 Job Workload)
Job Mix Vs. TAT
1500
1700
1900
2100
0% 20% 40% 60% 80% 100%
% Malleable Job
Avg
. T
AT
Range 2-5
Range 2-6
Range 2-8
Range 4-8
Job Mix Vs. Utilization
0.86
0.88
0.9
0.920.94
0.96
0.98
1
0% 20% 40% 60% 80% 100%
% of Malleable Job
Uti
liza
tio
n
Range 2-5
Range 2-6
Range 2-8
Range 4-8
Avg. Exe. TAT, and Wait time (Range 2-8)
0
500
1000
1500
2000
2500
0% 20% 40% 60% 80% 100%
% of Malleable Job
Tim
e (S
ec.)
Exe. Time
TAT
Wait Time
Max.improvement Utilization – (87 – 100)% Schedule Span – (5058-4390) Avg. TAT – (1969-1657)
With 10% Malleable Utilization – (87-91)% Schedule Span – (5058-4861) Avg. TAT – (1969-1849)
Conclusions From PrototypePresence of malleable jobs in workload
improved performanceHigh percentage of malleable jobs is not
necessary to make significant improvement in performance
On average for malleable jobs, execution time increased, while turn around time decreased
Overhead of managing malleable jobs is low
Modeling Adaptive System with Malleable JobsDeveloped a model for Adaptive System
WorkloadRMSApplications
Numerically simulated the model with synthetic data
Model of Adaptive Applications (ability to negotiate, ability to shrink and expand, cost of adaptation, time to respond, etc)
Model of Negotiationsand Agreement (performance ofcommunication protocol,Convergence etc.)
Model of Scheduling (policies, objectives, decisions, performance etc)
Model of Management (resources, QoS, eventprocessing, etc)
Model of Resource Reallocation(performance, constraints, etc)
Model of Workload (relative composition of evolving/malleable/rigid, characteristic of evolving applications, etc)
Server Scheduler
User(workload)
Negotiator
Running Jobs
Node Controllers
System Status
Dispatcher
6
3
12
Node Controllers
Running Jobs
Server SchedulerUser Negotiator
8 7
11 14
10
13
4
5
One or Multiple Invocation
9
Dispatcher
Interactions between objects1. Submit Job (Job info) 2. Schedule (System State)3 Negotiate (proposal)4 Offer/Counter offer5 Counter offer6 Accept/Reject Notification7 Negotiation outcome (Agreements)8 Execute (schedule)
9. Execute schedule10 . Execute (Agreement)11. Start New Job (Job execution info)12. Launch Job13. Request for negotiation 14. Complete job (Job completion info)
21
Application ModelAssumptions
Applications are parallelComputation is linearly distributed over time. Applications perform negotiation in a non blocking
mannerApplications can adapt at any point during executionOnly processors are considered as resources
Application consists ofOne coordinating process
Negotiation Adaptation
Multiple computing processesApplication consists of phasesDuring a phase
Processors remain unchangedNegotiation occurs
Adaptation results in phase change
Workload ModelAssumption
Workload consists of rigid and malleable applications only
We need realistic workload dataValidating against real rigid dataDevelop realistic malleable workload
Models available for rigid workload Downy (1997), Feitelson(1998), Lubin (2003) etc.
No model available for malleable workloadSelected Downy’s model for modification to
generate malleable workloadValidated against real dataUsed by researcherOpen source code is available
Workload ModelDowny model
Input: No. of jobs, minimum – maximum runtime, minimum – maximum processors
Output: Set of jobs – arrival time, runtime, processor requirement
Extended Downy modelAdditional input: No. of malleable job,
distribution of malleable job, flexibility range
Output: Set of jobs – job type, arrival time, runtime, processor requirement, flexibility range
Negotiation ModelNegotiation cost depends on
Communication time between RMS and applicationRMS response time to an offerApplication response time to an offerNumber of rounds of negotiation
AssumptionsCommunication time and RMS response time is
constantNegotiations is performed sequentially
Negotiation cost variesFrom application to applicationFrom negotiation to negotiation
Negotiation ModelNegotiation cost is approximated by a
single parameter Cn
Cost is stochastically selected from a random ramp distribution.Probability decreases linearly as cost
increases
Adaptation ModelAdaptation cost depends on
Application’s business logicData structure used by the applicationNumber of processors change during
adaptationAdaptation cost varies
From application to applicationFrom adaptation to adaptation
AssumptionsAdaptation cost is linearly proportional to
the change in the number of processorsAdaptation cost doesn’t vary from shrinkage
to expansion
Experimental Design for Investigation of Impact of Parameters on Performance
Each of the parameters were varied while the others kept constantTo isolate the impact of one parameter on
performanceSimulation Data
No of jobs: 1000Runtime: 100 – 3600 secondsFlexibility: 2-128 processors
Parameters
% of Malleable jobs10% -100% in steps of 10
Flexibility of Malleable Jobs2-16, 2-32, 2-64, 2-80, 2-96, 2-112, and 2-128 4-130, 8-134, 12-138, and 16-142
Cost of Negotiation0.0015, 0.003, 0.006, 0.006, 0.0012, 0.012, 0.024,
0.048, 0.96, 0.2, 0.4, 0.8, 2, 4, and 8 seconds. Cost of Adaptation
0.002, 0.004, 0.008, 0.01, 0.02, 0.04, 0.08, 0.2, 0.4, 0.8, 1 second, 2, 4, and 8 seconds
Performance With % of Malleable JobsUtilization as Function of Job Mix
(256 Processors)
0.8
0.85
0.9
0.95
1
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Uti
liza
tio
n
Utilization as Function of Job Mix (256 Processors)
0.8
0.85
0.9
0.95
1
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Uti
liza
tio
n
Negotiation Cost: 0.0015 Secs.
Adaptation Cost: 0.002 Secs
%Mal Util (256) Util (512)
0 0.84381 0.91165
10 0.92574 0.98121
20 0.99747 0.99186
30 0.9993 0.99112
40 0.99873 0.99447
50 0.9998 0.99178
60 0.9998 0.9986
70 0.99849 0.98803
80 0.99874 0.99327
90 0.99979 0.99488
100 0.99974 0.99629
Avg. TAT With % of Malleable Jobs
%Mal ATAT(256) ATAT (512)
0 109741.53 47580.25
10 101443.34 44222.12
20 93002.55 42997.66
30 92724.88 43387
40 91822.17 42441.01
50 91913.7 42602.09
60 91607.62 42293.82
70 89184.86 40295.11
80 88069.52 38929.32
90 89398.57 38909.31
100 86115.01 38235.4
Negotiation Cost: 0.0015 Secs.
Adaptation Cost: 0.002 Secs
Avg. TAT as Function of Job Mix (1000 Jobs)
80000
84000
88000
92000
96000
100000
104000
108000
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Avg
. T
AT
(S
eco
ns)
Avg. TAT as Function of Job Mix (1000 Jobs)
35000
39000
43000
47000
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Avg
. T
AT
(S
eco
ns)
Wait, Avg. TAT and Execution Time as function of % of Malleable Jobs
Variation of Avg. Wait, TAT and Execution Time
0
20000
40000
60000
80000
100000
0 10 20 30 40 50 60 70 80 90 100 110
% of Malleable Job
Tim
e (S
ecs.
)
Ave. Wait
Avg. TAT
Aveg. Exec.
% Mal Wait TAT EXEC
0 108791 109741.5 950.56
10 100387.1 101443.3 1056.28
20 90624.57 93002.55 2377.91
30 88932.34 92724.88 3792.46
40 85735.85 91822.17 6086.27
50 84927.36 91913.7 6986.33
60 81548.7 91607.62 10058.87
70 75677.15 89184.86 13507.7
80 72678.14 88069.52 15391.36
90 72811.11 89398.57 16587.46
100 62995.61 86115.01 23119.4
Negotiation Cost: 0.0015 Secs.
Adaptation Cost: 0.002 Secs
Cluster Size: 256 Processors
Summary of Performance with the Variation of Number of Malleable JobsUtilization improves as number of malleable jobs
increasesImprovement saturatesIt is possible achieve maximum utilization with
malleable workload The maximum possible utilization can be achieved
with relatively few malleable jobsAverage turn around time decreases as the
number of malleable jobs increases As the number of malleable jobs increases, the job
execution time increases on average, but the average turn around time decreases. This is because with higher number of malleable jobs, a job has to wait less in the pending queue.
Performance Variation with Lower Bound of Flexibility
Utilization as Function of Minimum Processors (flexibility: 126 processors)
0.89
0.91
0.93
0.95
0.97
0.99
1.01
0 4 8 12 16
Minumum Processors
Uti
lizat
ion
10%
20%
30%
40%
50%
Avg. TAT as function of Minimum Processors (Flexibility: 126 processors
90000
92000
94000
96000
98000
100000
102000
104000
0 4 8 12 16
Minimum Processors
Avg
. T
AT
(se
cs)
10%
20%
30%
40%
50%
Utilization Avg. TATMin. Proc 10 20 30 40 50 10 20 30 40 50
2 0.92574 0.99747 0.9993 0.99873 0.9998 101443.3 93002.55 92724.88 91822.17 91913.74 0.92189 0.99313 0.99962 0.99912 0.99984 101744.2 93733.95 92739.16 92330.06 92231.668 0.91567 0.9827 0.99703 0.99954 0.99912 102379.9 94956.08 93043.13 92599.53 92526.8
12 0.909 0.97298 0.99186 0.99934 0.99466 102688.9 95712.59 93537.43 92742.73 93050.0416 0.90492 0.96574 0.98306 0.99867 0.99313 103083.8 96507.57 94111.55 92804.52 93188.3
Utilization Variation with FlexibilityVariation of Utilization with Number of Malleable Jobs in the
Workload
0.850.870.890.910.930.950.970.991.01
0 10 20 30 40 50 60 70 80 90 100 110
% of Malleable Jobs
Uti
liza
tio
n
14
30
46
62
78
94
110
126
% Mal 2--16 2--32 2--48 2--64 2--80 2--96 2--112 2--12814 30 46 62 78 94 110 126
10 0.86461 0.90117 0.91404 0.91949 0.92277 0.92494 0.92574 0.9257420 0.92978 0.97413 0.98862 0.99095 0.99454 0.99745 0.99683 0.9974730 0.94403 0.97482 0.98663 0.99048 0.99409 0.99677 0.99813 0.999340 0.94996 0.97972 0.98922 0.9941 0.9985 0.99813 0.99824 0.9987350 0.94501 0.97416 0.9877 0.99301 0.99636 0.99802 0.99976 0.999860 0.9504 0.98193 0.9912 0.99749 0.99825 0.99873 0.9994 0.999870 0.94572 0.98252 0.98595 0.98888 0.99312 0.99574 0.99723 0.9984980 0.94963 0.97515 0.98865 0.99431 0.99825 0.99858 0.9984 0.9987490 0.94424 0.97468 0.98505 0.99232 0.99708 0.99821 0.99948 0.99979
100 0.9555 0.98035 0.98943 0.99612 0.99893 0.99856 0.99935 0.99974
Variation of Utilization with Fexibility of Malleable Jobs
0.850.870.890.910.930.950.970.991.01
0 20 40 60 80 100 120 140
Flexibilty
Uti
liza
tio
n
10%
20
30
100%
Avg. TAT Variation with Flexibility
Impact of Flexibility on Avg. TAT for Fixed Minimum processors
84000
88000
92000
96000
100000
104000
0 10 20 30 40 50 60 70 80 90 100 110
% of Malleable Jobs
Uti
liza
tio
n
14
30
46
62
78
Impact of Flexibility on Avg. TAT for Fixed Minimum processor
84000
88000
92000
96000
100000
104000
0 20 40 60 80 100 120 140
Flexibilty (processors)
Avg
. T
AT
(S
ecs)
10%
20
30
100%
% Mal 2--16 2--32 2--48 2--64 2--80 2--96 2--112 2--12814 30 46 62 78 94 110 126
10 102390 101677 101409 101487 101463 101444 101443 10144320 93540 92894 92898 92919 92900 92917 93008 9300230 92640 92701 92699 92698 92717 92726 92719 9272440 91831 91748 91843 91797 91788 91813 91813 9182250 91965 91893 91885 91914 91872 91911 91915 9191360 91400 91590 91423 91385 91458 91442 91553 9160770 88826 89074 89240 89422 89177 89150 89306 8918480 88184 88360 88256 87996 88074 88262 88015 8806990 89063 89088 89546 88863 88814 89248 89224 89398
100 86293 86160 86136 86124 86125 86122 86118 86115
Summary of Performance with the Variation of FlexibilityPerformance decreases as the lower bound of
flexibility increasesThe impact of lower bound decreases as the
number of malleable job increases For a given flexibility utilization increases
with the number of malleable jobs and saturates
At saturation point, utilization increases as flexibility increases and saturates at certain flexibility
Variation of Utilization with Negotiation Cost
Neg Cost Utilization10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
0.0015 0.92574 0.99747 0.9993 0.99873 0.9998 0.9998 0.99849 0.99874 0.99979 0.999740.003 0.92574 0.99739 0.9993 0.99873 0.99979 0.99879 0.99849 0.99873 0.99979 0.999740.006 0.92573 0.99738 0.99928 0.99949 0.99978 0.99983 0.999848 0.99873 0.99978 0.999740.012 0.92573 0.99746 0.99926 0.99869 0.99976 0.99978 0.99846 0.99871 0.99977 0.999740.024 0.92574 0.99739 0.99927 0.99866 0.99973 0.99974 0.99842 0.99868 0.99976 0.999740.048 0.92571 0.99738 0.99923 0.99849 0.99964 0.99968 0.99817 0.99864 0.9993 0.999730.096 0.92569 0.99725 0.99913 0.99862 0.99948 0.99948 0.9982 0.99537 0.99924 0.99972
0.2 0.92564 0.99704 0.99866 0.99662 0.99866 0.99874 0.99758 0.99825 0.99951 0.99970.4 0.92554 0.996 0.99697 0.99679 0.99729 0.99669 0.9968 0.997 0.99903 0.999650.8 0.92512 0.99553 0.99642 0.9929 0.99527 0.99544 0.99472 0.99074 0.99729 0.99956
2 0.92433 0.99307 0.99279 0.98726 0.98848 0.98816 0.9877 0.99096 0.99528 0.999234 0.9221 0.9864 0.9816 0.97445 0.96888 0.97615 0.97734 0.98686 0.98974 0.998758 0.92051 0.97961 0.96659 0.94554 0.94841 0.94637 0.95367 0.96609 0.96609 0.9967
Utilization as Function of Job Mix
0.9
0.92
0.94
0.96
0.98
1
1.02
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Uti
lizat
ion
8 Secs.
4 Secs
2 Secs.
.0015 Secs
0.8 Secs
Utilization as function of Negotiation Cost
0.9
0.92
0.94
0.96
0.98
1
1.02
0 1 2 3 4 5 6 7 8 9
Negotiation Cost (Seconds)
Uti
liza
tio
n
10% 20% 60% 100%
Variation of Avg. TAT with Negotiation Cost
Avg. TAT as Function of Job Mix
8400086000880009000092000940009600098000
100000102000104000
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Avg
. T
AT
(S
ecs)
1.5 ms
2 Sec.
4 Sec.
8 Sec.
0.8 Secs
Avg. TAT as Function of Negotiation Cost
85000
90000
95000
100000
105000
0 1 2 3 4 5 6 7 8 9
Negotiation Cost (Secs.)
Avg
. T
AT
(S
ecs.
)
10%
20%
60%
100%
Neg Cost Average Turn Around Time10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
0.0015 101443 93002 92724 91822 91913 91607 89184 88069 89398 861150.003 101443 93003 92725 91822 91914 91608 89185 88070 89398 861150.006 101443 93003 92725 91817 91915 91554 89186 88071 89399 861150.012 101444 93005 92726 91843 91917 91590 89187 88073 89399 861150.024 101445 93006 92742 91829 91918 91592 89192 88077 89401 861150.048 101446 93007 92747 91852 91913 91523 89345 88090 89327 861150.096 101447 92977 92740 91829 91959 91567 89385 88144 89332 86115
0.2 101452 93061 92758 92078 92060 91549 89384 88424 89420 861150.4 101461 93083 92939 91933 92117 91827 89448 88372 89363 861160.8 101485 93156 92856 92477 92342 91915 89595 88570 89396 86117
2 101581 93367 93278 92846 93026 92776 90359 88679 90057 861594 101710 93921 94559 94777 94821 94181 90910 89306 90387 861448 101902 94691 95637 97250 97339 96759 93732 92122 90857 86374
Variation of Number of Negotiation with Variation of Number of Malleable Jobs
% Mal No.of Neg.0 0
10 59920 169930 275040 370950 407260 609070 610680 463690 2882
100 306
Variation of Negotiation with Number of Malleable Jobs
0
1000
2000
3000
4000
5000
6000
7000
0 10 20 30 40 50 60 70 80 90 100
% of Malleable JobsN
o.
of
Neg
oti
atio
ns
Summary of Performance with the Variation of Negotiation Cost
Negotiation cost up to 0.8 second has no significant impact on performance
Negotiation cost doesn’t impact 10% and 100% job mixes
For the same negotiation cost as the number of malleable job increases the utilization decreases, and then the utilization increases as the number of malleable increases further
Variation of Utilization with Adaptation Cost
Impact of Adaptation Cost
0.8
0.85
0.9
0.95
1
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Uti
liza
tio
n
2 ms.
0.08 Sec.
1 Secs.
2 Secs.
4 Secs.
8 Secs.
Impact of Adaptation Cost
0.88
0.9
0.92
0.94
0.96
0.98
1
1.02
0 1 2 3 4 5 6 7 8
Adaptation Cost (Secs.)
Uti
liza
tio
n
10%
20%
30%
40%
50%
Adaptation UtilizationCost 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
0.002 0.92574 0.99747 0.9993 0.99873 0.9998 0.9998 0.99849 0.99874 0.99979 0.999740.004 0.92574 0.99733 0.99907 0.99894 0.99973 0.99974 0.99844 0.99879 0.99973 0.999710.008 0.92574 0.99737 0.99882 0.99874 0.99961 0.99963 0.99852 0.99863 0.9996 0.999640.01 0.92574 0.99727 0.99867 0.99867 0.9995 0.99958 0.99861 0.99847 0.99954 0.999610.02 0.92574 0.99645 0.99879 0.99894 0.99923 0.99931 0.99797 0.99816 0.9989 0.999450.04 0.92568 0.99618 0.99829 0.99801 0.99858 0.99882 0.99753 0.99769 0.99822 0.999130.08 0.9267 0.99544 0.99737 0.99652 0.99747 0.99736 0.99668 0.99588 0.99708 0.998490.2 0.92542 0.9899 0.99263 0.99259 0.99387 0.99505 0.99346 0.99192 0.99353 0.996580.4 0.92512 0.98514 0.98681 0.98795 0.98917 0.98933 0.98866 0.98433 0.98802 0.993280.8 0.9233 0.97772 0.97528 0.97671 0.97995 0.97863 0.98058 0.97214 0.97787 0.98677
1 0.92256 0.97392 0.97156 0.97412 0.97773 0.97598 0.97581 0.96689 0.97184 0.984362 0.91823 0.95577 0.95832 0.94937 0.95843 0.95465 0.95107 0.94149 0.94814 0.970864 0.91612 0.94205 0.93835 0.92872 0.93403 0.9289 0.92023 0.89598 0.90425 0.947318 0.9032 0.90535 0.90638 0.89453 0.90023 0.88113 0.87146 0.84255 0.86391 0.91249
Variation of Avg. TAT with Adaptation Cost
Impact of Adaptation Cost
84000
89000
94000
99000
0 10 20 30 40 50 60 70 80 90 100
% of Malleable Jobs
Avg
. T
AT
(S
ecs.
)
2 ms.
0.4 Secs.
1 Secs.
2 Secs.
4 Secs.
8 Secs.
Impact of Adaptation Cost on Avg. TAT
91000
93000
95000
97000
99000
101000
0 1 2 3 4 5 6 7 8
Adaptation Cost (Secs.)
Avg
. T
AT
(Sec
s.)
10%20%30%40%50%
Adaptation TATCost 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
0.002 101443 93002 92724 91822 91913 91607 89184 88069 89398 861150.004 101443 93008 92741 91815 91918 91609 89187 88226 89402 861150.008 101443 92995 92696 91817 91874 91612 89261 88109 89408 861160.01 101443 93003 92756 91820 91968 91614 89008 88025 89411 861170.02 101444 93017 92733 91859 91946 91540 89045 88244 89288 861190.04 101452 93069 92828 91897 92019 91577 89265 88399 89300 861230.08 101456 93134 92865 91959 92097 91567 89400 88376 89259 861330.2 101475 93610 93197 92211 92279 91932 89493 88489 89670 861590.4 101476 94007 93668 92605 92591 92057 89797 88964 90222 862000.8 101391 94545 94761 93129 93081 92767 90145 89974 90609 86259
1 101397 94722 94954 93262 93149 92852 90308 89866 90560 862672 101566 96088 95352 94754 94143 93787 91494 91340 92057 863784 101557 96500 96069 95469 95430 94421 92818 93935 94133 865568 101793 97737 97504 96220 96064 95308 94386 95679 95812 86788
Summary of Performance with the Variation of Adaptation Cost
Performance decreases as adaptations cost increases
Adaptation cost doesn’t impact 10% and 100% job mixes significantly
The impact of adaptation cost on performance more pronounced compared to the impact of negotiation cost
Conclusions From SimulationPerformance improves as number of malleable jobs
increases and it is possible to achieve maximum utilization with relatively few malleable jobs
Performance decreases as the lower bound of flexibility increases
The impact of lower bound decreases as the number of malleable job increases
For a given flexibility, utilization increases with the number of malleable jobs and saturates
Negotiation cost does not have significant impact on performance
Adaptation cost impact performance significantlyNumber of negotiation varies with the number of malleable
applications in the workload
Future WorkScheduling algorithm
Policy regarding selection of negotiation candidatesFailed Negotiation
Further investigation of impact of flexibilityLate release of resourcesModel involving evolving applicationsProgramming model for adaptive applicationsExtending the present work in Grid
environment
AcknowledgementDr. Tomasz HauptDr. Ioana BanicescuMahbubur Rashid and Satya GosulaCenter for Advanced Vehicular Systems at
Mississippi State UniversityDepartment of Computer Science and
Engineering at Mississippi State UniversityDepartment of Computer Science at Tennessee
Technological UniversityNSF Grant EIA 0103594
References1. D. G. Feitelson and L. Rudolph, “Towards convergence in job scheduling for parallel
super computers,” in Job Scheduling Strategies for Parallel Processing, Vol. 1162, Lecture Notes in Computer Science D. G. Feitelson and L. Rudolph Eds. Springer-Verilag, 1996, pp 1-26.
2. S.S. Vadhiyar and J. Dongarra, “SRS: A framework for developing malleable and migratable parallel applications for distributed systems”, Parallel Processing Letters, Vol. 13, No. 2 (2003) 291-312
3. J. Hungershofer, “On the Combined Scheduling of Malleable and Rigid Jobs”, in Proceedings of the 16th Symposium on Computer Architecture and High Performance Computing, 2004.
4. J. Hungershofer, A. Streit, and Jens-Michael Wierum. Efficient Resource Management for Malleable Applications. Technical Report PC2, TR-003-01, December 2001, http://wwwcs.upb.de/pc2/papers/files/394.pdf
5. J. E. Moreira and V. K. Naik. Dynamic Resource Management on Distributed Systems Using Reconfigurable Applications. IBM Journal of Research and Development, Vol. 41, No. 3, May 1997, pp 303 – 330
6. R. Jha, M. Muhammad, S. Yalamanchili, K. Schwan, D. Ivan Rosu, and C. de Castro, "Adaptive resource allocation for embedded parallel applications", in Proceedings of the 3rd International Conference on High Performance Computing", Trivandrum India, December 1996.
7. D. Ivan Rosu, K. Schwan, S. Yalamanchili, and R. Jha, "On adaptive resource allocation for complex real-time applications", in Proceedings of the 18th IEEE Real-Time Systems Symposium, San Francisco, December 1997.
References8. Allen B. Downey, ``A Parallel Workload Model and Its
Implications for Processor Allocation''. 6th Intl. Symp. High Performance Distributed Comput., Aug 1997.
9. Uri Lublin and Dror G. Feitelson, The Workload on Parallel Supercomputers: Modeling the Characteristics of Rigid Jobs. J. Parallel & Distributed Comput. 63(11), pp. 1105-1122, Nov 2003.
10. D. G. Feitelson, ``Packing schemes for gang scheduling”. In Job Scheduling Strategies for Parallel Processing, D. G. Feitelson and L. Rudolph (Eds.), Springer-Verlag, 1996, Lect. Notes Comput. Sci. vol. 1162, pp. 89-110.
11. Open System for Earthquake Engineering Simulations, http://opensees.Berkeley.edu