You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@spark.apache.org by "Ulanov, Alexander" <al...@hp.com> on 2015/04/01 21:11:03 UTC

RE: Using CUDA within Spark / boosting linear algebra

FYI, I've added instructions to Netlib-java wiki, Sam added the link to them from the project's readme.md
https://github.com/fommil/netlib-java/wiki/NVBLAS

Best regards, Alexander
-----Original Message-----
From: Xiangrui Meng [mailto:mengxr@gmail.com] 
Sent: Monday, March 30, 2015 2:43 PM
To: Sean Owen
Cc: Evan R. Sparks; Sam Halliday; dev@spark.apache.org; Ulanov, Alexander; jfcanny
Subject: Re: Using CUDA within Spark / boosting linear algebra

Hi Alex,

Since it is non-trivial to make nvblas work with netlib-java, it would be great if you can send the instructions to netlib-java as part of the README. Hopefully we don't need to modify netlib-java code to use nvblas.

Best,
Xiangrui

On Thu, Mar 26, 2015 at 9:54 AM, Sean Owen <so...@cloudera.com> wrote:
> The license issue is with libgfortran, rather than OpenBLAS.
>
> (FWIW I am going through the motions to get OpenBLAS set up by default 
> on CDH in the near future, and the hard part is just handling
> libgfortran.)
>
> On Thu, Mar 26, 2015 at 4:07 PM, Evan R. Sparks <ev...@gmail.com> wrote:
>> Alright Sam - you are the expert here. If the GPL issues are 
>> unavoidable, that's fine - what is the exact bit of code that is GPL?
>>
>> The suggestion to use OpenBLAS is not to say it's the best option, 
>> but that it's a *free, reasonable default* for many users - keep in 
>> mind the most common deployment for Spark/MLlib is on 64-bit linux on EC2[1].
>> Additionally, for many of the problems we're targeting, this 
>> reasonable default can provide a 1-2 orders of magnitude improvement 
>> in performance over the f2jblas implementation that netlib-java falls back on.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@spark.apache.org For 
> additional commands, e-mail: dev-help@spark.apache.org
>

Re: Using CUDA within Spark / boosting linear algebra

Posted by "Evan R. Sparks" <ev...@gmail.com>.
Yeah, thanks Alex!

On Thu, Apr 2, 2015 at 5:05 PM, Xiangrui Meng <me...@gmail.com> wrote:

> This is great! Thanks! -Xiangrui
>
> On Wed, Apr 1, 2015 at 12:11 PM, Ulanov, Alexander
> <al...@hp.com> wrote:
> > FYI, I've added instructions to Netlib-java wiki, Sam added the link to
> them from the project's readme.md
> > https://github.com/fommil/netlib-java/wiki/NVBLAS
> >
> > Best regards, Alexander
> > -----Original Message-----
> > From: Xiangrui Meng [mailto:mengxr@gmail.com]
> > Sent: Monday, March 30, 2015 2:43 PM
> > To: Sean Owen
> > Cc: Evan R. Sparks; Sam Halliday; dev@spark.apache.org; Ulanov,
> Alexander; jfcanny
> > Subject: Re: Using CUDA within Spark / boosting linear algebra
> >
> > Hi Alex,
> >
> > Since it is non-trivial to make nvblas work with netlib-java, it would
> be great if you can send the instructions to netlib-java as part of the
> README. Hopefully we don't need to modify netlib-java code to use nvblas.
> >
> > Best,
> > Xiangrui
> >
> > On Thu, Mar 26, 2015 at 9:54 AM, Sean Owen <so...@cloudera.com> wrote:
> >> The license issue is with libgfortran, rather than OpenBLAS.
> >>
> >> (FWIW I am going through the motions to get OpenBLAS set up by default
> >> on CDH in the near future, and the hard part is just handling
> >> libgfortran.)
> >>
> >> On Thu, Mar 26, 2015 at 4:07 PM, Evan R. Sparks <ev...@gmail.com>
> wrote:
> >>> Alright Sam - you are the expert here. If the GPL issues are
> >>> unavoidable, that's fine - what is the exact bit of code that is GPL?
> >>>
> >>> The suggestion to use OpenBLAS is not to say it's the best option,
> >>> but that it's a *free, reasonable default* for many users - keep in
> >>> mind the most common deployment for Spark/MLlib is on 64-bit linux on
> EC2[1].
> >>> Additionally, for many of the problems we're targeting, this
> >>> reasonable default can provide a 1-2 orders of magnitude improvement
> >>> in performance over the f2jblas implementation that netlib-java falls
> back on.
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@spark.apache.org For
> >> additional commands, e-mail: dev-help@spark.apache.org
> >>
>

Re: Using CUDA within Spark / boosting linear algebra

Posted by Xiangrui Meng <me...@gmail.com>.
This is great! Thanks! -Xiangrui

