concurrent and distributed programming patterns
DESCRIPTION
Concurrent and Distributed Programming Patterns. Carlos Varela RPI April 26, 2010. Overview. A motivating application in AstroInformatics Programming techniques and patterns farmer-worker computations, iterative computations, peer-to-peer agent networks, - PowerPoint PPT PresentationTRANSCRIPT
-
Concurrent and Distributed Programming Patterns
Carlos VarelaRPI
April 26, 2010
C. Varela
-
OverviewA motivating application in AstroInformaticsProgramming techniques and patternsfarmer-worker computations, iterative computations, peer-to-peer agent networks, soft real-time: priorities, delayscausal connections: named tokens, waitfor propertyDistributed runtime architecture (World-Wide Computer)architecture and implementationdistributed garbage collectionAutonomic computing (Internet Operating System)autonomous migrationsplit and mergeDistributed systems visualization (OverView)
C. Varela
-
Milky Way Origin and StructurePrincipal Investigators:H. Newberg (RPI Astronomy), M. Magdon-Ismail, B. Szymanski, C. Varela (RPI CS)Students:N. Cole (RPI Astronomy), T. Desell, J. Doran (RPI CS)Problem Statement:What is the structure and origin of the Milky Way galaxy?How to analyze data from 10,000 square degrees of the north galactic cap collected in five optical filters over five years by the Sloan Digital Sky Survey?Applications/Implications:Astrophysics: origins and evolution of our galaxy.Approach:Experimental data analysis and simulationTo use photometric and spectroscopic data for millions of stars to separate and describe components of the Milky WaySoftware: Generic Maximum Likelihood Evaluation (GMLE) framework.MilkyWay@Home BOINC project.
C. Varela
-
How Do Galaxies Form?Ben Moore, Inst. Of Theo. Phys., Zurich
C. Varela
-
Tidal StreamsSmaller galaxy gets tidally disrupted by larger galaxy
Good tracer of galactic potential/dark matter
Sagittarius Dwarf Galaxy currently being disrupted
Three other known streams thought to be associated with dwarf galaxiesKathryn V. Johnston, Wesleyan Univ.
C. Varela
-
Sloan Digital Sky Survey DataSDSS~ 9,600 sq. deg.~ 287, 000, 000 objects~ 10.0 TB (images)
SEGUE~ 1,200 sq. deg. ~ 57, 000, 000 objects
GAIA (2010-2012)Over one billion estimated starshttp://www.sdss.org
C. Varela
-
Map of Rensselaer Grid ClustersCS CS /WCLMultiscaleBioscience ClusterMultipurpose ClusterNanotechCCNI
C. Varela
- Maximum Likelihood Evaluation on RPI Grid and BlueGene/L Supercomputer~100x Speedup1.5 Day Runtime~230x Speedup
-
Programming Patterns
C. Varela
-
Farmer Worker Computations Most common Massively Parallel type of computation Workers repeatedly request tasks or jobs from farmer and process them
C. Varela
-
Farmer Worker Computations. . .FarmerWorker 1Worker ngetgetgetgetgetrecrecrecrecrecprocessprocessprocess
C. Varela
-
Iterative Computations Common pattern for partial differential equations, scientific computing and distributed simulation Workers connected to neighbors Data location dependent Workers process an iteration with results from neighbors, then send results to neighbors Performance bounded by slowest worker
C. Varela
-
Iterative Farmer/Worker. . .FarmerWorker 1Worker nprocessprocessprocessprocessprocessprocessprocess
C. Varela
-
Iterative P2PWorker 1Worker 2Worker 3Worker 4comm.processcomm.processcomm.process
C. Varela
-
Case Study: Heat Diffusion ProblemA problem that models heat transfer in a solid
A two-dimensional mesh is used to represent the problem data space
An Iterative Application
Highly synchronized
C. Varela
-
Parallel Decomposition of the Heat Problem
C. Varela
-
Peer-to-Peer Computations
C. Varela
-
Peer-to-peer systems (1)Network transparency works well for a small number of nodes; what do we do when the number of nodes becomes very large?This is what is happening nowWe need a scalable way to handle large numbers of nodesPeer-to-peer systems provide one solutionA distributed system that connects resources located at the edges of the InternetResources: storage, computation power, information, etc.Peer software: all nodes are functionally equivalentDynamicPeers join and leave frequentlyFailures are unavoidable
C. Varela
-
Peer-to-peer systems (2)Unstructured systemsNapster (first generation): still had centralized directoryGnutella, Kazaa, (second generation): neighbor graph, fully decentralized but no guarantees, often uses superpeer structureStructured overlay networks (third generation)Using non-random topologiesStrong guarantees on routing and message deliveryTesting on realistically harsh environments (e.g., PlanetLab)DHT (Distributed Hash Table) provides lookup functionalityMany examples: Chord, CAN, Pastry, Tapestry, P-Grid, DKS, Viceroy, Tango, Koorde, etc.
C. Varela
-
Examples of P2P networksHybrid (client/server)Napster
Unstructured P2PGnutella
Structured P2PExponential networkDHT (Distributed Hash Table), e.g., ChordR = N-1 (hub)R = 1 (others)H = 1R = ? (variable)H = 17(but no guarantee)R = log NH = log N(with guarantee)
C. Varela
-
Properties ofstructured overlay networksScalableWorks for any number of nodesSelf organizingRouting tables updated with node joins/leavesRouting tables updated with node failuresProvides guaranteesIf operated inside of failure model, then communication is guaranteed with an upper bound on number of hopsBroadcast can be done with a minimum number of messagesProvides basic servicesName-based communication (point-to-point and group)DHT (Distributed Hash Table): efficient storage and retrieval of (key,value) pairs
C. Varela
-
Self organizationMaintaining the routing tablesCorrection-on-use (lazy approach)Periodic correction (eager approach)Guided by assumptions on trafficCostDepends on structureA typical algorithm, DKS (distributed k-ary search), achieves logarithmic cost for reconfiguration and for key resolution (lookup)Example of lookup for Chord, the first well-known structured overlay network
C. Varela
-
Chord: lookup illustratedIndicates presence of a nodeGiven a key, find the value associated to the key (here, the value is the IP address of the node that stores the key)Assume node 0 searches for the value associated to key K with virtual identifier 7Interval node to be contacted [0,1)0 [1,2)6 [2,4)6 [4,8)6 [8,0)12
C. Varela
-
Soft Real-Time
C. Varela
-
Message PropertiesSALSA provides message properties to control message sending behavior:
priorityTo send messages with priority to an actor
delayTo delay sending a message to an actor for a given time
waitforTo delay sending a message to an actor until a token is available
C. Varela
-
Priority Message Sending
To (asynchronously) send a message with high priority:
a
-
Delayed Message Sending
To (asynchronously) send a message after a given delay in milliseconds:
a
-
Causal Connections
C. Varela
-
Synchronized Message Sending
To (asynchronously) send a message after another message has been processed:
token fundsOk = bank
-
Named TokensTokens can be named to enable more loosely-coupled synchronization
Example:
token t1 = a1
-
Named Tokens (Multicast)Named tokens enable multicast:
Example:
token t1 = a1
-
Named Tokens (Loops)Named tokens allow for synchronized loops:
Example 1:token t1 = initial; for (int i = 0; i < n; i++) {t1 = a
-
Join BlocksJoin blocks allow for synchronization over multiple messagesJoin blocks return an array of objects (Object[]), containing the results of each message sent within the join block. The results are in the same order as how the messages they were generated by were sent.
Example:token t1 = a1
-
Current ContinuationsCurrent continuations allow for first class access to a messages continuationCurrent continuations facilitate writing recursive computationsExample:int fibonacci(int n) {if (n == 0) return 0;else if (n == 1 || n == 2) return 1;else {token a = fibonacci(n - 1);token b = fibonacci(n - 2);add(a, b) @ currentContinuation;}}Finds the nth fibonacci number. The result of add(a, b) is sent as the return value of fibonacci to the next message in the continuation.
C. Varela
-
Current Continuations (Loops)Current Continuations can also be used to perform recursive loops:Example:void loop(int n) {if (n == 0) {m(n) @currentContinuation;} else {loop(n 1) @m(n) @currentContinuation;}}Sends the messages m(0), m(1), m(2) ...m(n). m(i) is always processed after m(i-1).
C. Varela
- Current Continuations (Delegation)Current Continuations can also be used to delegate tasks to other actors:Example:String getAnswer(Object question) {if (question instanceof Question1) {knowsQ1
-
Distributed run-time (WWC)
C. Varela
-
World-Wide Computer ArchitectureSALSA application layerProgramming language constructs for actor communication, migration, and coordination.
IOS middleware layerA Resource Profiling ComponentCaptures information about actor and network topologies and available resourcesA Decision ComponentTakes migration, split/merge, or replication decisions based on profiled informationA Protocol ComponentPerforms communication between nodes in the middleware system
WWC run-time layerTheaters provide runtime support for actor execution and access to local resourcesPluggable transport, naming, and messaging services
C. Varela
-
WWC TheatersTheater address and port.Actor location.
C. Varela
-
SchedulingThe choice of which actor gets to execute next and for how long is done by a part of the system called the scheduler
An actor is non-blocked if it is processing a message or if its mailbox is not empty, otherwise the actor is blocked
A scheduler is fair if it does not starve a non-blocked actor, i.e. all non-blocked actors eventually execute
Fair scheduling makes it easier to reason about programs and program compositionOtherwise some correct program (in isolation) may never get processing time when composed with other programs
C. Varela
-
Remote Message Sending Protocol
Messages between remote actors are sent using the Remote Message Sending Protocol (RMSP).RMSP is implemented using Java object serialization.RMSP protocol is used for both message sending and actor migration.When an actor migrates, its locator (UAL) changes but its name (UAN) does not.
C. Varela
-
Universal Actor Naming Protocol
C. Varela
-
Universal Actor Naming Protocol
UANP includes messages for:
Binding actors to UAN, UAL pairsFinding the locator of a universal actor given its UANUpdating the locator of a universal actor as it migratesRemoving a universal actor entry from the naming service
SALSA programmers need not use UANP directly in programs. UANP messages are transparently sent by WWC run-time system.
C. Varela
-
UANP Implementations
Default naming service implementation stores UAN to UAL mapping in name servers as defined in UANs. Name server failures may induce universal actor unreachability.
Distributed (Chord-based) implementation uses consistent hashing and a ring of connected servers for fault-tolerance. For more information, see:
Camron Tolman and Carlos Varela. A Fault-Tolerant Home-Based Naming Service For Mobile Agents. In Proceedings of the XXXI Conferencia Latinoamericana de Informtica (CLEI), Cali, Colombia, October 2005. Tolman C. A Fault-Tolerant Home-Based Naming Service for Mobile Agents. Master's Thesis, Rensselaer Polytechnic Institute, April 2003.
C. Varela
-
Actor Garbage Collection
Implemented since SALSA 1.0 using pseudo-root approach.Includes distributed cyclic garbage collection.For more details, please see:
Wei-Jen Wang and Carlos A. Varela. Distributed Garbage Collection for Mobile Actor Systems: The Pseudo Root Approach. In Proceedings of the First International Conference on Grid and Pervasive Computing (GPC 2006), Taichung, Taiwan, May 2006. Springer-Verlag LNCS.Wei-Jen Wang and Carlos A. Varela. A Non-blocking Snapshot Algorithm for Distributed Garbage Collection of Mobile Active Objects. Technical report 06-15, Dept. of Computer Science, R.P.I., October 2006.
C. Varela
-
Challenge 1: Actor GC vs. Object GC
C. Varela
-
Challenge 2: Non-blocking communicationFollowing references to mark live actors is not safe!
C. Varela
-
Challenge 2: Non-blocking communicationFollowing references to mark live actors is not safe! What can we do?We can protect the reference from deletion and mark the sender live until the sender knows the message has arrived ABBlockedActorMessageReferenceMarkedLiveActorProtectedReference
C. Varela
-
Challenge 2: Non-blocking communication (continued)How can we guarantee the safety of an actor referenced by a message?The solution is to protect the reference from deletion and mark the sender live until the sender knows the message has arrived ACBBlockedActorMessageReferenceMarkedLiveActorProtectedReference
C. Varela
-
Challenge 3: Distribution and MobilityWhat if an actor is remotely referenced?We can maintain an inverse reference list (only visible to the garbage collector) to indicate whether an actor is referenced.The inverse reference registration must be based on non-blocking and non-First-In-First-Out communication!Three operations change inverse references: actor creation, reference passing, and reference deletion.Actor Creation
C. Varela
-
Challenge 3: Distribution and Mobility (continued)What if an actor is remotely referenced?We can maintain an inverse reference list (only visible to the garbage collector) to indicate whether an actor is referenced.The inverse reference registration must be based on non-blocking and non-First-In-First-Out communication!Three operations are affected: actor creation, reference passing, and reference deletion.AReference PassingBlockedActorMessageMarkedLiveActorReferenceProtectedReferenceReference inMessageInverseReferenceUnblocked Actor
C. Varela
-
Challenge 3: Distribution and Mobility (continued)What if an actor is remotely referenced?We can maintain an inverse reference list (only visible to the garbage collector) to indicate whether an actor is referenced.The inverse reference registration must be based on non-blocking and non-First-In-First-Out communication!Three operations are involved: actor creation, reference passing, and reference deletion.ABReference PassingBlockedActorMessageMarkedLiveActorReferenceProtectedReferenceReference inMessageInverseReferenceUnblocked Actor
C. Varela
-
Challenge 3: Distribution and Mobility (continued)What if an actor is remotely referenced?We can maintain an inverse reference list (only visible to the garbage collector) to indicate whether an actor is referenced.The inverse reference registration must be based on non-blocking and non-First-In-First-Out communication!Three operations are involved: actor creation, reference passing, and reference deletion.ABReference PassingBlockedActorMessageMarkedLiveActorReferenceProtectedReferenceReference inMessageInverseReferenceUnblocked Actor
C. Varela
-
Challenge 3: Distribution and Mobility (continued)What if an actor is remotely referenced?We can maintain an inverse reference list (only visible to the garbage collector) to indicate whether an actor is referenced.The inverse reference registration must be based on non-blocking and non-First-In-First-Out communication!Three operations are involved: actor creation, reference passing, and reference deletion.ABReference PassingBlockedActorMessageMarkedLiveActorReferenceProtectedReferenceReference inMessageInverseReferenceUnblocked Actor
C. Varela
-
Challenge 3: Distribution and Mobility (continued)What if an actor is remotely referenced?We can maintain an inverse reference list (only visible to the garbage collector) to indicate whether an actor is referenced.The inverse reference registration must be based on non-blocking and non-First-In-First-Out communication!Three operations are involved: actor creation, reference passing, and reference deletion.AReference DeletionBlockedActorMessageMarkedLiveActorReferenceProtectedReferenceReference inMessageInverseReferenceUnblocked Actor
C. Varela
-
The Pseudo Root ApproachPseudo roots:Treat unblocked actors, migrating actors, and roots as pseudo roots.Map in-transit messages and references into protected references and pseudo rootsUse inverse reference list (only visible to garbage collectors) to identify remotely referenced actors Actors which are not reachable from any pseudo root are garbage.
C. Varela
-
Autonomic Computing (IOS)
C. Varela
-
Middleware for Autonomous Computing
MiddlewareA software layer between distributed applications and operating systems.Alleviates application programmers from directly dealing with distribution issuesHeterogeneous hardware/O.S.sLoad balancingFault-toleranceSecurityQuality of service
Internet Operating System (IOS)A decentralized framework for adaptive, scalable executionModular architecture to evaluate different distribution and reconfiguration strategies
K. El Maghraoui, T. Desell, B. Szymanski, and C. Varela, The Internet Operating System: Middleware for Adaptive Distributed Computing, International Journal of High Performance Computing and Applications, 2006.K. El Maghraoui, T. Desell, B. Szymanski, J. Teresco and C. Varela, Towards a Middleware Framework for Dynamically Reconfigurable Scientific Computing, Grid Computing and New Frontiers of High Performance Processing, Elsevier 2005. T. Desell, K. El Maghraoui, and C. Varela, Load Balancing of Autonomous Actors over Dynamic Networks, HICSS-37 Software Technology Track, Hawaii, January 2004. 10pp.
C. Varela
-
Middleware Architecture
C. Varela
-
IOS Architecture
IOS middleware layer
A Resource Profiling ComponentCaptures information about actor and network topologies and available resources
A Decision ComponentTakes migration, split/merge, or replication decisions based on profiled information
A Protocol ComponentPerforms communication with other agents in virtual network (e.g., peer-to-peer, cluster-to-cluster, centralized.)
C. Varela
-
A General Model for Weighted Resource-Sensitive Work-Stealing (WRS)Given:A set of resources, R = {r0 rn}A set of actors, A = {a0 an}w is a weight, based on importance of the resource r to the performance of a set of actors A
0 w(r,A) 1Sall r w(r,A) = 1
a(r,f) is the amount of resource r available at foreign node fu(r,l,A) is the amount of resource r used by actors A at local node lM(A,l,f) is the estimated cost of migration of actors A from l to fL(A) is the average life expectancy of the set of actors A
The predicted increase in overall performance G gained by migrating A from l to f, where G 1:
D(r,l,f,A) = (a(r,f) u(r,l,A)) / (a(r,f) + u(r,l,A))G = Sall r (w(r,A) * D(r,l,f,A)) M(A,l,f)/(10+log L(A))
When work requested by f, migrate actor(s) A with greatest predicted increase in overall performance, if positive.
C. Varela
-
Impact of Process/Actor GranularityExperiments on a dual-processor node (SUN Blade 1000)
C. Varela
helium(mig)
00.474743
2086.782089
4088.158905
6090.70739
8088.218552
10085.802795
12086.569305
14089.33197
16092.708565
18089.262772
20088.702812
22085.851807
24090.599182
26089.386467
28087.976189
30088.997482
32087.704636
34091.577881
36087.471573
38090.504135
40087.975021
42092.79567
44083.936356
46086.790367
48086.230659
50090.302353
52082.62397
54086.577972
56086.503502
58087.154404
60088.893013
62086.213776
64083.602676
66093.021858
68085.583755
70083.192818
72087.645706
74088.523392
76087.473602
78083.532883
80087.192825
82087.034515
84086.865921
86086.795456
88086.193436
90087.813766
92086.545654
94087.695381
96084.267273
98083.800934
100083.295677
102089.985535
104084.44104
106084.400421
108087.500504
110088.505737
112085.460602
114087.14431
116085.925819
118089.893936
120089.007118
122087.795746
124092.967606
126080.903954
128079.571167
130090.006119
132086.772888
134084.099609
136091.938362
138087.300751
140079.706848
142084.6474
144085.237991
146086.849258
148080.819443
150088.165848
152089.310753
154088.89119
156082.881149
158086.319992
160087.415543
162090.451309
164090.076569
166084.188751
168085.963654
170089.766548
172089.864555
174088.732353
176091.65184
178091.197083
180093.34127
182084.228912
184086.379761
186078.116119
188076.426483
190088.659348
192089.592743
194086.280357
196087.549622
198084.368042
200086.658463
202088.049759
204068.087944
206089.365295
208086.556122
210087.887505
212067.077599
214091.325562
216087.721397
218088.288422
220089.446854
222092.826981
224086.226044
226087.789864
228088.605331
230091.572433
232087.717117
234087.081009
236089.437729
238091.18428
240092.467087
242087.032036
244087.56485
246089.965073
248091.461014
250089.665161
252086.711746
254087.492905
256088.274345
258089.691666
260082.944908
262083.133286
264089.207458
266090.851204
268085.909203
270085.272095
272087.215988
274090.545547
276084.383194
278084.650284
280083.528175
282085.16304
284089.271179
286084.93277
288089.392303
290086.740738
292085.621765
294088.755112
296088.048592
298087.347626
300087.154739
302085.659988
304086.341583
306084.319366
308087.018997
310088.15799
312083.926155
314088.20311
316090.851761
318088.144577
320089.552887
322084.861305
324087.036346
326091.345718
328091.879517
330084.014404
332084.985977
334089.917465
336090.562576
338090.066574
340088.358513
342087.751846
344091.339798
346085.110031
348086.97641
350085.078079
352089.334518
354087.837112
356086.097054
358087.046227
360093.047592
362088.649246
364088.561279
366082.618118
368089.271996
370089.662918
372085.043442
374084.112915
376086.494171
378090.640579
380084.336281
382085.394768
384087.65596
386071.885963
388088.57637
390086.731155
392084.371147
394089.09977
396092.525551
398087.913956
400085.658936
402087.745377
404088.871735
406090.171646
408086.476624
410086.893402
412088.615074
414085.257622
416082.058472
418083.091385
420093.081856
422090.776443
424084.037018
426086.744324
428087.006134
430072.561668
432088.165482
434086.855507
436086.413185
438088.309273
440090.293907
442087.587814
444080.342194
446071.512573
448088.675591
450087.40506
452087.613388
454089.347107
456087.623703
458085.759544
460089.324928
462066.411163
464086.716995
466080.37471
468086.195648
470068.812042
472089.555069
474085.659439
476085.41507
478087.169846
480087.421043
482088.178146
484082.270859
486088.021637
488077.968727
490088.203392
492085.957977
494085.09761
496091.278847
498085.478165
500089.83049
502087.88826
504088.122818
506088.579445
508082.414093
510086.844719
512087.453537
514086.687759
516085.469521
518093.211945
520087.169327
522095.428421
524088.22554
526087.561813
528010.682024
530067.870285
532065.649612
534059.604984
536065.672913
538066.892426
540065.859856
542065.010025
544065.404144
546066.402435
548066.516357
550065.825897
552066.147514
554065.2276
556066.124939
558066.237366
560065.326172
562065.400566
564065.752495
566065.869125
568066.530296
570066.038635
572065.86541
574065.168427
576064.730087
578066.446976
580065.246704
582066.199005
584065.456795
586066.487015
588067.240662
590066.974556
592065.61232
594066.021538
596065.269768
598064.142845
helium(mig)
0.474743
86.782089
88.158905
90.70739
88.218552
85.802795
86.569305
89.33197
92.708565
89.262772
88.702812
85.851807
90.599182
89.386467
87.976189
88.997482
87.704636
91.577881
87.471573
90.504135
87.975021
92.79567
83.936356
86.790367
86.230659
90.302353
82.62397
86.577972
86.503502
87.154404
88.893013
86.213776
83.602676
93.021858
85.583755
83.192818
87.645706
88.523392
87.473602
83.532883
87.192825
87.034515
86.865921
86.795456
86.193436
87.813766
86.545654
87.695381
84.267273
83.800934
83.295677
89.985535
84.44104
84.400421
87.500504
88.505737
85.460602
87.14431
85.925819
89.893936
89.007118
87.795746
92.967606
80.903954
79.571167
90.006119
86.772888
84.099609
91.938362
87.300751
79.706848
84.6474
85.237991
86.849258
80.819443
88.165848
89.310753
88.89119
82.881149
86.319992
87.415543
90.451309
90.076569
84.188751
85.963654
89.766548
89.864555
88.732353
91.65184
91.197083
93.34127
84.228912
86.379761
78.116119
76.426483
88.659348
89.592743
86.280357
87.549622
84.368042
86.658463
88.049759
68.087944
89.365295
86.556122
87.887505
67.077599
91.325562
87.721397
88.288422
89.446854
92.826981
86.226044
87.789864
88.605331
91.572433
87.717117
87.081009
89.437729
91.18428
92.467087
87.032036
87.56485
89.965073
91.461014
89.665161
86.711746
87.492905
88.274345
89.691666
82.944908
83.133286
89.207458
90.851204
85.909203
85.272095
87.215988
90.545547
84.383194
84.650284
83.528175
85.16304
89.271179
84.93277
89.392303
86.740738
85.621765
88.755112
88.048592
87.347626
87.154739
85.659988
86.341583
84.319366
87.018997
88.15799
83.926155
88.20311
90.851761
88.144577
89.552887
84.861305
87.036346
91.345718
91.879517
84.014404
84.985977
89.917465
90.562576
90.066574
88.358513
87.751846
91.339798
85.110031
86.97641
85.078079
89.334518
87.837112
86.097054
87.046227
93.047592
88.649246
88.561279
82.618118
89.271996
89.662918
85.043442
84.112915
86.494171
90.640579
84.336281
85.394768
87.65596
71.885963
88.57637
86.731155
84.371147
89.09977
92.525551
87.913956
85.658936
87.745377
88.871735
90.171646
86.476624
86.893402
88.615074
85.257622
82.058472
83.091385
93.081856
90.776443
84.037018
86.744324
87.006134
72.561668
88.165482
86.855507
86.413185
88.309273
90.293907
87.587814
80.342194
71.512573
88.675591
87.40506
87.613388
89.347107
87.623703
85.759544
89.324928
66.411163
86.716995
80.37471
86.195648
68.812042
89.555069
85.659439
85.41507
87.169846
87.421043
88.178146
82.270859
88.021637
77.968727
88.203392
85.957977
85.09761
91.278847
85.478165
89.83049
87.88826
88.122818
88.579445
82.414093
86.844719
87.453537
86.687759
85.469521
93.211945
87.169327
95.428421
88.22554
87.561813
10.682024
67.870285
65.649612
59.604984
65.672913
66.892426
65.859856
65.010025
65.404144
66.402435
66.516357
65.825897
66.147514
65.2276
66.124939
66.237366
65.326172
65.400566
65.752495
65.869125
66.530296
66.038635
65.86541
65.168427
64.730087
66.446976
65.246704
66.199005
65.456795
66.487015
67.240662
66.974556
65.61232
66.021538
65.269768
64.142845
helium(split)
00.475099
2094.160667
4095.725883
6097.109238
8097.815002
10098.452484
12095.35228
14098.066025
16097.3078
18097.530075
20095.433807
22096.643425
24095.020706
26095.093277
28094.537132
30096.989746
32083.098297
34083.075508
36084.612442
38086.480431
40083.403091
42082.672966
44084.305954
46093.074394
48095.451096
50096.275558
52029.454027
54096.76889
56093.423477
58096.010544
60094.385529
62097.271164
64096.10582
66097.006516
68095.925018
70072.312164
72011.971472
74095.030342
76093.486664
78095.804878
80081.274925
82082.939384
84082.520454
86083.678902
88087.105064
90084.193367
92080.267159
94087.473656
96096.485809
98094.967758
100097.884903
102092.084747
104097.483727
106093.719681
108098.886848
110093.652802
112094.457367
114095.320129
116096.966072
118095.236015
120087.776611
122096.197678
124095.267113
126094.178619
128097.124573
130092.827019
132094.029732
134096.853477
136095.784225
138095.428185
140096.279648
142097.31665
144093.158234
146078.725204
148080.055611
150083.039032
152089.277199
154080.910889
156082.010803
158086.766335
160093.501183
162095.598747
164095.23175
166095.621849
168096.069977
170094.940643
172095.843796
174092.820412
176093.355911
178091.609604
180094.51162
182093.545036
184092.856598
186096.373016
188095.208519
190093.26371
192094.563728
194091.677452
196095.700851
198094.971313
200092.953079
202096.04686
204092.873932
206094.123802
208093.519066
210080.101135
212080.060478
214084.504227
216081.117737
218082.748055
220082.130112
222084.955414
224093.388885
226090.518341
228096.753746
230093.696732
232092.956383
234093.424828
236092.265106
238094.695526
240093.789825
242092.143517
244093.060944
246087.103203
248078.511024
250092.150337
252096.592438
254084.407074
256090.082359
258097.550629
260095.292412
262093.291214
264094.509796
266093.928322
268096.221748
270096.445915
272097.156601
274077.033447
276086.450623
278084.146309
280080.915176
282082.2481
284086.421165
286083.729691
288090.882866
290083.522934
292093.33181
294094.112663
296095.34967
298097.403717
300097.907768
302094.996368
304095.918533
306093.73539
308093.608475
310083.15609
312080.692963
314095.331543
316091.066956
318089.409737
320093.775444
322097.938583
324071.915756
326091.388191
328067.793289
330096.97467
332091.643394
334091.741501
336071.344749
338079.257645
340083.109528
342080.9506
344080.915627
346082.050957
348086.781464
350093.02475
352092.158318
354092.88221
356097.317787
358094.246407
360091.393539
362093.51815
364094.87883
366094.521278
368096.363571
370097.533257
372094.063591
374092.922882
376094.259117
378094.127747
380090.574654
382091.469116
384095.348648
386095.864418
388098.01152
390091.056046
392095.533806
394096.849892
396094.143181
398096.265358
400086.022377
402080.927399
404082.685242
406084.716919
408083.651062
410084.075905
412082.091743
414089.078979
416087.463623
418092.733147
420093.760063
422093.653053
424091.851158
426095.604706
428092.229408
430097.295746
432094.76577
434091.118973
436096.185982
438097.321632
440091.377968
442095.965591
444092.970184
446096.230141
448096.813614
450092.100548
452097.085632
454092.532188
456095.452942
458095.9132
460097.047455
462090.450737
464086.305275
466079.319183
468060.144096
470053.521782
472075.703377
474084.688156
476090.167076
478088.501747
480097.618843
482095.227539
484096.626678
486092.607567
488095.710693
490061.335373
492046.853096
494096.61335
496098.779968
498094.931114
500091.006264
502092.509781
504095.141937
506095.852539
508096.121025
510094.021454
512073.13501
514093.009773
516095.644073
518094.45752
520084.716118
522093.025223
524078.718086
526076.176102
528082.052055
530083.484863
532084.230675
534083.132599
536084.800247
538079.236267
540081.069542
542095.014351
544093.27166
546091.642975
548094.274796
550091.480156
552096.221588
554086.690643
556093.356667
558092.375076
560095.034576
562094.292068
564091.009697
566092.012558
568096.693558
570094.206169
572092.46991
574073.043457
576097.459694
578094.819794
580095.123276
582092.887299
584095.970566
586084.77784
588082.320473
590066.105316
592080.119255
594084.412094
596081.163742
598067.287857
helium(split)
0.475099
94.160667
95.725883
97.109238
97.815002
98.452484
95.35228
98.066025
97.3078
97.530075
95.433807
96.643425
95.020706
95.093277
94.537132
96.989746
83.098297
83.075508
84.612442
86.480431
83.403091
82.672966
84.305954
93.074394
95.451096
96.275558
29.454027
96.76889
93.423477
96.010544
94.385529
97.271164
96.10582
97.006516
95.925018
72.312164
11.971472
95.030342
93.486664
95.804878
81.274925
82.939384
82.520454
83.678902
87.105064
84.193367
80.267159
87.473656
96.485809
94.967758
97.884903
92.084747
97.483727
93.719681
98.886848
93.652802
94.457367
95.320129
96.966072
95.236015
87.776611
96.197678
95.267113
94.178619
97.124573
92.827019
94.029732
96.853477
95.784225
95.428185
96.279648
97.31665
93.158234
78.725204
80.055611
83.039032
89.277199
80.910889
82.010803
86.766335
93.501183
95.598747
95.23175
95.621849
96.069977
94.940643
95.843796
92.820412
93.355911
91.609604
94.51162
93.545036
92.856598
96.373016
95.208519
93.26371
94.563728
91.677452
95.700851
94.971313
92.953079
96.04686
92.873932
94.123802
93.519066
80.101135
80.060478
84.504227
81.117737
82.748055
82.130112
84.955414
93.388885
90.518341
96.753746
93.696732
92.956383
93.424828
92.265106
94.695526
93.789825
92.143517
93.060944
87.103203
78.511024
92.150337
96.592438
84.407074
90.082359
97.550629
95.292412
93.291214
94.509796
93.928322
96.221748
96.445915
97.156601
77.033447
86.450623
84.146309
80.915176
82.2481
86.421165
83.729691
90.882866
83.522934
93.33181
94.112663
95.34967
97.403717
97.907768
94.996368
95.918533
93.73539
93.608475
83.15609
80.692963
95.331543
91.066956
89.409737
93.775444
97.938583
71.915756
91.388191
67.793289
96.97467
91.643394
91.741501
71.344749
79.257645
83.109528
80.9506
80.915627
82.050957
86.781464
93.02475
92.158318
92.88221
97.317787
94.246407
91.393539
93.51815
94.87883
94.521278
96.363571
97.533257
94.063591
92.922882
94.259117
94.127747
90.574654
91.469116
95.348648
95.864418
98.01152
91.056046
95.533806
96.849892
94.143181
96.265358
86.022377
80.927399
82.685242
84.716919
83.651062
84.075905
82.091743
89.078979
87.463623
92.733147
93.760063
93.653053
91.851158
95.604706
92.229408
97.295746
94.76577
91.118973
96.185982
97.321632
91.377968
95.965591
92.970184
96.230141
96.813614
92.100548
97.085632
92.532188
95.452942
95.9132
97.047455
90.450737
86.305275
79.319183
60.144096
53.521782
75.703377
84.688156
90.167076
88.501747
97.618843
95.227539
96.626678
92.607567
95.710693
61.335373
46.853096
96.61335
98.779968
94.931114
91.006264
92.509781
95.141937
95.852539
96.121025
94.021454
73.13501
93.009773
95.644073
94.45752
84.716118
93.025223
78.718086
76.176102
82.052055
83.484863
84.230675
83.132599
84.800247
79.236267
81.069542
95.014351
93.27166
91.642975
94.274796
91.480156
96.221588
86.690643
93.356667
92.375076
95.034576
94.292068
91.009697
92.012558
96.693558
94.206169
92.46991
73.043457
97.459694
94.819794
95.123276
92.887299
95.970566
84.77784
82.320473
66.105316
80.119255
84.412094
81.163742
67.287857
Sheet2
07.490973
2033.84758
4032.749069
6032.959015
8032.322052
10033.140774
12032.629959
14031.786472
16033.987293
18033.251747
20032.596863
22033.081169
24033.150963
26033.714836
28034.237488
3009.238776
32031.45035
34031.12178
36031.319952
38033.109306
40029.745787
42030.159721
44030.972061
46032.704418
48023.375616
50030.96682
52029.604544
54030.136154
56032.559471
58033.127254
60031.078342
62029.93869
64031.340496
66030.930185
68031.054916
70032.244289
72030.62429
74029.356953
76030.922527
78031.486511
80033.415516
82030.698757
84031.039177
86029.51347
88029.643295
90029.498489
92031.401558
94029.517046
96031.202847
98031.14299
100015.031887
102034.556271
104036.179813
106035.738132
108035.457066
110035.313858
112035.575542
114033.488766
116033.511913
118035.511948
120035.228951
122035.78294
124034.723812
126035.117363
128032.008633
130034.775486
132034.985172
134035.522327
136035.879284
138034.031437
140034.062233
142035.111481
144035.001545
146035.967472
148020.4245
150057.321999
152055.871265
154054.47879
156053.546959
158055.472202
160053.228703
162055.617363
164053.739338
166058.799328
168051.703331
170055.596733
172055.261108
174056.661938
176056.844498
178055.158386
180056.015427
182057.042915
184056.459438
186051.670151
188058.017769
190054.712982
192054.294964
194057.162521
196052.855431
198054.9189
200056.888977
202056.349503
204055.628307
206053.987213
208054.888191
210057.482475
212051.352528
214052.957409
216057.9632
218051.71402
220054.55188
222055.510872
224053.478615
226056.538574
228054.372177
230051.791515
232051.85387
234053.152756
236053.699192
238056.16217
240053.944302
242057.860531
244052.706093
246038.891552
248040.061146
250058.789318
252058.341045
254051.069916
256056.739349
258055.588776
260055.638443
262057.349831
264055.383617
266050.981583
268057.030621
270056.89534
272053.239281
274055.809402
276054.816936
278056.315971
280057.504028
282053.0392
284054.31464
286056.297119
288058.018948
290053.579201
292045.004356
294055.186466
296057.544048
298050.021263
300056.758224
302051.674511
304048.815731
306057.335526
308051.873737
310056.729164
312017.545601
314053.453369
316053.751705
318054.900879
320054.417236
322053.991371
324055.537674
326054.9552
328052.623699
330052.575577
332054.225178
334052.883026
336053.49408
338052.597282
340052.311371
342054.902081
344052.155937
346052.864994
348052.53334
350051.783161
352055.061718
354052.282364
356043.915031
358035.75869
360045.876755
362052.239735
364052.96825
366053.396423
368053.171211
370051.92704
372054.697418
374052.03215
376052.909931
378052.71067
380052.264038
382054.211891
384053.683887
386057.018417
388053.339409
390052.877178
392053.330524
394051.848927
396055.503071
398053.210861
400051.929901
402052.273903
404051.52887
406052.264709
408055.400238
410053.90588
412053.174789
414022.007481
416053.559669
418054.65731
420055.152344
422056.178463
424053.597927
426051.720104
428054.392029
430051.67672
432052.340294
434050.952728
436052.239883
438052.930828
440053.306396
442053.366264
444053.836849
446053.57325
448052.155712
450053.2131
452051.117851
454055.011951
456052.944054
458052.865562
460050.852966
462051.085396
464049.57008
466053.576942
468051.049953
470052.061947
472053.887619
474053.467896
476051.747021
478052.240242
480054.424454
482053.9048
484052.656437
486055.363266
488052.749706
490053.095268
492054.093826
494053.992416
496051.328629
498052.03672
500052.668419
502054.850445
504052.109558
506052.080616
508050.285126
510052.179764
512052.256275
514053.530296
516051.918316
518053.18631
520054.173599
522054.875748
524052.952965
526054.061806
528054.930111
530054.384876
532054.081223
534056.469662
536050.369919
538052.617455
540052.388699
542051.436142
544053.242325
546051.021019
548052.841198
550053.737804
552053.407883
554051.23283
556052.096313
558053.412483
560053.782333
562052.467503
564057.069641
566053.952709
568051.89563
570055.045727
572053.982658
574052.945526
576055.009964
578053.788242
580052.578209
582051.234379
584052.090042
586052.09428
588053.163422
590051.449097
592054.669586
594052.867271
596051.608002
598054.312637
Sheet2
7.490973
33.84758
32.749069
32.959015
32.322052
33.140774
32.629959
31.786472
33.987293
33.251747
32.596863
33.081169
33.150963
33.714836
34.237488
9.238776
31.45035
31.12178
31.319952
33.109306
29.745787
30.159721
30.972061
32.704418
23.375616
30.96682
29.604544
30.136154
32.559471
33.127254
31.078342
29.93869
31.340496
30.930185
31.054916
32.244289
30.62429
29.356953
30.922527
31.486511
33.415516
30.698757
31.039177
29.51347
29.643295
29.498489
31.401558
29.517046
31.202847
31.14299
15.031887
34.556271
36.179813
35.738132
35.457066
35.313858
35.575542
33.488766
33.511913
35.511948
35.228951
35.78294
34.723812
35.117363
32.008633
34.775486
34.985172
35.522327
35.879284
34.031437
34.062233
35.111481
35.001545
35.967472
20.4245
57.321999
55.871265
54.47879
53.546959
55.472202
53.228703
55.617363
53.739338
58.799328
51.703331
55.596733
55.261108
56.661938
56.844498
55.158386
56.015427
57.042915
56.459438
51.670151
58.017769
54.712982
54.294964
57.162521
52.855431
54.9189
56.888977
56.349503
55.628307
53.987213
54.888191
57.482475
51.352528
52.957409
57.9632
51.71402
54.55188
55.510872
53.478615
56.538574
54.372177
51.791515
51.85387
53.152756
53.699192
56.16217
53.944302
57.860531
52.706093
38.891552
40.061146
58.789318
58.341045
51.069916
56.739349
55.588776
55.638443
57.349831
55.383617
50.981583
57.030621
56.89534
53.239281
55.809402
54.816936
56.315971
57.504028
53.0392
54.31464
56.297119
58.018948
53.579201
45.004356
55.186466
57.544048
50.021263
56.758224
51.674511
48.815731
57.335526
51.873737
56.729164
17.545601
53.453369
53.751705
54.900879
54.417236
53.991371
55.537674
54.9552
52.623699
52.575577
54.225178
52.883026
53.49408
52.597282
52.311371
54.902081
52.155937
52.864994
52.53334
51.783161
55.061718
52.282364
43.915031
35.75869
45.876755
52.239735
52.96825
53.396423
53.171211
51.92704
54.697418
52.03215
52.909931
52.71067
52.264038
54.211891
53.683887
57.018417
53.339409
52.877178
53.330524
51.848927
55.503071
53.210861
51.929901
52.273903
51.52887
52.264709
55.400238
53.90588
53.174789
22.007481
53.559669
54.65731
55.152344
56.178463
53.597927
51.720104
54.392029
51.67672
52.340294
50.952728
52.239883
52.930828
53.306396
53.366264
53.836849
53.57325
52.155712
53.2131
51.117851
55.011951
52.944054
52.865562
50.852966
51.085396
49.57008
53.576942
51.049953
52.061947
53.887619
53.467896
51.747021
52.240242
54.424454
53.9048
52.656437
55.363266
52.749706
53.095268
54.093826
53.992416
51.328629
52.03672
52.668419
54.850445
52.109558
52.080616
50.285126
52.179764
52.256275
53.530296
51.918316
53.18631
54.173599
54.875748
52.952965
54.061806
54.930111
54.384876
54.081223
56.469662
50.369919
52.617455
52.388699
51.436142
53.242325
51.021019
52.841198
53.737804
53.407883
51.23283
52.096313
53.412483
53.782333
52.467503
57.069641
53.952709
51.89563
55.045727
53.982658
52.945526
55.009964
53.788242
52.578209
51.234379
52.090042
52.09428
53.163422
51.449097
54.669586
52.867271
51.608002
54.312637
Chart2
9.127719
34.579433
33.898846
33.366505
34.260708
33.737801
32.68158
31.672646
30.74868
33.241207
33.241207
13.985272
30.245796
30.242449
29.517502
30.306284
30.005503
29.912542
30.047882
30.210398
29.557083
29.953611
14.995614
30.567255
29.919764
29.482067
30.387083
29.952908
30.708748
30.442707
29.739063
31.154242
30.978348
29.929159
29.696428
30.139584
29.116764
30.367954
31.310749
31.615688
31.197063
30.852333
30.209698
16.623222
39.454014
39.670563
39.404465
39.679199
39.352882
38.196011
37.552109
39.504082
37.903709
38.479103
37.274204
39.032326
38.479103
20.972067
51.030624
51.195194
50.164482
56.507965
50.47802
51.059391
52.956165
52.653595
53.72625
51.899914
53.934418
50.837624
52.362846
52.259876
52.377445
52.719872
53.966999
54.069298
54.189209
53.269241
52.296387
56.169636
53.000736
54.9203
56.070179
53.716606
54.222225
53.153835
52.66552
54.700821
53.178337
51.253616
50.855175
51.408688
51.77652
52.562653
54.955727
52.238209
52.49662
26.854389
52.66151
54.698467
50.686241
55.615776
54.764313
54.586689
55.786407
52.041504
53.448151
57.511913
53.797081
55.977684
27.235748
54.112228
50.008469
52.850498
52.66687
45.822079
51.834564
50.087322
50.892933
53.396057
48.257446
52.772461
52.293987
50.233521
51.29961
52.903427
52.561596
48.338043
52.134235
52.897263
49.633007
50.013073
47.747787
53.311508
54.524628
49.532017
55.377426
52.842609
51.033031
53.567638
53.638744
49.42593
52.442841
23.586611
26.586611
65.246586
65.840313
67.366863
64.136761
67.053761
67.785461
66.314789
63.196583
66.491913
67.143017
65.6756636667
65.488447381
65.3012310952
65.1140148095
64.9267985238
64.7395822381
64.5523659524
66.314789
65.196583
65.488447381
65.3012310952
65.1140148095
64.9267985238
24.447517
49.833393
46.606506
52.834019
52.831493
50.114109
53.887287
54.183926
52.142502
53.467266
53.579346
50.495403
50.803177
47.939526
50.305332
50.820667
48.994843
49.884098
52.464893
51.004074
50.136929
49.387218
51.313015
50.581146
48.535461
49.654888
51.752766
45.902363
52.880207
53.176258
45.864498
51.207764
52.434052
49.023869
51.591213
51.544468
46.583385
52.417629
50.623672
49.027485
46.460514
52.565838
52.146515
47.663101
51.594784
51.835754
48.241497
50.781574
51.100925
47.149883
51.403988
50.784496
49.173004
52.351757
47.425365
49.049316
17.293718
51.083309
51.878452
53.806828
56.154499
56.409809
59.002277
54.061123
55.433567
59.254494
54.877434
54.413841
56.31665
54.750927
57.768703
58.844212
59.587311
55.112186
56.324471
56.66135
59.591614
56.448891
58.472473
56.734715
57.030701
57.987427
5040
5060
59.324715
52.426983
60.401802
56.245098
57.258003
60.33485
55.445496
55.108978
58.818855
55.770607
59.532837
59.126537
51.953796
55.723854
57.71978
58.84219
57.075062
57.108765
59.480854
56.508278
55.737923
57.993908
52.927002
56.363647
60.102806
54.854683
57.794151
59.473202
58.607109
58.956272
53.913513
57.011627
56.677845
57.736134
57.47752
55.828579
57.257484
57.928902
55.19294
58.653347
57.304688
51.328571
58.981377
57.190281
54.049603
59.717541
54.806728
1
3
2
4
5
6
7
8
9
Iteration Number
Throughput (Iterations/s)
adaptation
09.127719
2034.579433
4033.898846
6033.366505
8034.260708
10033.737801
12032.68158
14031.672646
16030.74868
18033.241207
20033.241207
22013.985272split
24030.245796
26030.242449
28029.517502
30030.306284
32030.005503
34029.912542
36030.047882
38030.210398
40029.557083
42029.953611
44014.995614split
46030.567255
48029.919764
50029.482067
52030.387083
54029.952908
56030.708748
58030.442707
60029.739063
62031.154242
64030.978348
66029.929159
68029.696428
70030.139584
72029.116764
74030.367954
76031.310749
78031.615688
80031.197063
82030.852333
84030.209698
86016.623222migrate
88039.454014
90039.670563
92039.404465
94039.679199
96039.352882
98038.196011
100037.552109
102039.504082
104037.903709
106038.479103
108037.274204
110039.032326
112038.479103
114020.972067migrate
116051.030624
118051.195194
120050.164482
122056.507965
124050.47802
126051.059391
128052.956165
130052.653595
132053.72625
134051.899914
136053.934418
138050.837624
140052.362846
142052.259876
144052.377445
146052.719872
148053.966999
150054.069298
152054.189209
154053.269241
156052.296387
158056.169636
160053.000736
162054.9203
164056.070179
166053.716606
168054.222225
170053.153835
172052.66552
174054.700821
176053.178337
178051.253616
180050.855175
182051.408688
184051.77652
186052.562653
188054.955727
190052.238209
192052.49662
194026.854389split
196052.66151
198054.698467
200050.686241
202055.615776
204054.764313
206054.586689
208055.786407
210052.041504
212053.448151
214057.511913
216053.797081
218055.977684
220027.235748split
222054.112228
224050.008469
226052.850498
228052.66687
230045.822079
232051.834564
234050.087322
236050.892933
238053.396057
240048.257446
242052.772461
244052.293987
246050.233521
248051.29961
250052.903427
252052.561596
254048.338043
256052.134235
258052.897263
260049.633007
262050.013073
264047.747787
266053.311508
268054.524628
270049.532017
272055.377426
274052.842609
276051.033031
278053.567638
280053.638744
282049.42593
284052.442841
286023.586611
288026.586611migrate
290065.246586
292065.840313
294067.366863
296064.136761
298067.053761
300067.785461
302066.314789
304063.196583
306066.491913
308067.143017
310065.6756636667
312065.488447381
314065.3012310952
316065.1140148095
318064.9267985238
320064.7395822381
322064.5523659524
324066.314789
326065.196583
328065.488447381
330065.3012310952
332065.1140148095
334064.9267985238
336024.447517migrate
338049.833393
340046.606506
342052.834019
344052.831493
346050.114109
348053.887287
350054.183926
352052.142502
354053.467266
356053.579346
358050.495403
360050.803177
362047.939526
364050.305332
366050.820667
368048.994843
370049.884098
372052.464893
374051.004074
376050.136929
378049.387218
380051.313015
382050.581146
384048.535461
386049.654888
388051.752766
390045.902363
392052.880207
394053.176258
396045.864498
398051.207764
400052.434052
402049.023869
404051.591213
406051.544468
408046.583385
410052.417629
412050.623672
414049.027485
416046.460514
418052.565838
420052.146515
422047.663101
424051.594784
426051.835754
428048.241497
430050.781574
432051.100925
434047.149883
436051.403988
438050.784496
440049.173004
442052.351757
444047.425365
446049.049316
450017.293718split+migrate to helium
452051.083309
454051.878452
456053.806828
458056.154499
460056.409809
462059.002277
464054.061123
466055.433567
468059.254494
470054.877434
472054.413841
474056.31665
476054.750927
478057.768703
480058.844212
484059.587311
486055.112186
488056.324471
490056.66135
492059.591614
494056.448891
496058.472473
498056.734715
500057.030701
502057.987427
5040
5060
508059.324715
510052.426983
512060.401802
514056.245098
516057.258003
518060.33485
520055.445496
522055.108978
524058.818855
526055.770607
528059.532837
530059.126537
532051.953796
534055.723854
536057.71978
538058.84219
540057.075062
542057.108765
544059.480854
546056.508278
548055.737923
550057.993908
552052.927002
554056.363647
556060.102806
558054.854683
560057.794151
562059.473202
564058.607109
566058.956272
568053.913513
570057.011627
572056.677845
574057.736134
576057.47752
578055.828579
580057.257484
582057.928902
584055.19294
586058.653347
588057.304688
590051.328571
592058.981377
594057.190281
596054.049603
598059.717541
600054.806728
602054.222111
604057.72747
606052.874245
608055.299587
610051.139961
612058.948067
614055.477322
616055.614067
618056.478058
620053.226269
622058.120659
624058.838787
626056.579506
628057.82325
630057.309795
632054.520775
634057.352757
636058.629345
638053.021305
640058.549873
642056.135399
644055.44397
646059.422451
648054.692017
650051.81422
654026.497103
656054.723869
658057.691559
660056.753628
662054.401089
664054.929375
666054.005852
668057.526436
670058.080364
672049.988583
674056.5159
676052.87751
678056.716217
680057.800434
682053.162029
migration back to europa
Chart5
129.63878262
136.41778994
261.91138418
302.10417916
275.35619608
262.75120076
254.42837098
221.24154296
163.7379163
122.92570088
95.27705766
69.34994268
Process Granularity (Bytes)
Application Throughput (Iterations/s)
Chart4
129.63878262
136.41778994
261.91138418
302.10417916
275.35619608
262.75120076
254.42837098
221.24154296
163.7379163
122.92570088
95.27705766
69.34994268
Throughput
Number of Processes/ Process Data Size (KB)
Throughput (Iterations/s)
effect of granularity(europa)
IterationsN=2N=3N=4N=5N=6N=8N=10N=12N=20N=30N=40N=60
045.630432100.02801518.67232317.80087913.3058693.4287532.3109311.6633730.3519790.0851540.0372870.01277
20133.933121124.508453228.464798343.134186278.630341259.932434246.073807238.700516187.910126121.24354686.29448771.479492
40142.845627108.925171361.724548340.8638335.800964270.041382252.726898251.193222164.050262127.80110989.50328873.794952
60120.181915100.193886260.665527239.676926306.522064296.59082240.036667229.620865168.095322129.80714497.14702659.672527
80240.740295381.860748353.291748317.12851256.400238215.6026268.493103247.034988149.618607124.323326102.84200378.230293
100153.687988424.283051204.540756347.959564340.887177285.835815269.542084235.653397159.322235122.01572490.81348479.014778
120321.216614146.057098291.252686341.630188293.2211283.321075246.594604227.204666171.967239128.7473376.45668864.548035
140125.32215987.027855336.122986366.101257336.806244265.236145249.883636247.284958162.55928132.267883106.22721981.48333
160185.31733799.854012239.687653307.949646295.231842271.804565250.506256226.446228171.557724125.73311692.99852865.048492
180110.891896.700386177.743774138.956451260.315643275.642883269.180786209.03772170.908859142.413589105.42868876.244972
20090.98428395.207924211.491516282.401459228.430191223.593994252.650146239.625931172.377518125.786758103.31259968.606552
22099.109848104.080727371.339966337.522156258.929718272.421906248.411331224.047729168.976562132.5934396.66865576.388794
24084.206909146.084778281.095581362.821869284.691254248.950638247.835159247.779465167.902374129.22528194.73926569.850632
260125.033539114.066978189.297287364.375153326.035431209.551392231.034836241.679321158.183868134.037781110.16072870.407394
280117.64021396.500519344.508636228.024612277.131836296.293182264.166107247.497116164.265701129.43588392.63099771.776039
300164.879822127.993843275.634949294.170837250.000732295.915588199.064133237.793259165.02597132.12774793.43324366.759178
320100.91424675.759422308.233154274.558899341.22702296.660095282.055115240.120926171.07312131.871567100.82592868.667526
340111.06829188.687767224.425369350.777252240.236206265.485718289.334412231.968277175.184738124.82488397.10947479.548599
360222.574188106.643318248.876266268.376068348.992432304.712067244.192581247.761917173.348358110.366287102.13370569.058319
38083.431824100.885902205.746674321.684387328.252289279.972717277.854889247.090836176.468292118.387352105.43383868.914711
400125.009003167.773087265.265137222.426559260.832214219.030151276.909729200.428543156.163528120.52296489.3689866.480835
420118.857727175.411194177.509735390.23761321.763824274.31311276.861969245.365311142.09903143.67620883.67874972.57795
440116.748375239.980103376.486755296.36676268.921906276.909821242.151825240.981033166.687943120.133209109.14555469.082619
460142.693756131.715744338.796265257.504089244.228012258.71167231.243317211.031784145.013779133.01425298.44694563.994011
480105.291039191.611771267.340881268.956848301.870178213.256744279.354553229.164474191.045197113.31594899.84557376.11586
500125.20604786.923744355.161743349.266296269.29657231.225037246.241486217.665543183.86087122.46342589.78095278.283073
520133.3567296.614235246.231354342.096741230.828445226.190872275.360443235.663132167.12146131.25183198.50981968.715118
540105.293144105.111412399.525482355.716888319.876617286.498596271.695892212.271927175.325607123.692627101.62471872.175995
560111.84819895.177979250.502029321.330811234.333618280.152039248.259277231.648743161.754242129.077332100.96897964.433128
580141.68209884.982239287.905121367.888489223.05481283.624573281.41391182.111496102.789963132.0822385.28752165.883781
600105.432632117.64109331.708618304.997345225.551086270.4505271.236023179.926407165.39035134.2349798.56211970.930092
620162.50849994.976379314.002869256.751587225.655228222.736206253.133255222.384354179.385788119.52182102.04579963.967457
640113.109314120.275421176.769806283.798798306.746033285.802399277.3255202.013123156.999664121.09327781.04321379.174538
660125.083183355.381195250.900543319.449432354.357208289.305359286.270813197.65033179.329437121.11150495.65183366.030151
680117.687012113.404694140.326385315.426331299.530396234.993042240.544464235.59761165.052612126.56815398.78276163.287743
700112.915123106.913368251.43837348.739532269.697235290.619568275.494781221.993958173.063004130.736969102.48142266.373184
720100.45758895.539742175.925064323.998962268.32605294.793488280.67334201.207321166.746017124.78012193.17546170.241211
74082.934937122.164711279.693268364.453125313.779144265.232178277.79425244.678772169.067917106.78982597.66773275.479424
760140.685272139.445847292.380554323.792572295.62677259.314972244.781784214.965195179.802704137.67593493.05263576.731148
78095.28996387.805908334.056854255.922928288.249847290.864319217.226532197.158569165.657913120.179298107.64420363.292233
800117.801727100.329498315.600494253.08577281.141998307.639709277.107605211.587204178.630493117.85076199.5436162.129379
820150.10791124.497276231.186646345.968201328.077332218.814728254.169891228.553955168.402283112.332756100.6490172.937187
840254.35560684.888313329.423828337.151062191.281662298.581085285.646149221.885239167.555588114.733559100.45359867.260521
860119.87599292.092468316.933014261.036346320.676239279.388275276.167633200.134781169.483429124.10713290.59095869.845001
880124.28746176.371521236.299255252.275238263.261108267.761414235.555542241.28511155.869965123.40665495.73154458.868999
900117.5654690.492867283.92926285.40683238.562134295.253357271.229553227.183655181.374069135.661774106.56982487.658218
92090.970787107.833046279.76532355.697357204.751953296.025787264.717621226.851761139.767792114.999931101.98748867.611778
940137.428619241.961121125.305557354.92514266.624084268.964935235.668701241.923782180.480148126.01325295.47508271.333008
96086.022842240.365707204.415375247.372116306.118805286.283569270.03595189.3349184.818542124.598351104.62701467.534805
980121.822647107.857964127.96743297.255096243.740707243.828766265.19928230.224426169.008347117.56408797.26265789.561302
129.63878262136.41778994261.91138418302.10417916275.35619608262.75120076254.42837098221.24154296163.7379163122.9257008895.2770576669.34994268
dataWidth60403024201512106432
Number of processes234568101220304060
Data granularity75645124390431722684207417081464976732610488
Average execution time8.3110118.6075834.0954923.2763623.7167513.8735684.040254.6550536.4806919.0939711.83892616.849144
6.7408327.2370764.9803493.2763623.7183663.4762984.1574644.59076.544698.79447411.51731317.397839
60512409923123225376214721659213664117127808585648803904
Data Granularity/ Process58.1438.7629.0723.2619.3814.5411.639.695.813.882.911.94
Number of processes234568101220304060
Throughput129.63878262136.41778994261.91138418302.10417916275.35619608262.75120076254.42837098221.24154296163.7379163122.9257008895.2770576669.34994268
74424961.333333333337212976.82480.66666666671860.51488.41240.3333333333744.2496.1333333333372.1248.0666666667
58.14062538.760416666729.070312523.2562519.380208333314.5351562511.6281259.69010416675.81406253.87604166672.907031251.9380208333
effect of granularity(europa)
45.630432100.02801518.67232313.3058693.4287532.3109311.6633730.3519790.0851540.0372870.01277
133.933121124.508453228.464798278.630341259.932434246.073807238.700516187.910126121.24354686.29448771.479492
142.845627108.925171361.724548335.800964270.041382252.726898251.193222164.050262127.80110989.50328873.794952
120.181915100.193886260.665527306.522064296.59082240.036667229.620865168.095322129.80714497.14702659.672527
240.740295381.860748353.291748256.400238215.6026268.493103247.034988149.618607124.323326102.84200378.230293
153.687988424.283051204.540756340.887177285.835815269.542084235.653397159.322235122.01572490.81348479.014778
321.216614146.057098291.252686293.2211283.321075246.594604227.204666171.967239128.7473376.45668864.548035
125.32215987.027855336.122986336.806244265.236145249.883636247.284958162.55928132.267883106.22721981.48333
185.31733799.854012239.687653295.231842271.804565250.506256226.446228171.557724125.73311692.99852865.048492
110.891896.700386177.743774260.315643275.642883269.180786209.03772170.908859142.413589105.42868876.244972
90.98428395.207924211.491516228.430191223.593994252.650146239.625931172.377518125.786758103.31259968.606552
99.109848104.080727371.339966258.929718272.421906248.411331224.047729168.976562132.5934396.66865576.388794
84.206909146.084778281.095581284.691254248.950638247.835159247.779465167.902374129.22528194.73926569.850632
125.033539114.066978189.297287326.035431209.551392231.034836241.679321158.183868134.037781110.16072870.407394
117.64021396.500519344.508636277.131836296.293182264.166107247.497116164.265701129.43588392.63099771.776039
164.879822127.993843275.634949250.000732295.915588199.064133237.793259165.02597132.12774793.43324366.759178
100.91424675.759422308.233154341.22702296.660095282.055115240.120926171.07312131.871567100.82592868.667526
111.06829188.687767224.425369240.236206265.485718289.334412231.968277175.184738124.82488397.10947479.548599
222.574188106.643318248.876266348.992432304.712067244.192581247.761917173.348358110.366287102.13370569.058319
83.431824100.885902205.746674328.252289279.972717277.854889247.090836176.468292118.387352105.43383868.914711
125.009003167.773087265.265137260.832214219.030151276.909729200.428543156.163528120.52296489.3689866.480835
118.857727175.411194177.509735321.763824274.31311276.861969245.365311142.09903143.67620883.67874972.57795
116.748375239.980103376.486755268.921906276.909821242.151825240.981033166.687943120.133209109.14555469.082619
142.693756131.715744338.796265244.228012258.71167231.243317211.031784145.013779133.01425298.44694563.994011
105.291039191.611771267.340881301.870178213.256744279.354553229.164474191.045197113.31594899.84557376.11586
125.20604786.923744355.161743269.29657231.225037246.241486217.665543183.86087122.46342589.78095278.283073
133.3567296.614235246.231354230.828445226.190872275.360443235.663132167.12146131.25183198.50981968.715118
105.293144105.111412399.525482319.876617286.498596271.695892212.271927175.325607123.692627101.62471872.175995
111.84819895.177979250.502029234.333618280.152039248.259277231.648743161.754242129.077332100.96897964.433128
141.68209884.982239287.905121223.05481283.624573281.41391182.111496102.789963132.0822385.28752165.883781
105.432632117.64109331.708618225.551086270.4505271.236023179.926407165.39035134.2349798.56211970.930092
162.50849994.976379314.002869225.655228222.736206253.133255222.384354179.385788119.52182102.04579963.967457
113.109314120.275421176.769806306.746033285.802399277.3255202.013123156.999664121.09327781.04321379.174538
125.083183355.381195250.900543354.357208289.305359286.270813197.65033179.329437121.11150495.65183366.030151
117.687012113.404694140.326385299.530396234.993042240.544464235.59761165.052612126.56815398.78276163.287743
112.915123106.913368251.43837269.697235290.619568275.494781221.993958173.063004130.736969102.48142266.373184
100.45758895.539742175.925064268.32605294.793488280.67334201.207321166.746017124.78012193.17546170.241211
82.934937122.164711279.693268313.779144265.232178277.79425244.678772169.067917106.78982597.66773275.479424
140.685272139.445847292.380554295.62677259.314972244.781784214.965195179.802704137.67593493.05263576.731148
95.28996387.805908334.056854288.249847290.864319217.226532197.158569165.657913120.179298107.64420363.292233
117.801727100.329498315.600494281.141998307.639709277.107605211.587204178.630493117.85076199.5436162.129379
150.10791124.497276231.186646328.077332218.814728254.169891228.553955168.402283112.332756100.6490172.937187
254.35560684.888313329.423828191.281662298.581085285.646149221.885239167.555588114.733559100.45359867.260521
119.87599292.092468316.933014320.676239279.388275276.167633200.134781169.483429124.10713290.59095869.845001
124.28746176.371521236.299255263.261108267.761414235.555542241.28511155.869965123.40665495.73154458.868999
117.5654690.492867283.92926238.562134295.253357271.229553227.183655181.374069135.661774106.56982487.658218
90.970787107.833046279.76532204.751953296.025787264.717621226.851761139.767792114.999931101.98748867.611778
137.428619241.961121125.305557266.624084268.964935235.668701241.923782180.480148126.01325295.47508271.333008
86.022842240.365707204.415375306.118805286.283569270.03595189.3349184.818542124.598351104.62701467.534805
121.822647107.857964127.96743243.740707243.828766265.19928230.224426169.008347117.56408797.26265789.561302
N=2
N=3
N=4
N=6
N=8
N=10
N=12
N=20
N=30
N=40
N=60
granularity(io)
0
0
0
0
0
0
0
0
0
0
0
0
granularity(helium)
8.311011
8.607583
4.095492
3.276362
3.716751
3.873568
4.04025
4.655053
6.480691
9.09397
11.838926
16.849144
Chart1
0
0
0
0
0
0
0
0
0
0
0
0
overhead
0
0
0
0
0
0
0
0
0
0
0
0
expanding
0
0
0
0
0
0
0
0
0
0
0
0
Chart3
IterationN=2N=4N=8N=16N=32N=64
08.9806274.2618621.2726850.3517710.0632020.01011
2032.59089331.26391228.2420529.48564925.24565923.471289
4032.65578531.78043931.15090428.29354526.18595521.595833
6032.70262930.61794930.20463229.62350526.00557922.69379
8033.35559130.96160524.3659129.29880925.77162920.947372
10032.42442731.23867225.57417729.95828228.36848621.262079
12033.36271730.96888425.6809528.65536525.5674122.951843
14032.0109131.56912230.59695127.19740525.13226319.8997
16031.90950430.6525930.11794528.83105526.86684622.866619
18032.79443430.39452429.90969531.26392225.76083820.956287
20033.03161630.93662329.88054129.24565127.42930220.557684
22032.14667129.85299531.1350130.87065526.4363421.570099
24033.55326530.53957931.00024428.3582126.60911221.990246
26033.03177330.74401531.36752729.58793328.69423924.234577
28032.24234830.34733226.13240429.03363829.29248822.066412
30027.46931330.57547626.9320628.88384825.69898622.414368
32032.71699930.67716427.641828.44374125.91148418.422291
34032.8697230.76427327.62741929.53413829.1418524.370705
36031.45243630.27849630.04399128.40936125.05088819.981298
38032.42616330.44587931.16174729.75988428.61150924.319878
40033.78201330.84353331.2027429.58563228.02717622.99135
42033.53313130.04785531.0465229.9063327.61938921.364349
44032.9199630.22498730.05193330.06499725.21514524.670279
46032.25803430.27594630.63460530.78278724.80528323.103973
48031.62317330.47931729.57767129.60581225.36609523.925529
50032.2234830.71332730.75875129.17059325.21429624.973553
52032.02279730.39115130.8308628.52502128.13758722.109497
54032.19263130.30394230.88178629.16145324.96550923.946327
56032.68301429.88814432.09390329.01130728.8625322.106562
58032.67334730.54815332.37326829.13774926.8158321.650707
60032.91651230.53986430.13809829.55838427.47261221.712803
62032.28350130.2003930.20492730.03026823.24216121.813099
64032.49550631.09669530.48585925.83234827.48825622.552195
66033.26620531.29379531.31895429.17497627.19419521.503139
68032.82199529.7797230.99642229.10985218.049424.002438
70033.24260731.06473930.48446730.08616322.67900821.167976
72032.4187730.50977331.26985430.2974326.97534924.135668
74033.30663330.70533226.06995429.31424326.27389722.970184
76032.58713530.54889330.81188629.62645725.75202821.852894
78031.29481130.579830.64424530.53083823.74519224.484247
80033.36343830.33760531.4957229.25184625.7109223.522266
82032.6540330.06675331.06357230.10797525.83891320.738302
84032.22897331.24555430.59088528.83186527.21734620.902821
86031.90052830.86731330.16851629.25063321.52052121.417095
88032.11023726.29109829.53555529.95922924.98045320.634417
90033.18811431.06350530.44695330.68656525.49874125.872217
92033.13222531.52793729.90417128.94184925.79024722.097904
94032.71559130.45626430.1864830.24639724.50862120.042019
96033.33354931.13926130.61316330.08480129.35678920.054911
98032.26425230.78090530.80622928.8442526.59759522.538563
Execution Time30.80514532.89106433.89807934.80413540.51887749.457051
Chart3
8.9806274.2618621.2726850.3517710.0632020.01011
32.59089331.26391228.2420529.48564925.24565923.471289
32.65578531.78043931.15090428.29354526.18595521.595833
32.70262930.61794930.20463229.62350526.00557922.69379
33.35559130.96160524.3659129.29880925.77162920.947372
32.42442731.23867225.57417729.95828228.36848621.262079
33.36271730.96888425.6809528.65536525.5674122.951843
32.0109131.56912230.59695127.19740525.13226319.8997
31.90950430.6525930.11794528.83105526.86684622.866619
32.79443430.39452429.90969531.26392225.76083820.956287
33.03161630.93662329.88054129.24565127.42930220.557684
32.14667129.85299531.1350130.87065526.4363421.570099
33.55326530.53957931.00024428.3582126.60911221.990246
33.03177330.74401531.36752729.58793328.69423924.234577
32.24234830.34733226.13240429.03363829.29248822.066412
27.46931330.57547626.9320628.88384825.69898622.414368
32.71699930.67716427.641828.44374125.91148418.422291
32.8697230.76427327.62741929.53413829.1418524.370705
31.45243630.27849630.04399128.40936125.05088819.981298
32.42616330.44587931.16174729.75988428.61150924.319878
33.78201330.84353331.2027429.58563228.02717622.99135
33.53313130.04785531.0465229.9063327.61938921.364349
32.9199630.22498730.05193330.06499725.21514524.670279
32.25803430.27594630.63460530.78278724.80528323.103973
31.62317330.47931729.57767129.60581225.36609523.925529
32.2234830.71332730.75875129.17059325.21429624.973553
32.02279730.39115130.8308628.52502128.13758722.109497
32.19263130.30394230.88178629.16145324.96550923.946327
32.68301429.88814432.09390329.01130728.8625322.106562
32.67334730.54815332.37326829.13774926.8158321.650707
32.91651230.53986430.13809829.55838427.47261221.712803
32.28350130.2003930.20492730.03026823.24216121.813099
32.49550631.09669530.48585925.83234827.48825622.552195
33.26620531.29379531.31895429.17497627.19419521.503139
32.82199529.7797230.99642229.10985218.049424.002438
33.24260731.06473930.48446730.08616322.67900821.167976
32.4187730.50977331.26985430.2974326.97534924.135668
33.30663330.70533226.06995429.31424326.27389722.970184
32.58713530.54889330.81188629.62645725.75202821.852894
31.29481130.579830.64424530.53083823.74519224.484247
33.36343830.33760531.4957229.25184625.7109223.522266
32.6540330.06675331.06357230.10797525.83891320.738302
32.22897331.24555430.59088528.83186527.21734620.902821
31.90052830.86731330.16851629.25063321.52052121.417095
32.11023726.29109829.53555529.95922924.98045320.634417
33.18811431.06350530.44695330.68656525.49874125.872217
33.13222531.52793729.90417128.94184925.79024722.097904
32.71559130.45626430.1864830.24639724.50862120.042019
33.33354931.13926130.61316330.08480129.35678920.054911
32.26425230.78090530.80622928.8442526.59759522.538563
N=2
N=4
N=8
N=16
N=32
N=64
N=2N=3N=4N=5
29.02741622.7225047.2475945.286204
118.899963114.87484114.722351101.507034
119.875549117.694366112.743011102.687233
119.208252112.73362104.323608102.492844
119.663254113.099052110.026375102.723373
119.039452112.825844104.62702999.950615
120.578468109.687614112.65739495.614563
121.95314110.667351113.75898796.045296
120.102676109.637917107.11093194.66848
120.351746110.075493106.31501893.687195
119.488052109.282814106.51814395.835342
117.323044109.993134108.26643497.944214
119.069992110.915558109.05932692.763
119.779327110.107384106.71534795.007797
119.798355113.758018101.99449293.054794
118.950272117.081604107.50914891.339157
118.942154113.893639112.51016291.543861
117.488731114.608917113.69554193.081093
115.226364115.013832112.24607193.232346
110.304352114.561073111.39394490.684891
111.032654114.694519110.71864386.433937
119.246376109.893166110.68241986.69899
118.652573108.229614106.29996591.476494
116.308784106.792381102.58662497.766754
118.913193108.112274104.339874101.188454
119.416046114.791161108.13221799.275459
119.496643105.411621100.67469100.311447
121.085518105.940758101.29908898.077858
119.784439107.839424101.252808101.918625
120.205963109.184883106.332008101.498558
121.022827109.916161109.295273101.476318
120.16848107.73888494.095718101.913719
120.034225104.566872100.62840393.780563
120.562897107.756767102.897446101.933121
120.38475109.916382110.74139494.47583
120.415375111.575096108.82026792.790817
121.368912108.585732108.22176493.145096
119.86264106.467094105.26837992.773766
120.194107108.748146107.35086198.069481
119.562546110.664307109.58458775.406273
117.798462109.397675110.61759971.615692
119.676376112.408943111.40419102.061417
119.566956110.48452111.20729199.206711
120.935699115.073151107.46986493.081947
120.730911114.291756108.28565291.759346
119.654465118.143494109.16728293.249039
106.706291118.468323109.01150593.271194
120.272774114.893372107.90625896.737762
120.231537110.557678107.13723895.142914
120.960205109.434235106.6481793.043076
8.4453329.0548959.39784910.684004
130.391634137.906095.7629893648
79.87316385.6094057.1816887983
70.33037482.65292517.5209519005
64.74307677.81163320.1852581116
58.77196665.41178711.2975989267
Without PCM
With PCM
Overhead %
Number of Processes
Executione Time (s)
Number of ProcessesWithout PCMWith PCMOverhead %
2130.391634137.906095.7629893648
479.87316385.6094057.1816887983
1070.33037482.65292517.5209519005
2064.74307677.81163320.1852581116
4058.77196665.41178711.2975989267
05.621565
2030.311424
4030.219315
6031.03001
8030.257961
10030.736744
12030.409117
14030.556561
16029.990875
18030.639051
20030.293486
22030.62936
24031.604961
26029.720705
28030.119509
30029.855143
32029.925327
34030.211941
36028.955202
38030.436043
40030.243484
42027.926479
44028.19492
46030.466362
48030.000614
50031.370781
52030.535891
54030.479588
56030.3312
58030.120327
60030.319908
62030.750925
64030.294033
66030.968157
68030.621002
70030.670069
72030.587833
74030.579748
76030.627399
78030.655586
80030.304676
82026.067879
84030.77282
86017.57119
88054.678482
90055.295055
92055.126427
94055.429337
96053.845314
98055.41301
100054.690956
102054.511852
104054.356552
106056.242691
108055.79055
110055.135254
112053.693832
114052.434879
116053.843616
118054.589943
120055.281368
122054.293503
124053.094246
126053.149471
128054.629379
130052.592636
132054.175442
134054.643612
136054.352173
138054.316139
140054.634727
142055.146889
144048.661728
146049.147331
148049.426891
150052.801994
152055.330654
154055.652294
156053.697723
158056.136925
160057.284389
162054.261196
164054.871628
166055.837025
168055.503761
170054.785385
172056.08408
174055.791382
176056.934235
178056.255524
180055.340538
182042.816303
184031.98661
186050.395248
188056.210045
190088.367004
192088.418121
194088.383156
196073.163925
198082.536606
200091.459824
202092.028412
204088.335297
206091.311455
208094.078262
210081.526199
212084.016655
214090.194023
216087.847176
218090.137657
220091.057724
222090.988983
224081.537689
226080.588463
228067.925491
230077.175179
232089.445198
234089.494263
236082.642967
238081.339661
240088.566422
242089.744