Spring MT: Difference between revisions

From Spring
Jump to navigationJump to search
Zerver (talk | contribs)
Zerver (talk | contribs)
→Spring MT: 94.11
Line 1: Line 1:
== Spring MT ==
== Spring MT ==
Unofficial 94.01 release,
Unofficial 94.11 release,
<span style="color:#FF0000">compatible with Spring 94.0</span>
<span style="color:#FF0000">compatible with Spring 94.1</span>


=== What is Spring MT? ===
=== What is Spring MT? ===
Line 28: Line 28:


=== How do I install it? ===
=== How do I install it? ===
<span style="color:#FF0000">Note: After installation, join lobby chat room '''#SpringMT9401''' to get access to MT autohosts.</span>
<span style="color:#FF0000">Note: After installation, join lobby chat room '''#SpringMT9411''' to get access to MT autohosts.</span>


[http://springrts.com/dl/buildbot/default/MTsim2/94.0-5-g67f92b3/win32/spring_94.0-5-g67f92b3.exe Windows full installer]<br />
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/win32/spring_94.1-19-g1f3d930.exe Windows full installer]<br />


[http://springrts.com/dl/buildbot/default/MTsim2/94.0-5-g67f92b3/win32/spring_94.0-5-g67f92b3_portable.7z Windows portable]<br />
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/win32/spring_94.1-19-g1f3d930_portable.7z Windows portable]<br />


'''Executables only''' (unzip to 94.0 install folder)<br />
'''Executables only''' (unzip to 94.0 install folder)<br />


[http://springfiles.com/spring/spring-base/spring-mt-win32-executables Windows]<br />
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/win32/%7bMTsim2%7d94.1-19-g1f3d930_spring-mt.7z Windows 94.11 MT]<br />