On Wed, Apr 1, 2015 at 12:11 PM, Ulanov, Alexander
<al...@hp.com> wrote:
> FYI, I've added instructions to Netlib-java wiki, Sam added the link to them from the project's readme.md
> https://github.com/fommil/netlib-java/wiki/NVBLAS
>
> Best regards, Alexander
> -----Original Message-----
> From: Xiangrui Meng [mailto:mengxr@gmail.com]
> Sent: Monday, March 30, 2015 2:43 PM
> To: Sean Owen
> Cc: Evan R. Sparks; Sam Halliday; dev@spark.apache.org; Ulanov, Alexander; jfcanny
> Subject: Re: Using CUDA within Spark / boosting linear algebra
>
> Hi Alex,
>
> Since it is non-trivial to make nvblas work with netlib-java, it would be great if you can send the instructions to netlib-java as part of the README. Hopefully we don't need to modify netlib-java code to use nvblas.
>
> Best,
> Xiangrui
>
> On Thu, Mar 26, 2015 at 9:54 AM, Sean Owen <so...@cloudera.com> wrote:
>> The license issue is with libgfortran, rather than OpenBLAS.
>>
>> (FWIW I am going through the motions to get OpenBLAS set up by default
>> on CDH in the near future, and the hard part is just handling
>> libgfortran.)
>>
>> On Thu, Mar 26, 2015 at 4:07 PM, Evan R. Sparks <ev...@gmail.com> wrote:
>>> Alright Sam - you are the expert here. If the GPL issues are
>>> unavoidable, that's fine - what is the exact bit of code that is GPL?
>>>
>>> The suggestion to use OpenBLAS is not to say it's the best option,
>>> but that it's a *free, reasonable default* for many users - keep in
>>> mind the most common deployment for Spark/MLlib is on 64-bit linux on EC2[1].
>>> Additionally, for many of the problems we're targeting, this
>>> reasonable default can provide a 1-2 orders of magnitude improvement
>>> in performance over the f2jblas implementation that netlib-java falls back on.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@spark.apache.org For
>> additional commands, e-mail: dev-help@spark.apache.org
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@spark.apache.org
For additional commands, e-mail: dev-help@spark.apache.org


RE: Using CUDA within Spark / boosting linear algebra

Posted by "Ulanov, Alexander" <al...@hp.com>.
Hi,

There is a major update on the benchmarks. I've performed them on a newer hardware with 2 CPUs and 3 GPUs. The latter can be used by NVBLAS for parallelizing matrix-matrix multiplication. Results are in the same spreadsheet as previously:
https://docs.google.com/spreadsheets/d/1lWdVSuSragOobb0A_oeouQgHUMx378T9J5r7kwKSPkY/edit?usp=sharing
Previous results are on the separate sheet of the same document. I have also created a github page with benchmark source code and few explanatory comments:
https://github.com/avulanov/scala-blas

I was able to use all 3 GPUs for NVBLAS but BIDMat used only one GPU. 

John, could you suggest how to force BIDMat to use all GPUs? Also, could you suggest how to test Double matrices multiplication in BIDMat-cuda (in GPU and with copy from/to main memory)?

Best regards, Alexander


-----Original Message-----
From: Ulanov, Alexander 
Sent: Wednesday, April 01, 2015 12:11 PM
To: Xiangrui Meng; Sean Owen
Cc: Evan R. Sparks; Sam Halliday; dev@spark.apache.org; jfcanny
Subject: RE: Using CUDA within Spark / boosting linear algebra

FYI, I've added instructions to Netlib-java wiki, Sam added the link to them from the project's readme.md https://github.com/fommil/netlib-java/wiki/NVBLAS

Best regards, Alexander
-----Original Message-----
From: Xiangrui Meng [mailto:mengxr@gmail.com]
Sent: Monday, March 30, 2015 2:43 PM
To: Sean Owen
Cc: Evan R. Sparks; Sam Halliday; dev@spark.apache.org; Ulanov, Alexander; jfcanny
Subject: Re: Using CUDA within Spark / boosting linear algebra

Hi Alex,

Since it is non-trivial to make nvblas work with netlib-java, it would be great if you can send the instructions to netlib-java as part of the README. Hopefully we don't need to modify netlib-java code to use nvblas.

Best,
Xiangrui

On Thu, Mar 26, 2015 at 9:54 AM, Sean Owen <so...@cloudera.com> wrote:
> The license issue is with libgfortran, rather than OpenBLAS.
>
> (FWIW I am going through the motions to get OpenBLAS set up by default 
> on CDH in the near future, and the hard part is just handling
> libgfortran.)
>
> On Thu, Mar 26, 2015 at 4:07 PM, Evan R. Sparks <ev...@gmail.com> wrote:
>> Alright Sam - you are the expert here. If the GPL issues are 
>> unavoidable, that's fine - what is the exact bit of code that is GPL?
>>
>> The suggestion to use OpenBLAS is not to say it's the best option, 
>> but that it's a *free, reasonable default* for many users - keep in 
>> mind the most common deployment for Spark/MLlib is on 64-bit linux on EC2[1].
>> Additionally, for many of the problems we're targeting, this 
>> reasonable default can provide a 1-2 orders of magnitude improvement 
>> in performance over the f2jblas implementation that netlib-java falls back on.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@spark.apache.org For 
> additional commands, e-mail: dev-help@spark.apache.org
>
B KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKCB  [  X  ܚX KK[XZ[
 ] ][  X  ܚX P \ ˘\X K ܙ B  ܈Y][ۘ[  [X[  K[XZ[
 ] Z[ \ ˘\X K ܙ B