|
Llwethen Novice
Joined: 08 Dec 2006 Posts: 37 Location: Lancaster,Oh
|
Posted: Thu Sep 27, 2007 12:54 pm
[2.03] Scroll speed slower than 1.34 |
New thread from What more does CMUD 2.0x need for Public status?
Using Alt-Q for testing
Version 1.34 - Triggers on 7.2/7.2/7.0
Triggers off 4.8/4.8/4.2
Version 2.03 - Triggers on 8.9/8.9/8.7
Triggers off 6.6/6.4/6.3
I thought the problem is the way that Cmud has to allocate memory as I use a 10k scrollback.
So doing Alt-Q until Cmud stops growing in task manager then running Alt-Q.
Version 1.34 - Triggers on 5.9/5.9/5.5
Triggers off 3.6/3.8/3.7
Version 2.03 - Triggers on 7.8/7.2/7.7
Triggers off 5.5/5.5/4.8
More importantly 1.34 just feels more reactive when in large session. I hadn't reported this as the initial problems were with stability and then the line gagging problem. Toril can sometimes just blast you with larges amounts of battle spam instantly easily several hundred lines per round. 2.03 I find myself reacting a couple of rounds behind others. 1.34 I'm right in sync with my group. This is something you only see at the top end of the game and not in the newbie areas.
I'm baffled as the triggers should be quicker with the new string caches. Gagging should be faster. So I use 1.34 in high level areas and 2.03 in the safer areas.[/url] |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Sep 27, 2007 4:56 pm |
I just tried this with the blank default session, and I cannot reproduce any difference. In fact, 2.03 came out faster:
1) Open CMUD, close Session window, press Ctrl-Q
Version 1.34: 3.6/2.0/2.0
Version 2.03: 3.5/1.6/1.7
Test this on your system and see what you get. If it is only slower when your settings are loaded, then it might be some script running in the background somehow. Or, you can send me your *.PKG file and I can try it here.
Trigger speed might be slightly different depending a lot on what you are specifically doing in your triggers. If you have lots of #WAIT commands, then you are creating a lot of background threads, and the thread overhead might make it slower in some cases. Also, some commands need to update the user interface, and that can only be done by the main thread, so background threads need to "synchronize" themselves with the main thread to accomplish some user interface tasks.
The String Hash caches have no effect on triggers. A trigger still needs to be converted to a Regular Expression, and this requires expanding a string list to it's full string value. The PerlRE regular expression library has no way to do hashed lookups on string lists. So there is no speed increase in triggers. The only speed increase from the string hash is in %ismember and %db functions.
Gagging also isn't any faster. The only difference in 2.03 is that the screen output is better controlled so that you don't see the text being gagged. But the actually code to remove text from the screen is the same as 1.34, so no speed improvements there...it's just a visual improvement.
Anyway, do a test in a blank session and let me know if you still see the slowdown. |
|
|
|
Arde Enchanter
Joined: 09 Sep 2007 Posts: 605
|
Posted: Thu Sep 27, 2007 6:18 pm |
I don't have 1.34, only 2.03, but:
3.0/1.7/1.9 - Session closed
2.0/2.2/2.0 - Almost empty session opened (my test sission)
8.0/6.3/6.2 - My primary session opened
On the first run test with closed session slower that with almost empty session opened? |
|
_________________ My personal bug|wish list:
-Wrong Priority when copy-paste setting
-1 prompt trigger for Mapper, Session and General Options, not 3 different!
-#SECTION can terminate threads
-Buttons can't start threads |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Sep 27, 2007 7:38 pm |
The scrolling speed depends upon whether or not the scrollback buffer is full. When CMUD first starts, it needs to allocate memory for the scrollback on-the-fly as new lines are received. Once the scrollback is full, the CMUD reuses existing memory allocations, which makes it faster.
When you load your "almost empty test session", it is reusing the default "untitled" window that you already tested. So, the scrollback buffer is already full and that's why you get 2.0 instead of 3.0 for your test.
You can use the #CLR command to ensure that the scrollback buffer is cleared before testing. Usually I just ignore the first few times and spam Ctrl-Q until I'm sure the scrollback is full, and then I just compare the faster times when the scrollback is full, since this better represents the screen-scrolling speed and doesn't have any memory allocation speed confused with it. |
|
|
|
Llwethen Novice
Joined: 08 Dec 2006 Posts: 37 Location: Lancaster,Oh
|
Posted: Fri Sep 28, 2007 12:18 am |
Reran the test with the default session
1.34 Offline
Scrollback Empty 4.7/4.7/4.7
Scrollback Full 3.1/3.0/3.1
2.03 Offline
Scrollback Empty 4.5/4.5/4.7
Scrollback Full 3.1/3.0/3.1
1.34 Connected
Scrollback Empty 5.5/5.5/5.5
Scrollback Full 3.9/3.9/3.9
2.03 Connected
Scrollback Empty 5.3/5.3/5.3
Scrollback Full 3.6/3.6/3.6
Based on these tests 2.03 is faster. I'm not using #WAIT anywhere, always used a #ALARM or #TEMP if a situation needed it.
I'll have to try and reimport my 1.34 packages again to ensure the packages are identical. |
|
|
|
Llwethen Novice
Joined: 08 Dec 2006 Posts: 37 Location: Lancaster,Oh
|
Posted: Fri Sep 28, 2007 12:53 am |
Uninstalled 2.03. Reinstalled 2.03. Copied all the packages/settings/etc from 1.34 to the 2.03 directory. Took a bit for 2.03 to update them.
Checked for #wait and found none. Compatability report found no problems.
Ran Alt-Q till scrollback was full and times stabilized.
Triggers on/Sesson Online
1.34 5.9/6.1/5.9
2.03 8.0/7.8/8.0
Triggers off/Sesson Online
1.34 3.7/3.6/3.6
2.03 5.4/5.6/5.4
Where should I email .Pkg's? |
|
|
|
Seb Wizard
Joined: 14 Aug 2004 Posts: 1269
|
Posted: Fri Sep 28, 2007 1:18 am |
How about offline with and without triggers enabled?
|
|
|
|
Llwethen Novice
Joined: 08 Dec 2006 Posts: 37 Location: Lancaster,Oh
|
Posted: Fri Sep 28, 2007 1:54 pm |
I did test offline as well. Just subtract .5 seconds from the online results for either version.
|
|
|
|
Seb Wizard
Joined: 14 Aug 2004 Posts: 1269
|
Posted: Fri Sep 28, 2007 3:29 pm |
I wonder why there is a difference between online and offline...
|
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Fri Sep 28, 2007 5:01 pm |
Send the PKG file to sales@zuggsoft.com, or just email me an XML export of your settings.
|
|
|
|
Llwethen Novice
Joined: 08 Dec 2006 Posts: 37 Location: Lancaster,Oh
|
Posted: Sun Sep 30, 2007 1:54 pm |
Sent a zip file with the setup for the character I've been testing.
Cannot give any more information as 2.04 just crashes as soon as I log on. Several crash dumps have been sent to your automated system. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Mon Oct 01, 2007 5:48 pm |
Received the zip file. Do you get the error when you open your session Offline, or only when connecting? If you only get the crash when connecting, then I'll need the hostname and port of the MUD you are connecting to so that I can try it from here.
|
|
|
|
Llwethen Novice
Joined: 08 Dec 2006 Posts: 37 Location: Lancaster,Oh
|
Posted: Tue Oct 02, 2007 1:09 am |
Connecting. Actually it's looks like it's right after login when the AutoLog class turns off.
Torilmud.org:9999 |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Tue Oct 02, 2007 1:57 am |
If you turn off the Autologin in your Edit Session/Characters tab, and then log in manually, do you still get the same crash?
|
|
|
|
Llwethen Novice
Joined: 08 Dec 2006 Posts: 37 Location: Lancaster,Oh
|
|
|
|
|
|