1 scalable and transparent parallelization of multiplayer games bogdan simion masc thesis department...
TRANSCRIPT
![Page 1: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/1.jpg)
1
Scalable and transparent parallelization of
multiplayer games
Bogdan SimionMASc thesis
Department of Electrical andComputer Engineering
![Page 2: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/2.jpg)
2
Multiplayer games Captivating,
highly popular
Dynamic
artifacts
![Page 3: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/3.jpg)
3
Multiplayer games
- Long playing times:
- More than 100k concurrent players
![Page 4: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/4.jpg)
4
Multiplayer games
1.World of Warcraft:“I've been playing this Mage for 3 and a half years now, and I've invested too much time, blood, sweat and tears to quit now.”
- Long playing times:
- More than 100k concurrent players
![Page 5: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/5.jpg)
5
Multiplayer games
1.World of Warcraft:“I've been playing this Mage for 3 and a half years now, and I've invested too much time, blood, sweat and tears to quit now.”
2.Halo2: “My longest playing streak was last summer, about 19 hours playing Halo2 on my XBox.”
- Long playing times:
- More than 100k concurrent players
![Page 6: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/6.jpg)
6
Multiplayer games
1.World of Warcraft:“I've been playing this Mage for 3 and a half years now, and I've invested too much time, blood, sweat and tears to quit now.”
2.Halo2: “My longest playing streak was last summer, about 19 hours playing Halo2 on my XBox.”
- Long playing times:
- More than 100k concurrent players
- Game server is the bottleneck
![Page 7: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/7.jpg)
7
Server scaling
Game code parallelization is hard Complex and highly dynamic code Concurrency issues (data races) require
conservative synchronization Deadlocks
![Page 8: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/8.jpg)
8
State-of-the-art
Parallel programming paradigms: Lock-based (pthreads)Transactional memory
Previous parallelizations of Quake Lock-based [Abdelkhalek et. al ‘04] shows
that false sharing is a challenge
![Page 9: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/9.jpg)
9
Transactional Memory vs. Locks
AdvantagesSimpler programming taskTransparently ensures correct execution
Shared data access tracking Detects conflicts and aborts conflicting
transactions
DisadvantagesSoftware (STM) access tracking overheads
![Page 10: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/10.jpg)
10
Transactional Memory vs. Locks
AdvantagesSimpler programming taskTransparently ensures correct execution
Shared data access tracking Detects conflicts and aborts conflicting
transactions
DisadvantagesSoftware (STM) access tracking overheads
Never shown to be practical for real applications
![Page 11: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/11.jpg)
11
Contributions
Case study of parallelization for gamessynthetic version of Quake (SynQuake)
We compare 2 approaches: lock-based and STM parallelizations
We showcase the first realistic application where STM outperforms locks
![Page 12: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/12.jpg)
12
Outline
Application environment: SynQuake gameData structures, server architecture
Parallelization issues False sharingLoad balancing
Experimental results Conclusions
![Page 13: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/13.jpg)
13
Environment: SynQuake game
Simplified version of Quake
Entities: players resources
(apples) walls
Emulated quests
![Page 14: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/14.jpg)
14
SynQuake
Playerscan move
and interact(eat, attack, flee, go to
quest)Apples
Food objects,increase life
WallsImmutable, limit
movement
Contains all the features found in Quake
![Page 15: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/15.jpg)
15
Game map representation
Fast retrieval of game objects
Spatial data structure: areanode tree
![Page 16: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/16.jpg)
16
Areanode tree
Game map Areanode tree
Root node
![Page 17: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/17.jpg)
17
Areanode tree
Game map Areanode tree
A B
![Page 18: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/18.jpg)
18
Areanode tree
A B
Game map Areanode tree
A B
![Page 19: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/19.jpg)
19
A1
A2
B1
B2
Areanode tree
A B
A1 A2 B1 B2
Game map Areanode tree
![Page 20: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/20.jpg)
20
Areanode tree
A1 A2 B1 B2
A B
Game map Areanode tree
A1
A2
B1
B2
![Page 21: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/21.jpg)
21
Server frame
1
2
3
Server frame
Barrier
Barrier
Barrier
Barrier
![Page 22: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/22.jpg)
22
Server frame
Receive & Process Requests
1
2
3
Server frame
Clientrequests
![Page 23: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/23.jpg)
23
Server frame
Receive & Process Requests
1
2
3
Server frame
Admin(singlethread)
Clientrequests
![Page 24: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/24.jpg)
24
Server frame
Clientrequests
Receive & Process Requests
Form &Send Replies
Clientupdates
1
2
3
Server frame
Admin(singlethread)
![Page 25: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/25.jpg)
25
Parallelization in games
Quake - Locks-based synchronization [Abdelkhalek et al. 2004]
![Page 26: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/26.jpg)
26
Parallelization: request processing
Clientrequests
Receive & Process Requests
Form &Send Replies
Clientupdates
1
2
3
Server frame
Admin(singlethread)
Parallelization in this stage
![Page 27: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/27.jpg)
27
Outline
Application environment: SynQuake game Parallelization issues
False sharingLoad balancing
Experimental results Conclusions
![Page 28: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/28.jpg)
28
Parallelization overview
Synchronization problems Synchronization algorithms Load balancing issues Load balancing policies
![Page 29: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/29.jpg)
29
Collision detection
• Player actions: move, shoot etc. • Calculate action bounding box
![Page 30: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/30.jpg)
30
Action bounding box
P1
Short- Range
![Page 31: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/31.jpg)
31
Action bounding box
P1
P2
Short- Range
Long- Range
![Page 32: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/32.jpg)
32
Action bounding box
P1
P2
P3
![Page 33: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/33.jpg)
33
Action bounding box
P1
P2
P3
Overlap P1
Overlap P2
![Page 34: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/34.jpg)
34
Player assignment
P1
P2
P3
T1
T3Players handled by threads
If players P1,P2,P3 are assigned to distinct threads → Synchronization required
Long-range actions have a higher probability to cause conflicts
T2
![Page 35: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/35.jpg)
35
False sharing
![Page 36: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/36.jpg)
36
False sharing
Move range
Sh
oo
t ran
ge
![Page 37: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/37.jpg)
37
False sharing
Action bounding box with locks
Move range
Sh
oo
t ran
ge
![Page 38: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/38.jpg)
38
False sharing
Action bounding box with TM
Action bounding box with locks
Move range
Sh
oo
t ran
ge
![Page 39: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/39.jpg)
39
Parallelization overview
Synchronization problems Synchronization algorithms Load balancing issues Load balancing policies
![Page 40: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/40.jpg)
40
Synchronization algorithm: Locks
Hold locks on parents as little as possible Deadlock-free algorithm
![Page 41: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/41.jpg)
41
Synchronization algorithm: Locks
…
A B
1
2
P1
P2
P4
P3P5
P6
P
A B
A1 A2 B1 B2
Root
P1
P2P5, P6 P4
P3
![Page 42: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/42.jpg)
42
Synchronization algorithm: Locks
…
A B
1
2
P1
P2
P4
P3P5
P6
P
A B
A1 A2 B1 B2
Root
P1
P2P5, P6 P4
P3
Area of interest
![Page 43: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/43.jpg)
43
Synchronization algorithm: Locks
…
A B
1
2
P1
P2
P4
P3P5
P6
P
A B
A1 A2 B1 B2
Root
P1
P2P5, P6 P4
P3
Area of interest
Leaves overlapped
![Page 44: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/44.jpg)
44
Synchronization algorithm: Locks
…
A B
1
2
P1
P2
P4
P3P5
P6
P
A B
A1 A2 B1 B2
Root
P1
P2P5, P6 P4
P3
Area of interest
Leaves overlapped
Lock parentstemporarily
![Page 45: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/45.jpg)
45
Synchronization: Locks vs. STMLocks:
1. Determine overlapping leaves (L)
2. LOCK (L)
3. Process L
4. For each node P in overlapping parents
LOCK(P)
Process P
UNLOCK(P)
5. UNLOCK (L)
STM:
1. BEGIN_TRANSACTION
2. Determine overlapping leaves (L)
3. Process L
4. For each node in P in overlapping parents
Process P
5. COMMIT_TRANSACTION
![Page 46: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/46.jpg)
46
Synchronization: Locks vs. STMLocks:
1. Determine overlapping leaves (L)
2. LOCK (L)
3. Process L
4. For each node P in overlapping parents
LOCK(P)
Process P
UNLOCK(P)
5. UNLOCK (L)
STM:
1. BEGIN_TRANSACTION
2. Determine overlapping leaves (L)
3. Process L
4. For each node in P in overlapping parents
Process P
5. COMMIT_TRANSACTION
STM acquires ownership gradually, reduced false sharingConsistency ensured transparently by the STM
![Page 47: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/47.jpg)
47
Parallelization overview
Synchronization problems Synchronization algorithms Load balancing issues Load balancing policies
![Page 48: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/48.jpg)
48
Load balancing issues
Assign tasks to threads
Balance workload
T1 T2
T3 T4
P2
P1
P3
P4
![Page 49: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/49.jpg)
49
Assign tasks to threads
Cross-border conflicts→ Synchronization
T1 T2
T3 T4
P2
P1
Moveaction
Shootaction P3
P4
Load balancing issues
![Page 50: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/50.jpg)
50
Load balancing goals
Tradeoff:Balance workload among threadsReduce synchronization/true sharing
![Page 51: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/51.jpg)
51
Load balancing policies
a) Round-robin
Y
256
768
1024
512
0 256 768 1024512
X
- Thread 3 - Thread 4- Thread 1 - Thread 2
![Page 52: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/52.jpg)
52
Load balancing policies
a) Round-robin
Y
256
768
1024
512
0 256 768 1024512
X
- Thread 3 - Thread 4- Thread 1 - Thread 2
b) Spread
256
768
1024
512
0 256 768 1024512
Y
![Page 53: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/53.jpg)
53
Load balancing policies
c) Static locality-aware
- Thread 3 - Thread 4- Thread 1 - Thread 2
b) Spread
256
768
1024
512
0 256 768 1024512
X
Y
256
768
1024
512
0 256 768 1024512
X
Y
![Page 54: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/54.jpg)
54
Locality-aware load balancing
Dynamically detect player hotspots and adjust workload assignments
Compromise between load balancing and reducing synchronization
![Page 55: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/55.jpg)
55
Dynamic locality-aware LB
Game map Graph representation
![Page 56: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/56.jpg)
56
Dynamic locality-aware LB
Game map Graph representation
![Page 57: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/57.jpg)
57
Experimental results
Test scenarios Scaling:
with and without physics computation The effect of load balancing on scaling The influence of locality-awareness
![Page 58: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/58.jpg)
58
128
256
384
640
768
896
1024
512
0 128 256 384 640 768 896 1024512
- Quest 1
X
YQuest scenarios
![Page 59: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/59.jpg)
59
Quest scenarios
- Quest 3
128
256
384
640
768
896
1024
512
0 128 256 384 640 768 896 1024512
- Quest 4
X
Y
- Quest 1 - Quest 2
![Page 60: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/60.jpg)
60
Scalability
![Page 61: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/61.jpg)
61
Processing times – without physics
![Page 62: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/62.jpg)
62
Processing times – with physics
![Page 63: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/63.jpg)
63
Load balancing
![Page 64: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/64.jpg)
64
Quest scenarios (4 quadrants)Y
static
dynamic
- Thread 3 - Thread 4- Thread 1 - Thread 2
![Page 65: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/65.jpg)
65
Quest scenarios (4 splits)
static dynamic
- Thread 3 - Thread 4- Thread 1 - Thread 2
![Page 66: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/66.jpg)
66
Quest scenarios (1 quadrant)
static dynamic
- Thread 3 - Thread 4- Thread 1 - Thread 2
![Page 67: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/67.jpg)
67
Locality-aware load balancing (locks)
![Page 68: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/68.jpg)
68
Conclusions
First application where STM outperforms locks:Overall performance of STM is better at 4
threads in all scenariosReduced false sharing through on-the-fly
collision detection
Locality-aware load balancing reduces true sharing but only for STM
![Page 69: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/69.jpg)
69
Thank you !
![Page 70: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/70.jpg)
70
Splitting components (1 center quest)
![Page 71: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/71.jpg)
71
Load balancing (short range actions)
![Page 72: 1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering](https://reader034.vdocument.in/reader034/viewer/2022051401/56649e5c5503460f94b54a05/html5/thumbnails/72.jpg)
72
Locality-aware load balancing (STM)