WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated November 7, 2019)

User projects written in or related to FreeBASIC.
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 02, 2019 17:49

PaulSquires wrote:I don't know if you realize this but you can add those switches directly to each Build Configuration

I did and I considered that. The default set up has 12 build configurations. My SetCompilerSwitches has 7 sets. That gives us 84 possibilities. Using only the build configurations we would end up a very long list. Some folk use a variety of other sets besides mine.

and then display a small dropdown combobox with the list of available Toolchain version numbers

Yeah, I'll buy that.

You could also have a small dropdown combobox with a list of switches sets to replace SetCompilerSwitches.

The result would be comboboxes for toolchains, configurations, and optional switches; in that order.

I repeat that putting the optional switches in the Build Configurations is, IMO, not a good idea.
srvaldez
Posts: 2133
Joined: Sep 25, 2005 21:54

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby srvaldez » Oct 02, 2019 17:50

I like the idea very much.
badidea
Posts: 1576
Joined: May 24, 2007 22:10
Location: The Netherlands

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby badidea » Oct 02, 2019 18:56

deltarho[1859] wrote:So, do I need that many builds? Probably not but there is a reason why none of those builds end with '.0'.

Being a collector probably had evolutionary advantages. That is likely the reason why so many people collect all kinds of weird stuff. But I doubt that collecting 'GNU Compiler Collections' increases a person's chance of survival. For the GCC's being collected the chances of survival do increase. Although other forces make chances of survival for the GCCs with the highest version numbers largest.
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 02, 2019 19:08

I have done quite a bit of testing on the builds and opt level -O3 adds quite a bit to the size of the binaries with, for me, a marginal improvement, if any, in performance. Now some folk may be looking for the best performance they can get even if it is only marginal and are not bothered about the size of the binaries, so they will want -O3.

Of the later builds 7.4 is the most likely to fail with -O3. I had many issues with 7.3 last year. With regard 8.3 and 9.2 there is little between them with 9.2 having an edge sometimes on binary sizes.

I don't have a lot of experience with 9.2 but have been using 8.1 with WinFBE for sometime. I have had some issues with 9.2 where I got past WinFBE but not poseidonFB. Switching to 8.3 for the same source saw no errors, no warnings and no gcc comments for both IDEs. 8.3 was released in February this year so that is looking good. Having said that, there are 10 months between 7.3 and 7.4 and I don't like either of them, from FB's point of view.

If you want an uncomplicated life and asked me to 'step up to the plate' I would recommend 5.2 and 8.3. As for me I will go for 9.2 because I want to use 'the latest and greatest' but I expect it to fall short of being the greatest occasionally and will drop down to 8.3.

With regard fbc giving us a build alongside 5.2 then I would go for 8.3.
MrSwiss
Posts: 3303
Joined: Jun 02, 2013 9:27
Location: Switzerland

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby MrSwiss » Oct 02, 2019 22:00

deltarho[] wrote:I have done quite a bit of testing on the builds ...

Your tests are IMO useless, because you don't use a FBC version, where the internal libs
have been compiled with the same GCC version, that's later used as a backend ...

(That is the reason, that coderJeff has made those 1.07.1 packages, for testing!)
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 02, 2019 23:59

@MrSwiss

I very much regret that you are correct. I took an easy way out and threw the baby out with the bath water.

So rip out FreeBASIC-1.07.1-gcc-7.4, ... 8.3, and ... 9.2.

and replace with

FreeBASIC-1.07.1-gcc-7.4
FreeBASIC-1.07.1-gcc-8.3
FreeBASIC-1.07.1-gcc-9.2

or whatever you want.

Now fbc and all the fb libs are compiled with the respective toolchain.

Not all the libs changed - I had noticed with St_W's nightly builds only a few libs do.

I will do further tests but I suspect that my conclusions will not change. 7.4 is still the weak link and 8.3 is still a good bet based upon my experience with 8.1.

So, srvaldez had a bad hair day recently, Paul Squires had a bad hair day with WinFBE 1.93 and I have just had a bad hair day. Paul corrected his issues and I have just corrected mine.

All three of us have something in common - we are human. Sadly, srvaldez took it terribly, Paul raised his eyes and put his head down, and I did the same. srvaldez is a really nice bloke and I would like to see him 'back in the saddle' as, I should imagine, most of us do.

@PaulSquires

Sorry Paul, kill your 8.3 and 9.2 rars at GitHub and replace with the above.

@MrSwiss

Your personality comes out with an inappropriate use of '!'. What a nice guy you would appear to be otherwise. On second thoughts, scrub that.

Added: I have just realized that it is handy that MrSwiss lives each day in the hope of catching me out as it means that there is little chance of my making a mistake and no one spotting it. There is always a bright side. Image
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 03, 2019 6:42

I should tell you that neither Paul nor myself are making the builds. The author is a member of the PowerBASIC forums as well; he joined before I did. Perhaps he is concerned that some members here may not be keen on PowerBASIC members joining the FreeBASIC forum, so he would prefer to be anonymous. Paul knows this because I did not want him to mistakenly give me credit for the builds. I have had two sets of builds so far. I overlaid the first set with 1.07.1 and used them. I then received the second set thinking that they would be the same as my overlaid versions. They are not and that is where I screwed up. I was able to post the corrected versions fairly quickly because they were sat there; all I had to do was combine the pairs as Paul does. I got an email from Mr Anonymous telling me that MrSwiss was wrong. I wrote back telling him that MrSwiss was correct and why. I am now expecting to get my head bitten off good and proper. Anyway, it will not happen again. I told him that had he been in the driving seat my mistake would not have happened. I would prefer him to 'come in out of the cold' but I must respect his wishes. He is happy that his builds now feature in WinFBE and that seems to be good enough for him.
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 03, 2019 7:21

Here is a binary size comparison for dodicat's Pool program using 64-bit; which I chose because it compiles to over 200KB.

Code: Select all

     -O2    -O3
5.2 211968 216064
7.4 204288 210944
8.3 203264 204800
9.2 205312 212480

There is a clear pattern. On this occasion 9.2 breaks the trend, perhaps 9.3 will correct that. The -O3 can be expensive and performance is not an issue with Pool.

The pattern was not so clear with my incorrect builds.

If the above is repeated for a variety of code then 8.3 is looking good from a binary size perspective.

Interestingly my incorrect builds were compiling and running OK but I have found one which did not compile and is now doing so. Perhaps I was just lucky with the libraries being used, but I am not an expert in these matters, so I should not speculate.

I will have a look at my crypto work to consider performance differences. Very intensive graphics programs could do with looking at but I do not have any.

Added: I did a 64-bit -O3 test on my Encrypternet application and 7.4 failed.
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 03, 2019 8:50

Here is a simple performance test: 100000 SHA256 on 16KB of text

Firstly, 7 or 8 seconds isn't exactly an arduous task.

Secondly 64-bit is faster than 32-bit on all counts.

With regard -O2 8.3 is fastest for both 32-bit and 64-bit; again 9.2 breaks the trend.

With regard -O3 the results are inconclusive and in some cases the results are slower; many pundits warn us about this. -O3 is not doing us any favours.

This is not a wonderful test compared with websites that do many real power tests but 8.3 wins the prize for this test.

We could have ourselves a winner with 8.3 as it did well with the binary size test.

I do not have the time to go into the depth that some websites do but the indications are that nobody will get the sack for using 8.3. I mentioned earlier that I would go for 9.2 - I reckon that I will go for 8.3 and wait for 9.3. Image

I still have serious reservations about 7.4 so I could be settling for 5.2 and 8.3.

As always we could do with some members chipping in and testing some of their code but I won't hold my breath. Image

@coderJeff

Hold the press and start to think about 8.3.

Code: Select all

        -O2
     32     64
5.2 8.501  7.588
7.4 8.358  7.284
8.3 8.353  7.166
9.2 8.368  7.301
 
        -O3
     32     64
5.2 8.426  7.407
7.4 8.451  7.256
8.3 8.463  7.270
9.2 8.418  7.696
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 03, 2019 17:17

Graphics test: Used pset to plot random points within Screen 21, 32 (1280x1024) ( 64-bit -O2). The generator MsWs was used.

8.3 and 9.2 were almost identical. They beat 5.2 by nearly 20% and 7.4 by 15%.

8.3 shines again.
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 05, 2019 16:58

With regard the SHA256 test, I may be wrong, I don't think that it and the other hashing functions were written by Microsoft and were written in assembler. My PRNGs are not showing much difference between compilers, and they use a fair amount of assembler.

Overall conclusion: Of the bunch 8.3 produces the smallest binaries. I have not found a case where there is a performance reduction when choosing 8.3. What we do get is a performance boost ranging from marginal, if any, up to 20% depending upon source content. Opt level -O3 is less likely to work with 7.4, 8.3, and 9.2 compared with 5.2. On the other hand -O2 is improved with the later compilers, so I use -O2 as the default. If -O3 does work the binaries are much larger with little performance benefit, if any. Of the three, 7.4, 8.3, and 9.2, 8.3 is the best choice. So, I now use 8.3 as my default with 5.2 as a fall back and keep it simple with.
Image
In my opinion a future release of fbc should come with 5.2 and 8.3.
coderJeff
Site Admin
Posts: 3118
Joined: Nov 04, 2005 14:23
Location: Ontario, Canada
Contact:

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated September 30, 2019)

Postby coderJeff » Oct 06, 2019 19:07

PaulSquires wrote:Version 1.9.3 (September 30, 2019)
- Changed: Updated WinFBE source code to be FB 1.07.1 compatible. WinFBE32.exe and WinFBE64.exe compiled using FB 1.07.1-gcc-5.2.
...
...

I'm amazed you got it all put together just days after the release. Like magic.

WinFBE+fbc bundle is very cool! Thank-you.
coderJeff
Site Admin
Posts: 3118
Joined: Nov 04, 2005 14:23
Location: Ontario, Canada
Contact:

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby coderJeff » Oct 06, 2019 19:33

deltarho[1859] wrote:@coderJeff
Hold the press and start to think about 8.3.

Yeah, no worries there. After last weekend, I needed a little break from tool chains and packaging. When I was starting to type the full package names faster than I could cut+paste, that was an indicator I needed to stop. :)

deltarho[1859] wrote:In my opinion a future release of fbc should come with 5.2 and 8.3.

Thank-you for pushing forward with evaluations and testing. I will follow-up in new mingw toolchain (Equation tool chain).

Added:
I hope Mr. Anonymous does decide to join the discussion some day. I don't think there has been a major PB vs FB discussion to date. Everyone here seems cordial about the differences in some attitudes and some common practices. It could prove to be a constructive discussion (in a separate topic from this one), if well conducted.
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 06, 2019 21:34

coderJeff wrote:if well conducted.

My faith in human nature tells me that it may start that way but would not last very long. Image
deltarho[1859]
Posts: 2078
Joined: Jan 02, 2017 0:34
Location: UK

Re: WinFBE Editor and FreeBASIC Compiler (All-in-One Package) (Updated October 1, 2019)

Postby deltarho[1859] » Oct 06, 2019 22:51

Although this thread is about WinFBE I should mention that I have used 8.3 in FBIde, FBEdit, poseidonFB and dodicat's 'Quick Runner'. Of course, it worked but it may not have occurred to some that it would. FBIde's not accepting uppercase compiler switches is a pain with 'Quick Runner' coming to the rescue. Personally I wouldn't rescue FBIde, I would let it drown.Image

Return to “Projects”

Who is online

Users browsing this forum: No registered users and 1 guest