[http://springfiles.com/spring/spring-base/spring-mt-linux32-executables Linux32]<br />
[http://springrts.com/dl/buildbot/default/MTsim3/94.1-16-ge49de6c/win32/%7bMTsim3%7d94.1-16-ge49de6c_spring.7z Windows 94.11]<br />


[http://springfiles.com/spring/spring-base/spring-mt-linux64-executables Linux64]<br />
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/linux32/%7bMTsim2%7d94.1-19-g1f3d930_spring-mt-linux32-static.7z Linux32 94.11 MT]<br />


[http://springfiles.com/spring/spring-base/spring-mt-osx64-executables OSX64]<br />
[http://springrts.com/dl/buildbot/default/MTsim3/94.1-16-ge49de6c/linux32/%7bMTsim3%7d94.1-16-ge49de6c_spring-linux32-static.7z Linux32 94.11]<br />
 
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/linux64/%7bMTsim2%7d94.1-19-g1f3d930_spring-mt-linux64-static.7z Linux64 94.11 MT]<br />
 
[http://springrts.com/dl/buildbot/default/MTsim3/94.1-16-ge49de6c/linux64/%7bMTsim3%7d94.1-16-ge49de6c_spring-linux64-static.7z Linux64 94.11]<br />


'''Source code'''<br />
'''Source code'''<br />


[https://github.com/spring/spring/tree/67f92b36cf99c9374fb8f6a1b989bc86e7b50e74 Github Spring MT 94.01]<br />
[https://github.com/spring/spring/tree/1f3d930a716bb0260e8d12b7d80b8f8f0299a908 Github Spring MT 94.11]<br />


[https://github.com/spring/spring/tree/5a59047e6bb2c85fcb3ed11b9379c28276832370 Github Spring 94.01]<br />
[https://github.com/spring/spring/tree/e49de6c299860728208ee60c2092c2131cae1363 Github Spring 94.11]<br />


=== How do I install it on my autohost? ===
=== How do I install it on my autohost? ===
[http://springrts.com/dl/buildbot/default/MTsim2/94.0-5-g67f92b3/win32/%7bMTsim2%7d94.0-5-g67f92b3_spring-dedicated.7z Windows dedicated server]<br />
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/win32/%7bMTsim2%7d94.1-19-g1f3d930_spring-dedicated.7z Windows dedicated server]<br />
 
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/linux32/%7bMTsim2%7d94.1-19-g1f3d930_spring-dedicated-linux32-static.7z Linux32 dedicated server]<br />
 
[http://springrts.com/dl/buildbot/default/MTsim2/94.1-19-g1f3d930/linux64/%7bMTsim2%7d94.1-19-g1f3d930_spring-dedicated-linux64-static.7z Linux64 dedicated server]<br />


In '''spads.conf''' set masterChannel:SpringMT9401<br />
In '''spads.conf''' set masterChannel:SpringMT9411<br />


In '''spads.pl''', search for "sub cbJoinBattleRequest" and insert these lines of code immediately after the second line (the one that starts with "my"):
In '''spads.pl''', search for "sub cbJoinBattleRequest" and insert these lines of code immediately after the second line (the one that starts with "my"):
Line 59: Line 67:
   if (!exists $lobby->{channels}->{$masterChannel} ||  
   if (!exists $lobby->{channels}->{$masterChannel} ||  
       !exists $lobby->{channels}->{$masterChannel}->{$user}) {
       !exists $lobby->{channels}->{$masterChannel}->{$user}) {
     my $mtmsg = "This server requires Spring MT 94.01. ".
     my $mtmsg = "This server requires Spring MT 94.11. ".
       "Install http://springrts.com/wiki/Spring_MT";
       "Install http://springrts.com/wiki/Spring_MT";
     sayPrivate($user,$mtmsg);
     sayPrivate($user,$mtmsg);

Revision as of 23:29, 4 April 2013

Spring MT

Unofficial 94.11 release, compatible with Spring 94.1

What is Spring MT?

Spring MT is an independent engine that uses asynchronous multithreaded simulation (MT ASIM) to a much higher degree than the official Spring release. It also uses asynchronous pathfinding (APATH). This typically translates into significantly higher performance, depending on your hardware.

What hardware do I need?

You need three physical cores to get any real benefit. A quad core or better is recommended.

How much faster is it?

Typically more than 100% faster with a quad core. Benchmarked using Core I7 2600K, BA7.72, DeltaSiegeDry, Default pathfinder, 4x "give all".

How can it be faster?

The simulation will run on several CPU cores, and the pathfinder may also run on a separate core.

How does Spring / Spring MT play together?

Spring MT includes Spring, and uses automatic engine type detection to make it sync-compatible.

On which servers can I play Spring MT?

Look for servers that have "Spring MT" or "MT" in the description. These servers may have protected access and will send you a chat message with instructions how to join.

What is the downside?

The simulation may work slightly differently, producing some negative effects. This is also experimental stuff and may have crashbugs or desyncs. The Default pathfinder is recommended because the QTPFS pathfinder tends to kill the performance of Spring MT.

Should I use MT even if I don't want to play on MT servers?

You can give it a try, the included Spring (non-MT) version also has automatic CPU affinity setup that may give you some more performance.

How do I install it?

Note: After installation, join lobby chat room #SpringMT9411 to get access to MT autohosts.

Windows full installer

Windows portable

Executables only (unzip to 94.0 install folder)

Windows 94.11 MT

Windows 94.11

Linux32 94.11 MT

Linux32 94.11

Linux64 94.11 MT

Linux64 94.11

Source code

Github Spring MT 94.11

Github Spring 94.11

How do I install it on my autohost?

Windows dedicated server

Linux32 dedicated server

Linux64 dedicated server

In spads.conf set masterChannel:SpringMT9411

In spads.pl, search for "sub cbJoinBattleRequest" and insert these lines of code immediately after the second line (the one that starts with "my"):

  if (!exists $lobby->{channels}->{$masterChannel} || 
      !exists $lobby->{channels}->{$masterChannel}->{$user}) {
    my $mtmsg = "This server requires Spring MT 94.11. ".
      "Install http://springrts.com/wiki/Spring_MT";
    sayPrivate($user,$mtmsg);
    queueLobbyCommand(['JOINBATTLEDENY',$user,$mtmsg]);
    return;
  }

Consider disabling spads auto update to avoid the changes being overwritten.