minor language changes
This commit is contained in:
parent
926049ca06
commit
55a1675a4b
1 changed files with 25 additions and 19 deletions
44
report.lyx
44
report.lyx
|
@ -7534,8 +7534,9 @@ name "chap:Results-and-discussion"
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
In this chapter the results of the GGS prototype are presented and discussed.
|
In this chapter the results of tests done on the GGS prototype are presented
|
||||||
The results of the ing are presented with both graphical and textual content.
|
and discussed.
|
||||||
|
The test results are presented with both graphical and textual content.
|
||||||
Finally thoughts about how future improvements to the prototype could look
|
Finally thoughts about how future improvements to the prototype could look
|
||||||
like are given.
|
like are given.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
@ -7636,6 +7637,10 @@ Since we donät include this..
|
||||||
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Plain Layout
|
||||||
|
Richard: I think we should mention it and conclude that the data was garbage.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
\end_inset
|
\end_inset
|
||||||
|
|
||||||
The hardware that the GGS was running on was a Thinkpad T410, with a Intel
|
The hardware that the GGS was running on was a Thinkpad T410, with a Intel
|
||||||
|
@ -7643,28 +7648,28 @@ The hardware that the GGS was running on was a Thinkpad T410, with a Intel
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
In the first test, where Mnesia was used, the server had a peak value of
|
In the first test, in which Mnesia has been heavily used, the server had
|
||||||
nearly 6000 messages per second.
|
a peak value of nearly 6,000 messages per second.
|
||||||
When this number was reached Mnesia warned that it was overloaded and shortly
|
When this number was reached Mnesia warned that it was overloaded and shortly
|
||||||
after that Mnesia failed to serve requests.
|
after that Mnesia failed to serve requests.
|
||||||
This result was not unexpected as this test put the database under heavy
|
This result was not unexpected as this test put the database under heavy
|
||||||
load.
|
load.
|
||||||
In the next testing session, the test was conducted with another client
|
In the next testing session, the test has been conducted with another client
|
||||||
that did not use Mnesia.
|
that did not use Mnesia.
|
||||||
Without mnesia the server peaked at 60000 messages per second, however
|
Without mnesia the server peaked at 60,000 messages per second, however
|
||||||
this was only for a very short time.
|
this was only for a very short time.
|
||||||
The average throughput was around 25000 messages per second, five times
|
The average throughput was around 25,000 messages per second, five times
|
||||||
more than what the server was able to process with Mnesia in place.
|
more than what the server was able to process with Mnesia in place.
|
||||||
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
In the second testing session the delay between the server and clients was
|
In the second testing session the delay between the server and clients has
|
||||||
also measured.
|
also been measured.
|
||||||
A connection can be seen between those values, as long as the server is
|
A connection can be seen between those values; as long as the server is
|
||||||
under moderate load the delay is low and stable.
|
under moderate load the delay is low and stable.
|
||||||
When the load on the server increases heavily the delay does the same,
|
When the load on the server increases heavily the delay does too, this
|
||||||
this is because the server cannot process all incoming messages and therefore
|
is because the server cannot process all incoming messages and therefore
|
||||||
messages are put in a queue within the system.
|
messages are put in a queue within the system.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
|
@ -7763,8 +7768,8 @@ name "fig:msg-per-sec-MNESIA"
|
||||||
\end_inset
|
\end_inset
|
||||||
|
|
||||||
The graph shows messages per second for intervals of clients connected.
|
The graph shows messages per second for intervals of clients connected.
|
||||||
Each client performs 3 asynchronous writes to the Mnesia database each
|
Each client performs at least 3 asynchronous writes to the Mnesia database
|
||||||
second.
|
each second.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\end_inset
|
\end_inset
|
||||||
|
@ -7925,7 +7930,7 @@ Future improvements
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
There are several things in the GGS that can be improved.
|
There are several things in the GGS prototype that can be improved.
|
||||||
In this section the most important additions to the GGS are described,
|
In this section the most important additions to the GGS are described,
|
||||||
along with a motivation as to why these additions are not found in the
|
along with a motivation as to why these additions are not found in the
|
||||||
GGS prototype.
|
GGS prototype.
|
||||||
|
@ -7985,10 +7990,11 @@ Need references for assertions about UDP being nicer on the CPU.
|
||||||
Because of TCP being a connection oriented protocol, it is not suited for
|
Because of TCP being a connection oriented protocol, it is not suited for
|
||||||
all types of game data transfers.
|
all types of game data transfers.
|
||||||
Each transmission will consume more network bandwidth than connectionless
|
Each transmission will consume more network bandwidth than connectionless
|
||||||
protocols like UDP and cause unnecessary load on the processor.
|
protocols like UDP and cause unnecessary load on the processor while performing
|
||||||
|
, in some cases unnecessary, tests to assure the correctness of the data.
|
||||||
Therefore support for UDP would mean that more games could be run simultaneousl
|
Therefore support for UDP would mean that more games could be run simultaneousl
|
||||||
y on the GGS.
|
y on the GGS.
|
||||||
Another advantage of UDP is latency being reduced.
|
Another advantage of UDP is that latency is being reduced.
|
||||||
Without having to setup a connection for each group packets of data being
|
Without having to setup a connection for each group packets of data being
|
||||||
sent, they will be sent instantly and therefore arrive earlier.
|
sent, they will be sent instantly and therefore arrive earlier.
|
||||||
Latency is of highest importance in real-time games as it improves realism
|
Latency is of highest importance in real-time games as it improves realism
|
||||||
|
@ -8028,7 +8034,7 @@ The cache was never implemented in the prototype due to other parts of the
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
A possible future addition to the GGS could be to add this cache in the
|
A possible future addition to the GGS could be to add this cache in the
|
||||||
database module.
|
database module.
|
||||||
The API would not need to change, as this could be implemented internally
|
The API would not need any changes, as this could be implemented internally
|
||||||
in the database module.
|
in the database module.
|
||||||
|
|
||||||
\begin_inset ERT
|
\begin_inset ERT
|
||||||
|
@ -8062,7 +8068,7 @@ To make the GGS as generic as possible seperation of game and server logic
|
||||||
is necessary.
|
is necessary.
|
||||||
Designing a good API is vital in order to allow game developers to interact
|
Designing a good API is vital in order to allow game developers to interact
|
||||||
with the server in a easy manner and with minimal overhead.
|
with the server in a easy manner and with minimal overhead.
|
||||||
Furthermore every game should be isalated so that games can not interfare
|
Furthermore every game should be isolated so that games can not interfare
|
||||||
with each other.
|
with each other.
|
||||||
Isolation can be achived by introducing a context for each game which leads
|
Isolation can be achived by introducing a context for each game which leads
|
||||||
to the fact that each game runs in its own sandbox.
|
to the fact that each game runs in its own sandbox.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue