New version?

General discussion for topics related to the FreeBASIC project or its community.
multineu
Posts: 22
Joined: Oct 15, 2010 7:29

New version?

Post by multineu »

Hello,
what about a new freebasic release?
D.J.Peters
Posts: 8586
Joined: May 28, 2005 3:28
Contact:

Re: New version?

Post by D.J.Peters »

multineu wrote:what about a new freebasic release?
What is wrong with the latest build from : 08-Mar-2018
you can get it from here: http://users.freebasic-portal.de/stw/builds/

Joshy
fxm
Moderator
Posts: 12083
Joined: Apr 22, 2009 12:46
Location: Paris suburbs, FRANCE

Re: New version?

Post by fxm »

D.J.Peters wrote:you can get it from here: http://users.freebasic-portal.de/stw/builds/Joshy
On this website, it seems that there has been no update of the file "freebasic_manual.chm" since March 13, although I have made several improvements since.
TeeEmCee
Posts: 375
Joined: Jul 22, 2006 0:54
Location: Auckland

Re: New version?

Post by TeeEmCee »

Most users are likely to use the latest official release rather than an unofficial build.

The time between releases does signal how active the project is, so it looks bad to wait too long. I've made the huge mistake of waiting 3 years between releases of an actively developed project, and many people thought it was dead...
multineu
Posts: 22
Joined: Oct 15, 2010 7:29

Re: New version?

Post by multineu »

The Freebasic project itself is awesome!

Many compliments for all the work as been done so far; nevertheless new enhancements could have been done including parallel processing and exploit modern GPU. This feature could be reached expanding the now ready llvm.
I guess it would be possible to run parallel code on GPU and quickly making prototype of big simulations.
The Julia language does this but it does not reach the same performance of Freebasic.
Am i dreaming? Would it be possible to run gpu code via Freebasic?
Boromir
Posts: 463
Joined: Apr 30, 2015 19:28
Location: Oklahoma,U.S., Earth,Solar System
Contact:

Re: New version?

Post by Boromir »

multineu wrote:Many compliments for all the work as been done so far; nevertheless new enhancements could have been done including parallel processing and exploit modern GPU. This feature could be reached expanding the now ready llvm.
I guess it would be possible to run parallel code on GPU and quickly making prototype of big simulations.
You could use OpenCL with FreeBasic.
viewtopic.php?f=14&t=24494
D.J.Peters
Posts: 8586
Joined: May 28, 2005 3:28
Contact:

Re: New version?

Post by D.J.Peters »

You can put for your simulation float/single in a texture and render a quad (orthogonal)
inside your OpenGL fragment shader you calculate all stuff on the GPU
and put the result back in the float texture or in a result float texture.

Of course you can use "complex" numbers with real/imaginary parts also.

that's all :-)

Joshy
St_W
Posts: 1619
Joined: Feb 11, 2009 14:24
Location: Austria
Contact:

Re: New version?

Post by St_W »

fxm wrote:
D.J.Peters wrote:you can get it from here: http://users.freebasic-portal.de/stw/builds/Joshy
On this website, it seems that there has been no update of the file "freebasic_manual.chm" since March 13, although I have made several improvements since.
I'm sorry for the long downtime. The system has been offline between March 13 and March March 21 due to a broken network device. Unfortunately I did (and currently do) not have a lot time for FB so the fix took quite a while, but as of March 21 in the evening everything should be working again. I just triggered a documentation build manually as there haven't been any changes between March 22 and today.

Regarding making an official release: that's probably a good idea as my builds are not official and probably not suitable for beginners (which I don't really aim for anyway) and the previous official release is already quite old. However creating an official realease is quite some work and only a few people can do it.
fxm
Moderator
Posts: 12083
Joined: Apr 22, 2009 12:46
Location: Paris suburbs, FRANCE

Re: New version?

Post by fxm »

St_W wrote:I just triggered a documentation build manually as there haven't been any changes between March 22 and today.
Thank you.
multineu
Posts: 22
Joined: Oct 15, 2010 7:29

Re: New version?

Post by multineu »

Boromir wrote:
multineu wrote:Many compliments for all the work as been done so far; nevertheless new enhancements could have been done including parallel processing and exploit modern GPU. This feature could be reached expanding the now ready llvm.
I guess it would be possible to run parallel code on GPU and quickly making prototype of big simulations.
You could use OpenCL with FreeBasic.
viewtopic.php?f=14&t=24494

Thanks for your suggestion.
My expectation is that the fbc compiler generates llvm code by itself addressed on the GPU
MrSwiss
Posts: 3910
Joined: Jun 02, 2013 9:27
Location: Switzerland

Re: New version?

Post by MrSwiss »

multineu wrote:My expectation is that the fbc compiler generates llvm code by itself addressed on the GPU
Afaik, the LLVM backend, is only used with the DOS build of FBC (LIN/WIN are GCC and/or GAS).
St_W
Posts: 1619
Joined: Feb 11, 2009 14:24
Location: Austria
Contact:

Re: New version?

Post by St_W »

MrSwiss wrote:Afaik, the LLVM backend, is only used with the DOS build of FBC (LIN/WIN are GCC and/or GAS).
No, a LLVM compiler isn't available on the DOS platform as of now (at least none I'd know of). The LLVM backend is intended for Linux/Windows/(Mac). The reason why it isn't widely known or used in practice is its current implementation state - it's not ready for regular use currently. I don't think that FreeBasic will get GPU programming capabilities anytime soon.
srvaldez
Posts: 3373
Joined: Sep 25, 2005 21:54

Re: New version?

Post by srvaldez »

yes, I tried to use LLVM before but even a simple hello world program would give tons of errors.
angros47
Posts: 2321
Joined: Jun 21, 2005 19:04

Re: New version?

Post by angros47 »

Making FreeBasic able to compile existing code to run on GPU is not realistic: as far as I know, not even GCC or FreePascal can do that. The reason is that a GPU works in a completely different way, and the code has to be different. Even if it resembles C, the GLSL is not C, and existing C code cannot be compiled on it.

A GPU works in parallel, so a lot of things (like pointers and references) cannot be used (since every process is isolated, and there is no defined order of which one will run before or after). Also, the code optimization has to be different, since branching is slow (many cards have only one branching unit shared by several processes), and the parallel code makes it not necessary (instead of choosing a branch, they both can be evaluated in parallel, and after that the unwanted data can be discarded). So, code must be re-thought anyway.
lizard
Posts: 440
Joined: Oct 17, 2017 11:35
Location: Germany

Re: New version?

Post by lizard »

Seems LLVM and GPU support are not really needed, because all my programs were fast enough.
Post Reply