System Faster Table

Troll-Brain

You can change this now in User CP.
Reaction score
85
// ON-TOPIC o_O

You have used the japi natives for the benchmark ?
What was the patch's version ?

Because i've heard that since the patch 1.22 blizzard had optimized the game cache, dunno if it's true or not.
 

Viikuna

No Marlo no game.
Reaction score
265
Yea, I too heard that they made it faster because of DotA.
 

Romek

Super Moderator
Reaction score
963
Has anyone got an official source, or at least a somewhat decent source for this "gamecache optimization"?

Also, do we get a demo map for this?
 

Jesus4Lyf

Good Idea™
Reaction score
397
>You have used the japi natives for the benchmark ?
>What was the patch's version ?
>Because i've heard that since the patch 1.22 blizzard had optimized the game cache, dunno if it's true or not.

Yes.
1.20 or 1.21, i forget.
Irrelevant, since I gave up on actually simulating gamecache.

Instead, I just optimised Table by simply storing the struct number as a string. The optimisation replaces I2S with an array call. So gamecache speed doesn't come into it.

>Also, do we get a demo map for this?
Bah!
I only have so much attachment space... But honestly, this is a copy-over for Table. Does it really need a demo map? :(
 

Romek

Super Moderator
Reaction score
963
> Instead, I just optimised Table by simply storing the struct number as a string. The optimisation replaces I2S with an array call.
Really, you weren't the first to suggest doing so. I'm pretty sure I told you that before. :p

> Does it really need a demo map?
Well, if it's really difficult for you to post one, then it's fine. It'd make it slightly more convenient though.

Want me to change the name of the thread to 'Faster Table'?
Also, do you have permission from Vexorian to modify this and submit it? ^_^
 

Troll-Brain

You can change this now in User CP.
Reaction score
85
ofc i don't want to know it for your Table's optimisation, but for your first code.

However i don't know if it possible to make a proper benchmark without StopWatch... , and because we can't use them with a newer patch than 1.20 or 1.21 ( i don't remember) , then i guess the rumor about game cache will still live few months at least ^^
 

Jesus4Lyf

Good Idea™
Reaction score
397
>Also, do you have permission from Vexorian to modify this and submit it? ^_^

Nope. And you may note I didn't even put my name on it (and he didn't even put his name on the original, as far as I know). To be honest, I'd rather Vexorian update the official version of table, and update vJass to support it enough to encapsulate the "base" string properly while still using inheritance. :banghead:

If he updates it this can be graveyarded. But he's banned me from WC3C anyway. So until someone gets him to optimise Table himself, this is useful. :(

And yeah, you may as well rename it to Faster Table. *Shrugs* :)
 

Romek

Super Moderator
Reaction score
963
Well, as unoriginal as this may be, I'll approve it - Because it's useful. :)
Though it's possible someone could move it back because you didn't actually create it yourself (from scratch).

If any other mod wishes to do so, then feel free. Though personally, I'm fine with this being approved.
 

Vexorian

Why no custom sig?
Reaction score
187
Err, I am not sure, adding a limit just to replace an I2S with an array lookup. Really unsure about it. How much faster it really is? well, it is unlikely as heck people would use more than 8000 Tables but I liked the non-limitness-

It is not clever to use Table for things where performance matters anyway.
 

Jesus4Lyf

Good Idea™
Reaction score
397
>adding a limit just to replace an I2S with an array lookup
I just realised how it adds a limit. It previously had no members. Gotcha.

Well... I can't even fathom how people could use 8191 tables. Last I checked, it's about 10% faster. But was the speed of gamecache upgraded? I hear rumours...

And I'm curious as to why vJass doesn't have protected members for structs. It would've been quite nice here. In your version of table, you can declare and create a "Table" instead of a "HandleTable" and use it as a HandleTable (or at least you can in my version of jasshelper). You can't have private members and maintain that, however... :(
 

RaiJin

New Member
Reaction score
40
can u give an example of how to use this

sorry never really used table or any system like this lol
 

Troll-Brain

You can change this now in User CP.
Reaction score
85
Btw there is a new version of table which allow to use 2 arguments instead of one, in fact "like" using "missionkey" and "key" of the game cache.
This one should be graveyarded.
 

Jesus4Lyf

Good Idea™
Reaction score
397
Mmm... This probably can be graveyarded, but I can't bother checking if and how Vex accomplished this to be sure. >_<

The beautiful thing is regardless what version you use, they copy straight over eachother, so this being graveyarded is no issue.

I don't recall the original link to Table. <_<
 

Viikuna

No Marlo no game.
Reaction score
265
Table 3.0 is gonna use hashtable natives and everything is just crazy and fucked up..
 

Azlier

Old World Ghost
Reaction score
461
Hashtables. All the good parts of game cache in one handle type.

Table 3.0 (Now in hashtable form!)
 

kingkingyyk3

Visitor (Welcome to the Jungle, Baby!)
Reaction score
216
Then use my Simulated Hashtable to use the new Table 3.0 if your warcraft have 1.23 or older patch.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top