Quantcast

OpenCL backend for LLVM

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

OpenCL backend for LLVM

O. Hartmann-5
Sorry if you feel boring by those messages, but soem of us still get wet
eyes when it comes to OpenCL and LLVm (LLVM is supposed to become soon
the backend compiler in FreeBSD, as I understand). On PHORONIX I read
this message days ago:

http://www.phoronix.com/scan.php?page=news_item&px=MTA2NzM

I think this is promising - in a way. Maybe some compiler specialists
will have merci (as well as nVidia and AMD) and present soemday in the
future OpenCL-based GPGPU capabilities for HPC on FreeBSD.

I still have hope that the important part HPC will become  again an
option using FreeBSD as it was 10 years ago.

Regards,
Oliver


signature.asc (499 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: OpenCL backend for LLVM

Eduardo Morras
At 12:36 09/03/2012, you wrote:

>Sorry if you feel boring by those messages, but soem of us still get wet
>eyes when it comes to OpenCL and LLVm (LLVM is supposed to become soon
>the backend compiler in FreeBSD, as I understand). On PHORONIX I read
>this message days ago:
>
>http://www.phoronix.com/scan.php?page=news_item&px=MTA2NzM
>
>I think this is promising - in a way. Maybe some compiler specialists
>will have merci (as well as nVidia and AMD) and present soemday in the
>future OpenCL-based GPGPU capabilities for HPC on FreeBSD.

I agree with you, it will allow to run some parts of llvm compiled
apps to run in gpu, perhaps even parts of FreeBSD. A fullpower driver
is the last piece of the puzzle.

Don't know who has to do the first step, FreeBSD who changes the
kernel to allow easier port of the linux drivers or nVidia/AMD begin
the port and tell us what must be changed to make it.

>I still have hope that the important part HPC will become  again an
>option using FreeBSD as it was 10 years ago.

The part of my hpc app in FreeBSD is the scheduler and data
collector. The "real" hpc number crunching part runs on Linux with cuda code.

>Regards,
>Oliver

L


_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: OpenCL backend for LLVM

O. Hartmann-5
On 03/09/12 14:35, Eduardo Morras wrote:

> At 12:36 09/03/2012, you wrote:
>> Sorry if you feel boring by those messages, but soem of us still get wet
>> eyes when it comes to OpenCL and LLVm (LLVM is supposed to become soon
>> the backend compiler in FreeBSD, as I understand). On PHORONIX I read
>> this message days ago:
>>
>> http://www.phoronix.com/scan.php?page=news_item&px=MTA2NzM
>>
>> I think this is promising - in a way. Maybe some compiler specialists
>> will have merci (as well as nVidia and AMD) and present soemday in the
>> future OpenCL-based GPGPU capabilities for HPC on FreeBSD.
>
> I agree with you, it will allow to run some parts of llvm compiled apps
> to run in gpu, perhaps even parts of FreeBSD. A fullpower driver is the
> last piece of the puzzle.

>
> Don't know who has to do the first step, FreeBSD who changes the kernel
> to allow easier port of the linux drivers or nVidia/AMD begin the port
> and tell us what must be changed to make it.

Well, having to pick up existing ideas and incarntions of those for
Linux is always a pain in the ass, but necessary at the moment. The
"experts" neglected long time the need for keeping FBSD on par with KMS
stuff or all the other development done in that area. Hope "we"
(FreeBSD) will get such a thing on a high performance base soon in
FreeBSD. Or things change again and there is a real platform-independent
standard, not necessaryly bound to Linux (which is not very realistic).

>
>> I still have hope that the important part HPC will become  again an
>> option using FreeBSD as it was 10 years ago.
>
> The part of my hpc app in FreeBSD is the scheduler and data collector.
> The "real" hpc number crunching part runs on Linux with cuda code.

The part of our numerical stuff is now completely running on Linux.
FreeBSD is just my "hobby" in the lab and the backbone for my purposes
since Linux outperforms FreeBSD in nearly every aspect. And OpenCL (not
CUDA) is the backend of our numerical modelling. It is amazing watching
the Linux boxes calculation solutions on GPUs or start doing rendering
DTMs in blender with the help of a present graphics card via CUDA or
OpenCL (try blender 2.62, you will be amazed how fast a nVidia GTX570 or
even a smaller GTX560Ti is rendering a scene of a planetary surface
compared to the raw processing performance of even a modern 6-core Core
i7 Sandy Bridge-E).
>
>> Regards,
>> Oliver
>
> L


signature.asc (499 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: OpenCL backend for LLVM

Adrian Chadd-2
On 9 March 2012 09:31, O. Hartmann <[hidden email]> wrote:
> Well, having to pick up existing ideas and incarntions of those for
> Linux is always a pain in the ass, but necessary at the moment. The
> "experts" neglected long time the need for keeping FBSD on par with KMS
> stuff or all the other development done in that area. Hope "we"
> (FreeBSD) will get such a thing on a high performance base soon in
> FreeBSD. Or things change again and there is a real platform-independent
> standard, not necessaryly bound to Linux (which is not very realistic).

When you say experts, you really mean "users who can code." Companies
wrote those funny graphics memory API things for Linux. They didn't
have a market for BSD.

If you want a market for BSD you have to create it. :)

I've met some developers at nvidia. They all think the GPU offload
stuff is _in_ the FreeBSD nvidia driver. So someone needs to figure
out what's (still) missing from at least running workloads on FreeBSD.

Same deal goes for workload issues that people have. Keep posting
scheduler traces, keep doing the investigations and don't be afraid to
think up solutions.

The rest of us are mostly just users who hack on this stuff for fun. :-)


