NEWS ARTICLES


    What's News in the PlayBasic world ? - Find out here.



 PlayBasic V1.64N3B and C Released

By: Kevin Picone Added: December 2nd, 2012

Category: All,Upgrade

    PlayBasic V1.64N3b _Retail Upgrade_ is Now Available (31st, Oct, 2012)

     This update includes a fix for some issues with some built in constants (like PBCompileMode) not responding to the compiler settings. Beyond that it also includes a number of mostly small tweaks to the variable/constant and literal searching routines. These tweaks improve the compile time by around 30% in programs that make heavy usage of lots of unique variables / constants or literals. Routinely getting a compile performance of 10,000 plus lines a second on 7 year old single core AMD system.

Release Announcement


    PlayBasic V1.64N3c - Compiler Tweaks Round #2

     Been off working on some other bits and bobs in the real world lately, but have been using PB for a lot of the grunt work, as such noticed some oddities in some program disassembles. The first being that the code didn't seem to screen out redundant moves between the same variable. So if the code had the line A = A, it'd drop a move operation for it, even though it's pointless. Not a big deal for the odd operation, but will certainly add up if such code exists in a tight loops.

     Another oddity was occurring when reading the fields from a typed variable/array/list and storing that back in a variable. So if you had code like X#=Player.X#, the code generator would always drop there extra move operations. Not a big thing in every day code, but can quickly magnify in heavy loops. There's not a huge gain from this, it's more about stream lining the operations. Which can be seen when running the Type brute force bench mark, as there's only a about 1.5 milliseconds gain across the entire test. It'd be very handy if you cache lots of fields or they're modestly string fields.

     PlayBasic V1.64N3c - Compiler Tweaks Round #3

     Dropped another session into peeking through some dis-assemblies and it would seem that reading from cached type fields also had the same problem where it'd drop extra move opcodes all the time, where they're only needed some of the time. So tweaked the code generator again and those bogus moves vanish.

    PlayBasic V1.64N3c _Retail Upgrade_ is Now Available (29th, Nov, 2012)

     This update incorporates this weeks compiler and optimizer tweaks. Since the changes only alter code generation, it can be used with V1.64N3 runtimes, which haven't been included.

Release Announcement







 

 
     
 
       

(c) Copyright 2002 / 2024 Kevin Picone , UnderwareDesign.com  - Privacy Policy   Site: V0.99a [Alpha]