mIRC Home    About    Download    Register    News    Help

Print Thread
#264469 03/12/18 09:26 PM
Joined: Jan 2004
Posts: 2,127
maroon Offline OP
Hoopy frood
OP Offline
Hoopy frood
Joined: Jan 2004
Posts: 2,127
In case this is something that's reasonably easy to locate and eliminate. It appears the scripting overhead has taken a large jump between v7.52 and v7.53, as demonstrated by running this bare-bones while() loop on both versions:

Code:
//!var %i 99999 , %t $ticks | !while (%i) { !dec %i } | !echo -a $calc($ticks - %t) ms



Repeating this consistently shows me the time increasing by 15%, and I had someone else seeing a difference as high as 30% jump. I didn't see a change in either version's time after giving the old version the same scripts and turning /remote off.

It's possible this is related to the issue I reported in the hashtable thread where I was seeing a 15% slowdown in beta 1438 comparted to 7.52-no-beta.

https://forums.mirc.com/ubbthreads.php/topics/263989/Re:_/hadd_does_not_save_items_#Post263989

That 1438 beta was prior to the first changes related to FNV1a, and was having most of the slowdown I was seeing when comparing the no-beta vs the 1897 beta which had FNV1a.

Joined: Dec 2002
Posts: 5,411
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 5,411
This is related to a combination of items 28 and 44, both of which required extra work relating to allocation and freeing of memory. Neither of these can be optimized further, so this is indeed a permanent change.

Joined: Dec 2002
Posts: 5,411
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 5,411
I was able to track down why this was affecting if/while loops. The script parser was zeroing the entire string size of the comparison parameters at a specific point during repeated loops, which was not necessary. This was more noticable due to the increased string size in v7.53. I have changed it to just zero the first byte, so looping should now end up being a little bit faster than previous versions.


Link Copied to Clipboard