Adrian
(Who is hacking on this stuff (FreeBSD) for fun.)
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: OpenCL backend for LLVM

Eduardo Morras
At 19:16 09/03/2012, Adrian Chadd wrote:

>On 9 March 2012 09:31, O. Hartmann <[hidden email]> wrote:
> > Well, having to pick up existing ideas and incarntions of those for
> > Linux is always a pain in the ass, but necessary at the moment. The
> > "experts" neglected long time the need for keeping FBSD on par with KMS
> > stuff or all the other development done in that area. Hope "we"
> > (FreeBSD) will get such a thing on a high performance base soon in
> > FreeBSD. Or things change again and there is a real platform-independent
> > standard, not necessaryly bound to Linux (which is not very realistic).
>
>When you say experts, you really mean "users who can code." Companies
>wrote those funny graphics memory API things for Linux. They didn't
>have a market for BSD.
>
>If you want a market for BSD you have to create it. :)

Yes, it's "snake-selfbite-tail" circle, no market no development, no
development no market. I know i'm part of the problem because i
should had showed some development and examples of cuda apps on
freebsd and made it more visible as hpc platfrom.

>I've met some developers at nvidia. They all think the GPU offload
>stuff is _in_ the FreeBSD nvidia driver. So someone needs to figure
>out what's (still) missing from at least running workloads on FreeBSD.

Sorry, i don't understand what you want to say here. Exactly, what do
they need? development/alpha/beta/final testers? I can port cuda
examples from linux to freebsd or develop new ones, but currently
there's no SDK for freebsd, only the cuda runtime.

Don't know what's the current status of the freebsd nvidia driver on
cuda/opencl, before i used the recipe from here
http://blogs.freebsdish.org/jhb/2010/07/20/using-cuda-with-the-native-freebsdamd64-nvidia-driver/ 
to run cuda apps on freebsd, it worked for 32bits app but the
approach posted on second comment by Jacob Frelinger never worked for me.

>Same deal goes for workload issues that people have. Keep posting
>scheduler traces, keep doing the investigations and don't be afraid to
>think up solutions.

I'm going to try again, not only cuda but opencl too on a freebsd 8.2
with production data and last nvidia drivers to get (if works) real numbers.

>The rest of us are mostly just users who hack on this stuff for fun. :-)

Keep doing this great hacking and having fun :)


>Adrian
>(Who is hacking on this stuff (FreeBSD) for fun.)


_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: OpenCL backend for LLVM

O. Hartmann-5
On 03/12/12 14:34, Eduardo Morras wrote:

> At 19:16 09/03/2012, Adrian Chadd wrote:
>> On 9 March 2012 09:31, O. Hartmann <[hidden email]>
>> wrote:
>> > Well, having to pick up existing ideas and incarntions of those for
>> > Linux is always a pain in the ass, but necessary at the moment. The
>> > "experts" neglected long time the need for keeping FBSD on par with KMS
>> > stuff or all the other development done in that area. Hope "we"
>> > (FreeBSD) will get such a thing on a high performance base soon in
>> > FreeBSD. Or things change again and there is a real
>> platform-independent
>> > standard, not necessaryly bound to Linux (which is not very realistic).
>>
>> When you say experts, you really mean "users who can code." Companies
>> wrote those funny graphics memory API things for Linux. They didn't
>> have a market for BSD.
>>
>> If you want a market for BSD you have to create it. :)
>
> Yes, it's "snake-selfbite-tail" circle, no market no development, no
> development no market. I know i'm part of the problem because i should
> had showed some development and examples of cuda apps on freebsd and
> made it more visible as hpc platfrom.
This "circle" is typical and follows something well known I want to name
here. And by the way, it is "stupid".

