|
Ublas : |
Subject: Re: [ublas] [PATCH 3/3] boost::ublas increasing the range of BLAS level 3 benchmarks
From: palik imre (imre_palik_at_[hidden])
Date: 2016-03-06 04:42:20
Fork is here: https://github.com/imre-palik/ublas/tree/feature/ublas00004_simd_gemm
pull request is sent.
--------------------------------------------
On Mon, 29/2/16, Nasos Iliopoulos <nasos_i_at_[hidden]> wrote:
Subject: Re: [ublas] [PATCH 3/3] boost::ublas increasing the range of BLAS level 3 benchmarks
To: ublas_at_[hidden]
Date: Monday, 29 February, 2016, 17:52
The development process is as follows:
1. Create your fork from https://github.com/uBLAS/ublas
(NOT
boostorg). In that fork you could create a branch that
you work on,
or use an already existing branch. For the simd gemm I
just created
a branch so you don't need to create one
(https://github.com/uBLAS/ublas/tree/feature/ublas00004_simd_gemm).
For quick changes we are just using the develop
branch.
2. Setup your local environment as described in :
https://github.com/uBLAS/ublas/wiki.
Please replace the submodule in
step "3. Replace the default submodule with the
ublas dev
repository:"Â with your fork. Please note that
many of the
instructions in the wiki refer to users that have write
access in
ublas/ublas. Many apply though for your fork that you
will have
write access to.
3. Work in your fork and branch according to regular git
process
(checkout the feature/ublas00004_simd_gemm branch, and
perform
regular:
git add ...
git commit -am "Change text ...."
git push
please note that these need to be executed in your
forked ublas
repository.)
* Here I have put the most used git command:
https://github.com/uBLAS/ublas/wiki/Basic-GIT-commands
4. When done working on your branch and want to
incorporate into
ublas create a pull request from the github interface
and we will
take care of:
(a). Merging into develop
(b). Creating a pull request to boostorg/develop so that
the test
can be run
(http://www.boost.org/development/tests/develop/developer/numeric-ublas.html)
(c). David accepting the pull request and
(c). Merge into master if all seem ok.
* Essentially we are trying to stick to:
http://nvie.com/posts/a-successful-git-branching-model/
with the added redirections of requesting pulls to
boostorg/ublas
ONLY for develop and master Branches.
* If you want to test pull requests and the dev model,
play with
this branch:
https://github.com/uBLAS/ublas/tree/ublas_sandbox0002_github_playground
(or any playground branch)
* If more than one developers work on the same branch it
is
essential to synchronize their efforts so that there are
not serious
merge conflicts.
* If you get accommodated with git and github you may
want to
deviate from the process a bit as you may see fit.
* Other people may have suggestions or tips if they are
doing
something differently.
Please let me know if you have any issues.
-Nasos
On 02/29/2016 10:42 AM,
palik imre
wrote:
I asked about the development process
before, and
haven't received any response ...
Does
this
means, that you do the pull request thing, instead
of posting
patches to mailing lists?
If yes,
then I'll create the github branch,next
weekend.
Cheers,
Imre
On
Monday, 29
February 2016, 16:21, Nasos Iliopoulos
<nasos_i_at_[hidden]>
wrote:
Just
checking,
I may have lost reference but I don't
see any pull
requests on any
branch on ublas/ublas. Do you want me to
create one so
it is easier for
you guys?
-Nasos
On 02/29/2016 02:46 AM, Imre Palik wrote:
> This patch increases the range of BLAS
level 3
benchmarks for dense
> matrices up to 1000*1000 matrices.
>
> Signed-off-by: Imre Palik <imre_palik_at_[hidden]>
> ---
> benchmarks/bench1/bench1.cpp | 14
++++++++++----
>Â benchmarks/bench1/bench13.cpp |Â 8
++++++++
> benchmarks/bench3/bench3.cpp | 14
++++++++++----
>Â benchmarks/bench3/bench33.cpp |Â 8
++++++++
>Â 4 files changed, 36 insertions(+), 8
deletions(-)
>
> diff --git
a/benchmarks/bench1/bench1.cpp
b/benchmarks/bench1/bench1.cpp
> index 87478e1..300eafa 100644
> --- a/benchmarks/bench1/bench1.cpp
> +++ b/benchmarks/bench1/bench1.cpp
> @@ -76,22 +76,28 @@ void do_bench
(std::string
type_string, int scale)
>Â Â Â header (type_string + ",
3");
>Â Â Â bench_1<scalar, 3> ()
(1000000 * scale);
>Â Â Â bench_2<scalar, 3> ()
(300000 * scale);
> -Â Â bench_3<scalar, 3> ()
(100000 * scale);
> +Â Â bench_3<scalar, 3> ()
(3000000 * scale);
>Â
>Â Â Â header (type_string + ",
10");
>Â Â Â bench_1<scalar, 10> ()
(300000 * scale);
>Â Â Â bench_2<scalar, 10> ()
(30000 * scale);
> -Â Â bench_3<scalar, 10> ()
(3000 * scale);
> +Â Â bench_3<scalar, 10> ()
(100000 * scale);
>Â
>Â Â Â header (type_string + ",
30");
>Â Â Â bench_1<scalar, 30> ()
(100000 * scale);
>Â Â Â bench_2<scalar, 30> ()
(3000 * scale);
> -Â Â bench_3<scalar, 30> ()
(100 * scale);
> +Â Â bench_3<scalar, 30> ()
(30000 * scale);
>Â
>Â Â Â header (type_string + ",
100");
>Â Â Â bench_1<scalar, 100> ()
(30000 * scale);
>Â Â Â bench_2<scalar, 100> ()
(300 * scale);
> -Â Â bench_3<scalar, 100> () (3
* scale);
> +Â Â bench_3<scalar, 100> ()
(1000 * scale);
> +
> +Â Â header (type_string + ",
300");
> +Â Â bench_3<scalar, 300> ()
(30 * scale);
> +
> +Â Â header (type_string + ",
1000");
> +Â Â bench_3<scalar, 1000> ()
(1 * scale);
>Â }
>Â
>Â int main (int argc, char *argv [])
{
> diff --git
a/benchmarks/bench1/bench13.cpp
b/benchmarks/bench1/bench13.cpp
> index fadb0b6..2378d46 100644
> --- a/benchmarks/bench1/bench13.cpp
> +++ b/benchmarks/bench1/bench13.cpp
> @@ -166,6 +166,8 @@ template struct
bench_3<float, 3>;
>Â template struct bench_3<float,
10>;
>Â template struct bench_3<float,
30>;
>Â template struct bench_3<float,
100>;
> +template struct bench_3<float,
300>;
> +template struct bench_3<float,
1000>;
>Â #endif
>Â
>Â #ifdef USE_DOUBLE
> @@ -173,6 +175,8 @@ template struct
bench_3<double, 3>;
>Â template struct bench_3<double,
10>;
>Â template struct bench_3<double,
30>;
>Â template struct bench_3<double,
100>;
> +template struct bench_3<double,
300>;
> +template struct bench_3<double,
1000>;
>Â #endif
>Â
>Â #ifdef USE_STD_COMPLEX
> @@ -181,6 +185,8 @@ template struct
bench_3<std::complex<float>,
3>;
>Â template struct
bench_3<std::complex<float>,
10>;
>Â template struct
bench_3<std::complex<float>,
30>;
>Â template struct
bench_3<std::complex<float>,
100>;
> +template struct
bench_3<std::complex<float>,
300>;
> +template struct
bench_3<std::complex<float>,
1000>;
>Â #endif
>Â
>Â #ifdef USE_DOUBLE
> @@ -188,5 +194,7 @@ template struct
bench_3<std::complex<double>,
3>;
>Â template struct
bench_3<std::complex<double>,
10>;
>Â template struct
bench_3<std::complex<double>,
30>;
>Â template struct
bench_3<std::complex<double>,
100>;
> +template struct
bench_3<std::complex<double>,
300>;
> +template struct
bench_3<std::complex<double>,
1000>;
>Â #endif
>Â #endif
> diff --git
a/benchmarks/bench3/bench3.cpp
b/benchmarks/bench3/bench3.cpp
> index 390d226..72a3db5 100644
> --- a/benchmarks/bench3/bench3.cpp
> +++ b/benchmarks/bench3/bench3.cpp
> @@ -76,22 +76,28 @@ void do_bench
(std::string
type_string, int scale)
>Â Â Â header (type_string + ",
3");
>Â Â Â bench_1<scalar, 3> ()
(1000000 * scale);
>Â Â Â bench_2<scalar, 3> ()
(300000 * scale);
> -Â Â bench_3<scalar, 3> ()
(100000 * scale);
> +Â Â bench_3<scalar, 3> ()
(3000000 * scale);
>Â
>Â Â Â header (type_string + ",
10");
>Â Â Â bench_1<scalar, 10> ()
(300000 * scale);
>Â Â Â bench_2<scalar, 10> ()
(30000 * scale);
> -Â Â bench_3<scalar, 10> ()
(3000 * scale);
> +Â Â bench_3<scalar, 10> ()
(100000 * scale);
>Â
>Â Â Â header (type_string + ",
30");
>Â Â Â bench_1<scalar, 30> ()
(100000 * scale);
>Â Â Â bench_2<scalar, 30> ()
(3000 * scale);
> -Â Â bench_3<scalar, 30> ()
(100 * scale);
> +Â Â bench_3<scalar, 30> ()
(30000 * scale);
>Â
>Â Â Â header (type_string + ",
100");
>Â Â Â bench_1<scalar, 100> ()
(30000 * scale);
>Â Â Â bench_2<scalar, 100> ()
(300 * scale);
> -Â Â bench_3<scalar, 100> () (3
* scale);
> +Â Â bench_3<scalar, 100> ()
(1000 * scale);
> +
> +Â Â header (type_string + ",
300");
> +Â Â bench_3<scalar, 300> ()
(30 * scale);
> +
> +Â Â header (type_string + ",
1000");
> +Â Â bench_3<scalar, 1000> ()
(1 * scale);
>Â }
>Â
>Â int main (int argc, char *argv [])
{
> diff --git
a/benchmarks/bench3/bench33.cpp
b/benchmarks/bench3/bench33.cpp
> index 9b8e107..7eeec07 100644
> --- a/benchmarks/bench3/bench33.cpp
> +++ b/benchmarks/bench3/bench33.cpp
> @@ -172,6 +172,8 @@ template struct
bench_3<float, 3>;
>Â template struct bench_3<float,
10>;
>Â template struct bench_3<float,
30>;
>Â template struct bench_3<float,
100>;
> +template struct bench_3<float,
300>;
> +template struct bench_3<float,
1000>;
>Â #endif
>Â
>Â #ifdef USE_DOUBLE
> @@ -179,6 +181,8 @@ template struct
bench_3<double, 3>;
>Â template struct bench_3<double,
10>;
>Â template struct bench_3<double,
30>;
>Â template struct bench_3<double,
100>;
> +template struct bench_3<double,
300>;
> +template struct bench_3<double,
1000>;
>Â #endif
>Â
>Â #ifdef USE_STD_COMPLEX
> @@ -187,6 +191,8 @@ template struct
bench_3<std::complex<float>,
3>;
>Â template struct
bench_3<std::complex<float>,
10>;
>Â template struct
bench_3<std::complex<float>,
30>;
>Â template struct
bench_3<std::complex<float>,
100>;
> +template struct
bench_3<std::complex<float>,
300>;
> +template struct
bench_3<std::complex<float>,
1000>;
>Â #endif
>Â
>Â #ifdef USE_DOUBLE
> @@ -194,5 +200,7 @@ template struct
bench_3<std::complex<double>,
3>;
>Â template struct
bench_3<std::complex<double>,
10>;
>Â template struct
bench_3<std::complex<double>,
30>;
>Â template struct
bench_3<std::complex<double>,
100>;
> +template struct
bench_3<std::complex<double>,
300>;
> +template struct
bench_3<std::complex<double>,
1000>;
>Â #endif
>Â #endif
_______________________________________________
ublas mailing list
ublas_at_[hidden]
http://lists.boost.org/mailman/listinfo.cgi/ublas
Sent to: imre_palik_at_[hidden]
_______________________________________________
ublas mailing list
ublas_at_[hidden]
http://lists.boost.org/mailman/listinfo.cgi/ublas
Sent to: nasos_i_at_[hidden]
-----Inline Attachment Follows-----
_______________________________________________
ublas mailing list
ublas_at_[hidden]
http://lists.boost.org/mailman/listinfo.cgi/ublas
Sent to: imre_palik_at_[hidden]