New version?
New version?
Hello,
what about a new freebasic release?
what about a new freebasic release?
-
- Posts: 8586
- Joined: May 28, 2005 3:28
- Contact:
Re: New version?
What is wrong with the latest build from : 08-Mar-2018multineu wrote:what about a new freebasic release?
you can get it from here: http://users.freebasic-portal.de/stw/builds/
Joshy
Re: New version?
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.D.J.Peters wrote:you can get it from here: http://users.freebasic-portal.de/stw/builds/Joshy
Re: New version?
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...
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...
Re: New version?
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?
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?
Re: New version?
You could use OpenCL with FreeBasic.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.
viewtopic.php?f=14&t=24494
-
- Posts: 8586
- Joined: May 28, 2005 3:28
- Contact:
Re: New version?
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
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
Re: New version?
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.fxm wrote: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.D.J.Peters wrote:you can get it from here: http://users.freebasic-portal.de/stw/builds/Joshy
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.
Re: New version?
Thank you.St_W wrote:I just triggered a documentation build manually as there haven't been any changes between March 22 and today.
Re: New version?
Boromir wrote:You could use OpenCL with FreeBasic.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.
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
Re: New version?
Afaik, the LLVM backend, is only used with the DOS build of FBC (LIN/WIN are GCC and/or GAS).multineu wrote:My expectation is that the fbc compiler generates llvm code by itself addressed on the GPU
Re: New version?
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.MrSwiss wrote:Afaik, the LLVM backend, is only used with the DOS build of FBC (LIN/WIN are GCC and/or GAS).
Re: New version?
yes, I tried to use LLVM before but even a simple hello world program would give tons of errors.
Re: New version?
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.
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.
Re: New version?
Seems LLVM and GPU support are not really needed, because all my programs were fast enough.