FreeBSD has its roots based on BSD and BSD is born in an academic
environment. Money/funding yes, but "no market". "Market" is a term of
those which are incapable of managing the future - my personal opinion
and this opinion does not imply that I'm reject capitalism (and this
doesn't also imply I'm a socialst or communist!). I follow some thoughts
of Hegel and Kant.

Look at the Linux development the first days: done also by volunteers
WITHOUT MARKET. A bit digging in the history, a bit looking who
developed when a piece and even the blind will reveal that something has
dramatically changed for FreeBSD. There is a lot of engineering today -
but less scientific development. I'm still amazed by the power, elan and
spirit Mathew Dillon is pushing his project even with a new filesystem
while freeBSD incorporates and engineers an already existing filesystem.
This is my try to explain what I mean, no complain about ZFS. I'm not a
native English speaker.

>
>> I've met some developers at nvidia. They all think the GPU offload
>> stuff is _in_ the FreeBSD nvidia driver. So someone needs to figure
>> out what's (still) missing from at least running workloads on FreeBSD.
>
> Sorry, i don't understand what you want to say here. Exactly, what do
> they need? development/alpha/beta/final testers? I can port cuda
> examples from linux to freebsd or develop new ones, but currently
> there's no SDK for freebsd, only the cuda runtime.
>
> Don't know what's the current status of the freebsd nvidia driver on
> cuda/opencl, before i used the recipe from here
> http://blogs.freebsdish.org/jhb/2010/07/20/using-cuda-with-the-native-freebsdamd64-nvidia-driver/
> to run cuda apps on freebsd, it worked for 32bits app but the approach
> posted on second comment by Jacob Frelinger never worked for me.
The receipt is outdated and it needs Linux stuff to work. And by the
way, it didn't work for me ever, since the Linuxulator gets very fast
ways out of sync of the development on Linux/CUDA.

I started off a thread once because I felt enthusiastic about having the
opportunity with LLVM and the native 64bit nVidia drivers, which are,
definitely, the fundamental thing one need to run CUDA, or better, OpenCL.
then, a year ago, ther was a light/star at the horizon regarding HMPP.
But it seems this was a bright supernova.

CUDA is too narrow minded and nailed down to one architecture. We
started over with OpenCL and feel really happy with our scientific
stuff. But there are issues not dealt with properly when it comes to
OpenCL kernels. They can not be "compiled" and being made binary without
shooting the platform independend concept and this is for many companies
a problem - but in most cases not for scientists.

So far, FreeBSD does have the support of a native driver by nVidia. But
there are no compatible FreeBSD VUDA libraries, there is no working
"compiler" (nvcc does only run on Linux and expects still in conjunction
with the CUDA SDK 4.1 a gcc < 4.6) and LLVM is far away from having a
suitable PTX backend - a "sine conditio qua non" as I was said once.

Some guy from Universität Saarbrücken proposed in his final thesis soem
stuff, but it hasn't been picked up by BSD people. Linux folks did
already. Well, there is also NO MARKET for the Linux people, but they
obviously feel better with it ... I do not know. To stand my ground and
make statements, I need to dig deeper into history and analyse the
development over the past 15 years of FreeBSD.

I have the strange feeling that since X11 get out of hand being a "open
platform graphical solution", ruled by "Linux" nailed heads, the spirit
of platform independency got a serious crack.

When I was responsible for the IT in my former department, we ordered a
lot of mathematical stuff from NAG. Well, I got everything I could dream
about for FreeBSD, C/C++ and Fortran compilers and a lot of mathematical
libraries. Look at the offerings today and try to go back in time (for
those which might much younger than myself and couln't have the
experience in this development by time-continuum constraints in this
realm of the universe).

>
>> Same deal goes for workload issues that people have. Keep posting
>> scheduler traces, keep doing the investigations and don't be afraid to
>> think up solutions.
>
> I'm going to try again, not only cuda but opencl too on a freebsd 8.2
> with production data and last nvidia drivers to get (if works) real
> numbers.

