<li><aclass="backlink"title="Click to do a full-text search for this title"href="./Benchmarking?action=fullsearch&value=linkto%3A%22Benchmarking%22&context=180">Benchmarking</a></li>
<spanclass="anchor"id="line-6"></span><spanclass="anchor"id="line-7"></span><pclass="line862">A network demo is a recording of the network traffic during a multiplayer game. A network demo can be recorded at the a client connected to a multiplayer server. Such network demos are referred to as <em>client netdemos</em>. A network demo can also be recorded at the server. These network demos are referred to as <em>server netdemos</em>. ( see <ahref="./NetworkDemos.html">NetworkDemos</a> ) <spanclass="anchor"id="line-8"></span><spanclass="anchor"id="line-9"></span><pclass="line862">When playing back a <em>client netdemo</em> Quake 4 will behave exactly as if playing a live game. <em>Server netdemos</em> record more information than <em>client netdemos</em>, and when playing back a server demo the view can be moved freely through the world or the view can be attached to any of the players that were playing on the server at the time of the recording. <spanclass="anchor"id="line-10"></span><spanclass="anchor"id="line-11"></span><pclass="line862">Quake 4 allows playback of <em>client netdemos</em> as fast as possible where the engine continuously runs one game frame and one render frame. Playing back a network demo as fast as possible is referred to as a <em>net time demo</em>. Net time demos can be used to rate the <em>overall</em> performance of a system configuration. However, anyone using Quake 4 net time demos should be careful in properly using this tool for benchmarking. <spanclass="anchor"id="line-12"></span><spanclass="anchor"id="line-13"></span><pclass="line862">First of all Quake 4 can be run in single or multi-threaded mode. When a system has multiple CPUs or a CPU with multiple cores the Quake 4 performance can be improved by enabling multi-threading (SMP) by setting the console variable <strong>r_useSMP</strong> to <strong>1</strong>. However, when a system does neither have multiple CPUs nor a CPU with multiple cores the performance may not improve if multi-threading is enabled. Also make sure the lag-o-meter is disabled by setting the console variable <strong>net_clientLagOMeter</strong> to <strong>0</strong>. The lag-o-meter aversely affects the performance when multi-threading is enabled. When enabling multi-threading in Quake 4 it is advised to disable multi-threading in the graphics driver. The multi-threading in Quake 4 generally outperforms the multi-threading in the graphics driver and once multi-threading in Quake 4 is enabled the multi-threading in the graphics driver may aversely affect the performance. <spanclass="anchor"id="line-14"></span><spanclass="anchor"id="line-15"></span><pclass="line862">The net time demos reflect the <em>overall</em> system performance including CPU speed, memory speed and GPU speed. At any time one of the many components in a PC can become a bottleneck and limit the performance. As such correct interpretation of the results from net time demos requires identifying the bottlenecks in the system. <spanclass="anchor"id="line-16"></span><spanclass="anchor"id="line-17"></span><pclass="line862">At higher resolutions the Quake 4 performance quickly becomes limited by the graphics card. This means that graphics card cannot keep up with the speed of the CPU and memory. On multi-processor or multi-core systems with the Quake 4 SMP code enabled the graphics card typically becomes more of a bottleneck because the load on the first cpu/core is reduced by moving work to the second cpu/core. To exclude the graphics card as a bottleneck the console variable <strong>r_skipRenderContext</strong> can be set to <strong>1</strong>. With this console variable set to 1 all 3D rendering on the graphics card is skipped and the Quake 4 performance becomes limited only by the speed of the CPU, FSB, memory etc. <spanclass="anchor"id="line-18"></span><spanclass="anchor"id="line-19"></span><pclass="line874">The Quake 4 performance is not only dependent on the CPU speed but also very much dependent on the memory speed. Increasing the memory speed can have close to the s
<spanclass="anchor"id="line-30"></span><spanclass="anchor"id="line-31"></span><pclass="line862">Quake 4 also supports so called "render demos". These render demos were used to test driver compatibility and are not meant for benchmarking. A render demo stores render commands and feeds them to the graphics driver. As such render demos do <em>not</em> reflect the performance of a system during actual gameplay because render demos push commands directly through the renderer and completely bypass the game code. In other words the game logic, physics etc. are not run when playing back a render demo. <spanclass="anchor"id="line-32"></span><spanclass="anchor"id="line-33"></span><pclass="line862">The bottom line is that render demos do <strong>not</strong> reflect the performance during actual gameplay while net time demos <strong>do</strong> reflect the performance during actual gameplay. When playing a <em>time demo</em> with the <strong>playTimeDemo</strong> console command (as opposed to a <em>net time demo</em> with the <strong>playNetTimeDemo</strong> console command) Quake 4 plays a "render demo". In other words do not use <em>time demos</em> (<strong>playTimeDemo</strong>) but use <em>net time demos</em> (<strong>playNetTimeDemo</strong>) for benchmarking. <spanclass="anchor"id="line-34"></span><spanclass="anchor"id="bottom"></span></div><pid="pageinfo"class="info"lang="en"dir="ltr">Benchmarking (last edited 2006-07-17 22:08:49 by <spantitle="TimotheeBesset @ hellstorm.idsoftware.com[192.246.40.8]"><aclass="nonexistent"href="./TimotheeBesset.html"title="TimotheeBesset @ hellstorm.idsoftware.com[192.246.40.8]">TimotheeBesset</a></span>)</p>
<li><ahref="http://moinmoin.wikiwikiweb.de/">MoinMoin Powered</a></li><li><ahref="http://www.python.org/">Python Powered</a></li><li><ahref="http://validator.w3.org/check?uri=referer">Valid HTML 4.01</a></li>