If you have success, let me know. I tried on FreeBSD 9.0 and failed. And
for our modelling software, we desperately need 64bit. The mix in having
64bit (pseudo) architecture on FreeBSD and then a portion of the
software driven by 32bit Linuxulator drives me nuts.
One of the most disturbing facts is, that cross compiling is hard and
nearly impossible. The Linuxulator is not supposed to replace Linux, it
is a convenient way to fill gaps. But using OpenCL/CUDA is not a "gap",
it is a whole realm on modern platforms and we (FreeBSD users) start
getting dried out. And as far as I understand, the use of HPC is now
bound to GPGPU capable operating systems and this seems to be an issue
of how good the OS is on par with several new concepts like KMS. I might
be wrong, mea culpa, if it is the case.

On the other hand, if the conclusion of some of the readers would be
"then leave FreeBSD and go to Linux", they might be shut up, please.
This would be MARKET(?) - 1. And do this n times, as it happend in the
past, then you end up with NULL at the end.

>
>> The rest of us are mostly just users who hack on this stuff for fun. :-)
>
> Keep doing this great hacking and having fun :)

My capabilities are bound to different things at the moment, but it
would be nice to start doing hacking into LLVM/OpenCL stuff just for
fun. Even if there is no MARKET. Science has no market, otherwise Galois
wouldn't came up with his theory in numbers, like Krull, Abels and
other, having built the fundaments of the simple application
cryptography out of the number's theorie. Those who can think in the
categories of a sales man, they should do so. I appreciate their doing,
they make "money". But they do not invent.
>
>
>> Adrian
>> (Who is hacking on this stuff (FreeBSD) for fun.)
>
>

Sorry if I have pissed off anybody, but I feel frustrated about the
short view of myself and other guys ...


signature.asc (499 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: OpenCL backend for LLVM

Adrian Chadd-2
A lot of the linux work is pushed not by hobbyists, but by large
companies with customers that request support.

Don't mislead yourself by thinking all this Linux work gets done by a
large number of unpaid volunteers. Go look at the contribution
statistics sometime.

If people would like to see CUDA support on FreeBSD then the best
thing they can do is to write up the exact state of things, say what
works and what doesn't, then make it REALLY easy to Nvidia to throw
some resources at it. Having them start at "hm, someone wants BSD
support, no customers, erk" is a no brainer - there's no
justification, there's noone internally championing BSD, so the
chances of it happening are slim. On the other hand, if there's a very
specific set of things that need to occur, if you as an organisation
will state you'll publicly shift to using Nvidia hardware + CUDA on
FreeBSD if/when Nvidia moves, AND you engage an org like the
Foundation to work with NVidia to make this happen.. yes, you may find
it occurs.

Right now if there's a way to run 32 bit CUDA workloads on BSD then
please wrap it up in a port and make it an absolute no brainer to do.

If someone can identify how to make 64 bit CUDA stuff work - eg, if it
only worked on 8.2 but not 9.0, then also please post instructions,
wrap it up in a port and make it work on 8.2, help the rest of the
community try to identify what broke in 9.0, etc.

Thanks,


Adrian
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: OpenCL backend for LLVM

Alexander Leidinger
In reply to this post by O. Hartmann-5
On Mon, 12 Mar 2012 16:31:46 +0100 "O. Hartmann"
<[hidden email]> wrote:

> So far, FreeBSD does have the support of a native driver by nVidia.
> But there are no compatible FreeBSD VUDA libraries, there is no
> working "compiler" (nvcc does only run on Linux and expects still in
> conjunction with the CUDA SDK 4.1 a gcc < 4.6) and LLVM is far away
> from having a suitable PTX backend - a "sine conditio qua non" as I
> was said once.

I (with the help of some others after I had already something to show)
once "convinced" the Linux version of the Intel C/C++ compiler to
generate FreeBSD native binaries. I did this because I thought it could
be possible and had interest to give it a try. No business behind, no
market to satisfy.

I don't know the specifics of this nvcc, but with a little bit of
interest and motivation, maybe something similar could be done.

> Some guy from Universität Saarbrücken proposed in his final thesis
> soem stuff, but it hasn't been picked up by BSD people. Linux folks

I don't understand what you talk about here, but links to his final
thesis may be much more interesting for some people than to not even
know the title of this final thesis.

Bye,
Alexander.

--
http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "[hidden email]"
Loading...