From: Namik K. <nam...@gm...> - 2014-08-17 21:29:20
|
Hi all, I just pushed the first working version of expert(custom) benchmark mode. Selecting custom sparse matrices is yet to be implemented, but all other benchmark configs are working. Except blas3, that is. I think I got the sizes wrong. I'd appreciate it if someone could check if I did it right: //blas3MatrixSizeA,B = size1,2 //blas3MatrixSizeB,C = size2,3 viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, blas3MatrixSizeB); viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, blas3MatrixSizeC); viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, blas3MatrixSizeC); // Fill the matrix for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); //using ranges viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); //using slices viennacl::slice s(0, 2, blas3MatrixSizeB/2); The benchmark crashes on test 4 (LU factorization). I don't know if I messed up somewhere before test 4 (in the code written above), or somewhere else. Regards, Namik |
From: Karl R. <ru...@iu...> - 2014-08-17 21:59:16
|
Hi Namik, > I just pushed the first working version of expert(custom) benchmark > mode. Selecting custom sparse matrices is yet to be implemented, but all > other benchmark configs are working. thanks! I'll comment on it tomorrow. > Except blas3, that is. I think I got the sizes wrong. I'd appreciate it > if someone could check if I did it right: > > //blas3MatrixSizeA,B = size1,2 > //blas3MatrixSizeB,C = size2,3 > viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, blas3MatrixSizeB); > viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, blas3MatrixSizeC); > viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, blas3MatrixSizeC); > > // Fill the matrix > for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) > stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); > > for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) > stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); > > //using ranges > viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); > > //using slices > viennacl::slice s(0, 2, blas3MatrixSizeB/2); > > The benchmark crashes on test 4 (LU factorization). I don't know if I > messed up somewhere before test 4 (in the code written above), or > somewhere else. If I'm not mistaken, LU factorization is only implemented for square matrices. Since our current implementation is slow and not really representative, please remove it from the benchmarks for now to avoid these troubles. Best regards, Karli |
From: Matthew M. <mat...@gm...> - 2014-08-18 01:54:37
|
Namik, I just tried to build it and got a couple errors. I made sure to run 'git submodule update --init' and I started with a fresh build folder for cmake. Since I know this is in active development, I thought I would ask first before trying to fix it and submitting a pull request. Here are the current build errors: Error 24 error C2059: syntax error : ')' C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp 89 1 ViennaCL_Benchmark Error 22 error C2065: 'uint64_t' : undeclared identifier C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp 89 1 ViennaCL_Benchmark Error 23 error C2146: syntax error : missing ')' before identifier 'iter' C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp 89 1 ViennaCL_Benchmark 30 IntelliSense: expected a ')' c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp 89 80 ViennaCL_Benchmark 29 IntelliSense: identifier "uint64_t" is undefined c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp 89 71 ViennaCL_Benchmark Warning 3 warning C4018: '<' : signed/unsigned mismatch C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\benchmarks\benchmark_blas3.cpp 78 1 ViennaCL_Benchmark Warning 1 warning C4996: 'getenv': This function or variable may be unsafe. Consider using _dupenv_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\external\viennacl-dev\viennacl\ocl\context.hpp 66 1 ViennaCL_Benchmark Thanks, -Matt On Sun, Aug 17, 2014 at 5:28 PM, Namik Karovic <nam...@gm...> wrote: > Hi all, > > I just pushed the first working version of expert(custom) benchmark mode. > Selecting custom sparse matrices is yet to be implemented, but all other > benchmark configs are working. > > Except blas3, that is. I think I got the sizes wrong. I'd appreciate it if > someone could check if I did it right: > > //blas3MatrixSizeA,B = size1,2 > //blas3MatrixSizeB,C = size2,3 > viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, blas3MatrixSizeB); > viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, blas3MatrixSizeC); > viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, blas3MatrixSizeC); > > // Fill the matrix > for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) > stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); > > for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) > stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); > > //using ranges > viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); > > //using slices > viennacl::slice s(0, 2, blas3MatrixSizeB/2); > > The benchmark crashes on test 4 (LU factorization). I don't know if I > messed up somewhere before test 4 (in the code written above), or somewhere > else. > > Regards, Namik > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > ViennaCL-devel mailing list > Vie...@li... > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > > -- -------------------- Matthew Musto mat...@gm... |
From: Namik K. <nam...@gm...> - 2014-08-18 02:09:54
|
Hey Matt, 'uint64_t' : undeclared identifier This looks like a compiler hick-up. I suppose this occured with MSVC? Feel free to submit a fix. Regards, Namik On Mon, Aug 18, 2014 at 3:54 AM, Matthew Musto <mat...@gm...> wrote: > Namik, > > I just tried to build it and got a couple errors. I made sure to run 'git > submodule update --init' and I started with a fresh build folder for > cmake. Since I know this is in active development, I thought I would ask > first before trying to fix it and submitting a pull request. > > Here are the current build errors: > > Error 24 error C2059: syntax error : ')' > C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp > 89 1 ViennaCL_Benchmark > Error 22 error C2065: 'uint64_t' : undeclared identifier > C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp > 89 1 ViennaCL_Benchmark > Error 23 error C2146: syntax error : missing ')' before identifier > 'iter' > C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp > 89 1 ViennaCL_Benchmark > 30 IntelliSense: expected a ')' > c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp > 89 80 ViennaCL_Benchmark > 29 IntelliSense: identifier "uint64_t" is undefined > c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp > 89 71 ViennaCL_Benchmark > Warning 3 warning C4018: '<' : signed/unsigned mismatch > C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\benchmarks\benchmark_blas3.cpp > 78 1 ViennaCL_Benchmark > Warning 1 warning C4996: 'getenv': This function or variable may be > unsafe. Consider using _dupenv_s instead. To disable deprecation, use > _CRT_SECURE_NO_WARNINGS. See online help for details. > C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\external\viennacl-dev\viennacl\ocl\context.hpp > 66 1 ViennaCL_Benchmark > > Thanks, > -Matt > > > > On Sun, Aug 17, 2014 at 5:28 PM, Namik Karovic <nam...@gm...> > wrote: > >> Hi all, >> >> I just pushed the first working version of expert(custom) benchmark mode. >> Selecting custom sparse matrices is yet to be implemented, but all other >> benchmark configs are working. >> >> Except blas3, that is. I think I got the sizes wrong. I'd appreciate it >> if someone could check if I did it right: >> >> //blas3MatrixSizeA,B = size1,2 >> //blas3MatrixSizeB,C = size2,3 >> viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, blas3MatrixSizeB); >> viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, blas3MatrixSizeC); >> viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, blas3MatrixSizeC); >> >> // Fill the matrix >> for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) >> for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) >> stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); >> >> for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) >> for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) >> stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); >> >> //using ranges >> viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); >> >> //using slices >> viennacl::slice s(0, 2, blas3MatrixSizeB/2); >> >> The benchmark crashes on test 4 (LU factorization). I don't know if I >> messed up somewhere before test 4 (in the code written above), or somewhere >> else. >> >> Regards, Namik >> >> >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> ViennaCL-devel mailing list >> Vie...@li... >> https://lists.sourceforge.net/lists/listinfo/viennacl-devel >> >> > > > -- > -------------------- > Matthew Musto > mat...@gm... > |
From: Matthew M. <mat...@gm...> - 2014-08-18 02:12:45
|
Yeah, MSVC 12. I'll look into it and submit a pull request. -Matt On Sun, Aug 17, 2014 at 10:09 PM, Namik Karovic <nam...@gm...> wrote: > Hey Matt, > > 'uint64_t' : undeclared identifier > > > This looks like a compiler hick-up. I suppose this occured with MSVC? Feel > free to submit a fix. > > Regards, Namik > > > > On Mon, Aug 18, 2014 at 3:54 AM, Matthew Musto <mat...@gm...> > wrote: > >> Namik, >> >> I just tried to build it and got a couple errors. I made sure to run >> 'git submodule update --init' and I started with a fresh build folder for >> cmake. Since I know this is in active development, I thought I would ask >> first before trying to fix it and submitting a pull request. >> >> Here are the current build errors: >> >> Error 24 error C2059: syntax error : ')' >> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >> 89 1 ViennaCL_Benchmark >> Error 22 error C2065: 'uint64_t' : undeclared identifier >> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >> 89 1 ViennaCL_Benchmark >> Error 23 error C2146: syntax error : missing ')' before identifier >> 'iter' >> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >> 89 1 ViennaCL_Benchmark >> 30 IntelliSense: expected a ')' >> c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >> 89 80 ViennaCL_Benchmark >> 29 IntelliSense: identifier "uint64_t" is undefined >> c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >> 89 71 ViennaCL_Benchmark >> Warning 3 warning C4018: '<' : signed/unsigned mismatch >> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\benchmarks\benchmark_blas3.cpp >> 78 1 ViennaCL_Benchmark >> Warning 1 warning C4996: 'getenv': This function or variable may be >> unsafe. Consider using _dupenv_s instead. To disable deprecation, use >> _CRT_SECURE_NO_WARNINGS. See online help for details. >> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\external\viennacl-dev\viennacl\ocl\context.hpp >> 66 1 ViennaCL_Benchmark >> >> Thanks, >> -Matt >> >> >> >> On Sun, Aug 17, 2014 at 5:28 PM, Namik Karovic <nam...@gm...> >> wrote: >> >>> Hi all, >>> >>> I just pushed the first working version of expert(custom) benchmark >>> mode. Selecting custom sparse matrices is yet to be implemented, but all >>> other benchmark configs are working. >>> >>> Except blas3, that is. I think I got the sizes wrong. I'd appreciate it >>> if someone could check if I did it right: >>> >>> //blas3MatrixSizeA,B = size1,2 >>> //blas3MatrixSizeB,C = size2,3 >>> viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, blas3MatrixSizeB); >>> viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, blas3MatrixSizeC); >>> viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, blas3MatrixSizeC); >>> >>> // Fill the matrix >>> for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) >>> for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) >>> stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); >>> >>> for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) >>> for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) >>> stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); >>> >>> //using ranges >>> viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); >>> >>> //using slices >>> viennacl::slice s(0, 2, blas3MatrixSizeB/2); >>> >>> The benchmark crashes on test 4 (LU factorization). I don't know if I >>> messed up somewhere before test 4 (in the code written above), or somewhere >>> else. >>> >>> Regards, Namik >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> ViennaCL-devel mailing list >>> Vie...@li... >>> https://lists.sourceforge.net/lists/listinfo/viennacl-devel >>> >>> >> >> >> -- >> -------------------- >> Matthew Musto >> mat...@gm... >> > > -- -------------------- Matthew Musto mat...@gm... |
From: Namik K. <nam...@gm...> - 2014-08-18 02:33:33
|
I just got it to work with MSVC10 & Qt5.3.1. Changed uint64_t to uint. Don't think there'll be any precision loss there. I also had to add a line to the qmake build file, and manually copy libarchive libs. That copying part is rather interesting: -first it complained about not finding libarchive.lib, meaning it wanted to compile it statically even it is instructed to do it dynamically (msvc:QMAKE_CXXFLAGS += /MD)... so I had to manually copy libarchive.lib into external/libarchive/bin where it usually looks for the dll. That fixed compiling. -next, it crashed when started by QtCreator indicating its missing some libs. So I tried to manually run the .exe and guess what happened: it was missing libarchive.*DLL... *so I copied both libarchive.dll and libzlib.dll into exe's folder and tried starting it manually. Crashed with unknown reference to some dynamic Qt5 lib... Switched back to see if QtCreator can run it and guess what: it can... I have no idea why is this so unnecessarily complicated (borderline broken) and why does MSVC persist on being ridiculous. I'll now see if the same mysteries happen with the CMake build. Regards, Namik On Mon, Aug 18, 2014 at 4:12 AM, Matthew Musto <mat...@gm...> wrote: > Yeah, MSVC 12. I'll look into it and submit a pull request. > > -Matt > > > > On Sun, Aug 17, 2014 at 10:09 PM, Namik Karovic <nam...@gm...> > wrote: > >> Hey Matt, >> >> 'uint64_t' : undeclared identifier >> >> >> This looks like a compiler hick-up. I suppose this occured with MSVC? >> Feel free to submit a fix. >> >> Regards, Namik >> >> >> >> On Mon, Aug 18, 2014 at 3:54 AM, Matthew Musto <mat...@gm...> >> wrote: >> >>> Namik, >>> >>> I just tried to build it and got a couple errors. I made sure to run >>> 'git submodule update --init' and I started with a fresh build folder for >>> cmake. Since I know this is in active development, I thought I would ask >>> first before trying to fix it and submitting a pull request. >>> >>> Here are the current build errors: >>> >>> Error 24 error C2059: syntax error : ')' >>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>> 89 1 ViennaCL_Benchmark >>> Error 22 error C2065: 'uint64_t' : undeclared identifier >>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>> 89 1 ViennaCL_Benchmark >>> Error 23 error C2146: syntax error : missing ')' before identifier >>> 'iter' >>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>> 89 1 ViennaCL_Benchmark >>> 30 IntelliSense: expected a ')' >>> c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>> 89 80 ViennaCL_Benchmark >>> 29 IntelliSense: identifier "uint64_t" is undefined >>> c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>> 89 71 ViennaCL_Benchmark >>> Warning 3 warning C4018: '<' : signed/unsigned mismatch >>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\benchmarks\benchmark_blas3.cpp >>> 78 1 ViennaCL_Benchmark >>> Warning 1 warning C4996: 'getenv': This function or variable may >>> be unsafe. Consider using _dupenv_s instead. To disable deprecation, use >>> _CRT_SECURE_NO_WARNINGS. See online help for details. >>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\external\viennacl-dev\viennacl\ocl\context.hpp >>> 66 1 ViennaCL_Benchmark >>> >>> Thanks, >>> -Matt >>> >>> >>> >>> On Sun, Aug 17, 2014 at 5:28 PM, Namik Karovic <nam...@gm...> >>> wrote: >>> >>>> Hi all, >>>> >>>> I just pushed the first working version of expert(custom) benchmark >>>> mode. Selecting custom sparse matrices is yet to be implemented, but all >>>> other benchmark configs are working. >>>> >>>> Except blas3, that is. I think I got the sizes wrong. I'd appreciate it >>>> if someone could check if I did it right: >>>> >>>> //blas3MatrixSizeA,B = size1,2 >>>> //blas3MatrixSizeB,C = size2,3 >>>> viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, >>>> blas3MatrixSizeB); >>>> viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, >>>> blas3MatrixSizeC); >>>> viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, >>>> blas3MatrixSizeC); >>>> >>>> // Fill the matrix >>>> for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) >>>> for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) >>>> stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); >>>> >>>> for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) >>>> for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) >>>> stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); >>>> >>>> //using ranges >>>> viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); >>>> >>>> //using slices >>>> viennacl::slice s(0, 2, blas3MatrixSizeB/2); >>>> >>>> The benchmark crashes on test 4 (LU factorization). I don't know if I >>>> messed up somewhere before test 4 (in the code written above), or somewhere >>>> else. >>>> >>>> Regards, Namik >>>> >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> >>>> _______________________________________________ >>>> ViennaCL-devel mailing list >>>> Vie...@li... >>>> https://lists.sourceforge.net/lists/listinfo/viennacl-devel >>>> >>>> >>> >>> >>> -- >>> -------------------- >>> Matthew Musto >>> mat...@gm... >>> >> >> > > > -- > -------------------- > Matthew Musto > mat...@gm... > |
From: Namik K. <nam...@gm...> - 2014-08-18 02:54:56
|
I forgot my Visual Studio with Qt is broken :) so I can't test MSVC & CMake... I did, however, test mingw & cmake, and it works fine. On Mon, Aug 18, 2014 at 4:33 AM, Namik Karovic <nam...@gm...> wrote: > I just got it to work with MSVC10 & Qt5.3.1. Changed uint64_t to uint. > Don't think there'll be any precision loss there. > > I also had to add a line to the qmake build file, and manually copy > libarchive libs. That copying part is rather interesting: > -first it complained about not finding libarchive.lib, meaning it wanted > to compile it statically even it is instructed to do it dynamically > (msvc:QMAKE_CXXFLAGS += /MD)... so I had to manually copy libarchive.lib > into external/libarchive/bin where it usually looks for the dll. That fixed > compiling. > -next, it crashed when started by QtCreator indicating its missing some > libs. So I tried to manually run the .exe and guess what happened: it was > missing libarchive.*DLL... *so I copied both libarchive.dll and > libzlib.dll into exe's folder and tried starting it manually. Crashed with > unknown reference to some dynamic Qt5 lib... Switched back to see if > QtCreator can run it and guess what: it can... > > I have no idea why is this so unnecessarily complicated (borderline > broken) and why does MSVC persist on being ridiculous. > > I'll now see if the same mysteries happen with the CMake build. > > Regards, Namik > > > > On Mon, Aug 18, 2014 at 4:12 AM, Matthew Musto <mat...@gm...> > wrote: > >> Yeah, MSVC 12. I'll look into it and submit a pull request. >> >> -Matt >> >> >> >> On Sun, Aug 17, 2014 at 10:09 PM, Namik Karovic <nam...@gm...> >> wrote: >> >>> Hey Matt, >>> >>> 'uint64_t' : undeclared identifier >>> >>> >>> This looks like a compiler hick-up. I suppose this occured with MSVC? >>> Feel free to submit a fix. >>> >>> Regards, Namik >>> >>> >>> >>> On Mon, Aug 18, 2014 at 3:54 AM, Matthew Musto <mat...@gm...> >>> wrote: >>> >>>> Namik, >>>> >>>> I just tried to build it and got a couple errors. I made sure to run >>>> 'git submodule update --init' and I started with a fresh build folder for >>>> cmake. Since I know this is in active development, I thought I would ask >>>> first before trying to fix it and submitting a pull request. >>>> >>>> Here are the current build errors: >>>> >>>> Error 24 error C2059: syntax error : ')' >>>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>>> 89 1 ViennaCL_Benchmark >>>> Error 22 error C2065: 'uint64_t' : undeclared identifier >>>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>>> 89 1 ViennaCL_Benchmark >>>> Error 23 error C2146: syntax error : missing ')' before >>>> identifier 'iter' >>>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>>> 89 1 ViennaCL_Benchmark >>>> 30 IntelliSense: expected a ')' >>>> c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>>> 89 80 ViennaCL_Benchmark >>>> 29 IntelliSense: identifier "uint64_t" is undefined >>>> c:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\ui\homescreen.cpp >>>> 89 71 ViennaCL_Benchmark >>>> Warning 3 warning C4018: '<' : signed/unsigned mismatch >>>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\src\benchmarks\benchmark_blas3.cpp >>>> 78 1 ViennaCL_Benchmark >>>> Warning 1 warning C4996: 'getenv': This function or variable may >>>> be unsafe. Consider using _dupenv_s instead. To disable deprecation, use >>>> _CRT_SECURE_NO_WARNINGS. See online help for details. >>>> C:\viennacl-benchmark-gui-master\viennacl-benchmark-gui\external\viennacl-dev\viennacl\ocl\context.hpp >>>> 66 1 ViennaCL_Benchmark >>>> >>>> Thanks, >>>> -Matt >>>> >>>> >>>> >>>> On Sun, Aug 17, 2014 at 5:28 PM, Namik Karovic <nam...@gm... >>>> > wrote: >>>> >>>>> Hi all, >>>>> >>>>> I just pushed the first working version of expert(custom) benchmark >>>>> mode. Selecting custom sparse matrices is yet to be implemented, but all >>>>> other benchmark configs are working. >>>>> >>>>> Except blas3, that is. I think I got the sizes wrong. I'd appreciate >>>>> it if someone could check if I did it right: >>>>> >>>>> //blas3MatrixSizeA,B = size1,2 >>>>> //blas3MatrixSizeB,C = size2,3 >>>>> viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, >>>>> blas3MatrixSizeB); >>>>> viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, >>>>> blas3MatrixSizeC); >>>>> viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, >>>>> blas3MatrixSizeC); >>>>> >>>>> // Fill the matrix >>>>> for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) >>>>> for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) >>>>> stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); >>>>> >>>>> for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) >>>>> for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) >>>>> stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); >>>>> >>>>> //using ranges >>>>> viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); >>>>> >>>>> //using slices >>>>> viennacl::slice s(0, 2, blas3MatrixSizeB/2); >>>>> >>>>> The benchmark crashes on test 4 (LU factorization). I don't know if I >>>>> messed up somewhere before test 4 (in the code written above), or somewhere >>>>> else. >>>>> >>>>> Regards, Namik >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> >>>>> _______________________________________________ >>>>> ViennaCL-devel mailing list >>>>> Vie...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/viennacl-devel >>>>> >>>>> >>>> >>>> >>>> -- >>>> -------------------- >>>> Matthew Musto >>>> mat...@gm... >>>> >>> >>> >> >> >> -- >> -------------------- >> Matthew Musto >> mat...@gm... >> > > |
From: Philippe T. <phi...@gm...> - 2014-08-18 02:59:58
|
Hey Namik, The code looks fine. As a small tip, I would advise to use blas3MatrixSize{A,B,C} = {M, N, K} ; it's much more conventional. I would also suggest to remove LU from the benchmark. I only achieve 11 GFLOP/s on my machine (GEMM peaks at 120GFLOP/s). It will smash the overall score if you keep it enabled! Philippe (Not sleeping either :-p) 2014-08-17 23:28 GMT+02:00 Namik Karovic <nam...@gm...>: > Hi all, > > I just pushed the first working version of expert(custom) benchmark mode. > Selecting custom sparse matrices is yet to be implemented, but all other > benchmark configs are working. > > Except blas3, that is. I think I got the sizes wrong. I'd appreciate it if > someone could check if I did it right: > > //blas3MatrixSizeA,B = size1,2 > //blas3MatrixSizeB,C = size2,3 > viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, blas3MatrixSizeB); > viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, blas3MatrixSizeC); > viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, blas3MatrixSizeC); > > // Fill the matrix > for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) > stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); > > for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) > stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); > > //using ranges > viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); > > //using slices > viennacl::slice s(0, 2, blas3MatrixSizeB/2); > > The benchmark crashes on test 4 (LU factorization). I don't know if I > messed up somewhere before test 4 (in the code written above), or somewhere > else. > > Regards, Namik > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > ViennaCL-devel mailing list > Vie...@li... > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > > |
From: Namik K. <nam...@gm...> - 2014-08-18 07:30:33
|
Hey Philippe, I've disabled LU and renamed sizes to {M,N,K}. It's running fine now. Except custom sparse matrices :D I have no idea how to load and use them for benchmarking, since the new procedure using on-the-fly matrix generation is very different than the one using boost. Here's how I tried to it: std::vector< std::map<unsigned int, ScalarType> > stl_A; viennacl::tools::sparse_matrix_adapter<ScalarType> adapted_A(stl_A); if(customSparseMatrixPath.isEmpty()){ //no custom matrix specified, generate the default one viennacl::tools::generate_fdm_laplace(adapted_A, xPoints, yPoints ); } else{ //load matrix from file if(!viennacl::io::read_matrix_market_file(adapted_A /* Is this the right variable to read into? */, customSparseMatrixPath.toStdString()) ){ std::cout << "Custom sparse matrix read successfully" <<std::endl; } else{ std::cout << "Failed to read custom sparse matrix" <<std::endl; } } It always gives either unsupported format or plain failed to read matrix. Some help would be greatly appreciated. By the way, I'm starting to feel minor addiction when playing with the expert mode. There's certainly something very attracting about tweaking those numbers to get bigger numbers :D Except in the case of blas3. I just couldn't find a better matrix size combination than the default {1920,1920,1920}. Are these sizes the result of that magic auto-tuner thingy, or is it just unlucky tweaking? :D Regards, Namik On Mon, Aug 18, 2014 at 4:59 AM, Philippe Tillet <phi...@gm...> wrote: > Hey Namik, > > The code looks fine. As a small tip, I would advise to use > blas3MatrixSize{A,B,C} = {M, N, K} ; it's much more conventional. I would > also suggest to remove LU from the benchmark. I only achieve 11 GFLOP/s on > my machine (GEMM peaks at 120GFLOP/s). It will smash the overall score if > you keep it enabled! > > Philippe (Not sleeping either :-p) > > > 2014-08-17 23:28 GMT+02:00 Namik Karovic <nam...@gm...>: > >> Hi all, >> >> I just pushed the first working version of expert(custom) benchmark mode. >> Selecting custom sparse matrices is yet to be implemented, but all other >> benchmark configs are working. >> >> Except blas3, that is. I think I got the sizes wrong. I'd appreciate it >> if someone could check if I did it right: >> >> //blas3MatrixSizeA,B = size1,2 >> //blas3MatrixSizeB,C = size2,3 >> viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, blas3MatrixSizeB); >> viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, blas3MatrixSizeC); >> viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, blas3MatrixSizeC); >> >> // Fill the matrix >> for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) >> for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) >> stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); >> >> for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) >> for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) >> stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); >> >> //using ranges >> viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); >> >> //using slices >> viennacl::slice s(0, 2, blas3MatrixSizeB/2); >> >> The benchmark crashes on test 4 (LU factorization). I don't know if I >> messed up somewhere before test 4 (in the code written above), or somewhere >> else. >> >> Regards, Namik >> >> >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> ViennaCL-devel mailing list >> Vie...@li... >> https://lists.sourceforge.net/lists/listinfo/viennacl-devel >> >> > |
From: Karl R. <ru...@iu...> - 2014-08-21 20:33:59
|
Hi Namik, I tried building the GUI yesterday but got stuck because a QJsonDocument is returned from a signal (or slot, don't remember). The auto-MOC generator seems to be ignoring all preprocessor guards, so I couldn't get this to work on my machine. Is there any 'easy' fix to solve this? As for the sparse matrix reading: The code looks godd, just the way I'd expect it to work. Maybe the file format isn't recognized properly? Can you run in a debugger to see where the error is caused? Best regards, Karli On 08/18/2014 09:30 AM, Namik Karovic wrote: > Hey Philippe, > > I've disabled LU and renamed sizes to {M,N,K}. It's running fine now. > > Except custom sparse matrices :D I have no idea how to load and use them > for benchmarking, since the new procedure using on-the-fly matrix > generation is very different than the one using boost. Here's how I > tried to it: > > std::vector< std::map<unsigned int, ScalarType> > stl_A; > viennacl::tools::sparse_matrix_adapter<ScalarType> adapted_A(stl_A); > if(customSparseMatrixPath.isEmpty()){ > //no custom matrix specified, generate the default one > viennacl::tools::generate_fdm_laplace(adapted_A, xPoints, yPoints ); > } > else{ > //load matrix from file > if(!viennacl::io::read_matrix_market_file(adapted_A /* Is this the > right variable to read into? */, customSparseMatrixPath.toStdString()) ){ > std::cout << "Custom sparse matrix read successfully" <<std::endl; > } > else{ > std::cout << "Failed to read custom sparse matrix" <<std::endl; > } > } > > It always gives either unsupported format or plain failed to read > matrix. Some help would be greatly appreciated. > > By the way, I'm starting to feel minor addiction when playing with the > expert mode. There's certainly something very attracting about tweaking > those numbers to get bigger numbers :D Except in the case of blas3. I > just couldn't find a better matrix size combination than the default > {1920,1920,1920}. Are these sizes the result of that magic auto-tuner > thingy, or is it just unlucky tweaking? :D > > Regards, Namik > > > > > On Mon, Aug 18, 2014 at 4:59 AM, Philippe Tillet <phi...@gm... > <mailto:phi...@gm...>> wrote: > > Hey Namik, > > The code looks fine. As a small tip, I would advise to use > blas3MatrixSize{A,B,C} = {M, N, K} ; it's much more conventional. I > would also suggest to remove LU from the benchmark. I only achieve > 11 GFLOP/s on my machine (GEMM peaks at 120GFLOP/s). It will smash > the overall score if you keep it enabled! > > Philippe (Not sleeping either :-p) > > > 2014-08-17 23:28 GMT+02:00 Namik Karovic <nam...@gm... > <mailto:nam...@gm...>>: > > Hi all, > > I just pushed the first working version of expert(custom) > benchmark mode. Selecting custom sparse matrices is yet to be > implemented, but all other benchmark configs are working. > > Except blas3, that is. I think I got the sizes wrong. I'd > appreciate it if someone could check if I did it right: > > //blas3MatrixSizeA,B = size1,2 > //blas3MatrixSizeB,C = size2,3 > viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, > blas3MatrixSizeB); > viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, > blas3MatrixSizeC); > viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, > blas3MatrixSizeC); > > // Fill the matrix > for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) > stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); > > for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) > for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) > stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); > > //using ranges > viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); > > //using slices > viennacl::slice s(0, 2, blas3MatrixSizeB/2); > > The benchmark crashes on test 4 (LU factorization). I don't know > if I messed up somewhere before test 4 (in the code written > above), or somewhere else. > > Regards, Namik > > > ------------------------------------------------------------------------------ > > _______________________________________________ > ViennaCL-devel mailing list > Vie...@li... > <mailto:Vie...@li...> > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > > > > > > ------------------------------------------------------------------------------ > > > > _______________________________________________ > ViennaCL-devel mailing list > Vie...@li... > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > |
From: Namik K. <nam...@gm...> - 2014-08-22 10:51:40
|
Hi Karl, I tried building the GUI yesterday but got stuck because a QJsonDocument is returned from a signal (or slot, don't remember). The auto-MOC generator seems to be ignoring all preprocessor guards, so I couldn't get this to work on my machine. Is there any 'easy' fix to solve this? I guess I forgot to work on Qt4 compatibility. It's fixed now: https://github.com/viennacl/viennacl-benchmark-gui/commit/c213ef1058cd84841c0ca4c45de8c79b7be833bf It seems the MOC does not support declaring signal/slot functions within preprocessor if statements... That's why #if (QT_VERSION > QT_VERSION_CHECK(5, 0, 0)) someSlotFunction(); #endif didn't work. As for the sparse matrix reading: The code looks godd, just the way I'd expect it to work. Maybe the file format isn't recognized properly? Can you run in a debugger to see where the error is caused? I assumed my code wasn't good, so I didn't do much testing. I'll take a better look at it now. Regards, Namik On Thu, Aug 21, 2014 at 10:33 PM, Karl Rupp <ru...@iu...> wrote: > Hi Namik, > > I tried building the GUI yesterday but got stuck because a QJsonDocument > is returned from a signal (or slot, don't remember). The auto-MOC > generator seems to be ignoring all preprocessor guards, so I couldn't > get this to work on my machine. Is there any 'easy' fix to solve this? > > As for the sparse matrix reading: The code looks godd, just the way I'd > expect it to work. Maybe the file format isn't recognized properly? Can > you run in a debugger to see where the error is caused? > > Best regards, > Karli > > > > On 08/18/2014 09:30 AM, Namik Karovic wrote: > > Hey Philippe, > > > > I've disabled LU and renamed sizes to {M,N,K}. It's running fine now. > > > > Except custom sparse matrices :D I have no idea how to load and use them > > for benchmarking, since the new procedure using on-the-fly matrix > > generation is very different than the one using boost. Here's how I > > tried to it: > > > > std::vector< std::map<unsigned int, ScalarType> > stl_A; > > viennacl::tools::sparse_matrix_adapter<ScalarType> adapted_A(stl_A); > > if(customSparseMatrixPath.isEmpty()){ > > //no custom matrix specified, generate the default one > > viennacl::tools::generate_fdm_laplace(adapted_A, xPoints, yPoints ); > > } > > else{ > > //load matrix from file > > if(!viennacl::io::read_matrix_market_file(adapted_A /* Is this the > > right variable to read into? */, customSparseMatrixPath.toStdString()) ){ > > std::cout << "Custom sparse matrix read successfully" <<std::endl; > > } > > else{ > > std::cout << "Failed to read custom sparse matrix" <<std::endl; > > } > > } > > > > It always gives either unsupported format or plain failed to read > > matrix. Some help would be greatly appreciated. > > > > By the way, I'm starting to feel minor addiction when playing with the > > expert mode. There's certainly something very attracting about tweaking > > those numbers to get bigger numbers :D Except in the case of blas3. I > > just couldn't find a better matrix size combination than the default > > {1920,1920,1920}. Are these sizes the result of that magic auto-tuner > > thingy, or is it just unlucky tweaking? :D > > > > Regards, Namik > > > > > > > > > > On Mon, Aug 18, 2014 at 4:59 AM, Philippe Tillet <phi...@gm... > > <mailto:phi...@gm...>> wrote: > > > > Hey Namik, > > > > The code looks fine. As a small tip, I would advise to use > > blas3MatrixSize{A,B,C} = {M, N, K} ; it's much more conventional. I > > would also suggest to remove LU from the benchmark. I only achieve > > 11 GFLOP/s on my machine (GEMM peaks at 120GFLOP/s). It will smash > > the overall score if you keep it enabled! > > > > Philippe (Not sleeping either :-p) > > > > > > 2014-08-17 23:28 GMT+02:00 Namik Karovic <nam...@gm... > > <mailto:nam...@gm...>>: > > > > Hi all, > > > > I just pushed the first working version of expert(custom) > > benchmark mode. Selecting custom sparse matrices is yet to be > > implemented, but all other benchmark configs are working. > > > > Except blas3, that is. I think I got the sizes wrong. I'd > > appreciate it if someone could check if I did it right: > > > > //blas3MatrixSizeA,B = size1,2 > > //blas3MatrixSizeB,C = size2,3 > > viennacl::matrix<ScalarType> vcl_A(blas3MatrixSizeA, > > blas3MatrixSizeB); > > viennacl::matrix<ScalarType> vcl_B(blas3MatrixSizeB, > > blas3MatrixSizeC); > > viennacl::matrix<ScalarType> vcl_C(blas3MatrixSizeA, > > blas3MatrixSizeC); > > > > // Fill the matrix > > for (unsigned int i = 0; i < blas3MatrixSizeA; ++i) > > for (unsigned int j = 0; j < blas3MatrixSizeB; ++j) > > stl_A[i*blas3MatrixSizeA + j] = random<ScalarType>(); > > > > for (unsigned int i = 0; i < blas3MatrixSizeB; ++i) > > for (unsigned int j = 0; j < blas3MatrixSizeC; ++j) > > stl_B[i + j*blas3MatrixSizeC] = random<ScalarType>(); > > > > //using ranges > > viennacl::range r(blas3MatrixSizeB/4, 3 * blas3MatrixSizeB/4); > > > > //using slices > > viennacl::slice s(0, 2, blas3MatrixSizeB/2); > > > > The benchmark crashes on test 4 (LU factorization). I don't know > > if I messed up somewhere before test 4 (in the code written > > above), or somewhere else. > > > > Regards, Namik > > > > > > > ------------------------------------------------------------------------------ > > > > _______________________________________________ > > ViennaCL-devel mailing list > > Vie...@li... > > <mailto:Vie...@li...> > > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > > > > > > > _______________________________________________ > > ViennaCL-devel mailing list > > Vie...@li... > > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > > > > > > ------------------------------------------------------------------------------ > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/ > _______________________________________________ > ViennaCL-devel mailing list > Vie...@li... > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > |
From: Karl R. <ru...@iu...> - 2014-08-22 11:13:09
|
Hi Namik, > I guess I forgot to work on Qt4 compatibility. It's fixed now: > https://github.com/viennacl/viennacl-benchmark-gui/commit/c213ef1058cd84841c0ca4c45de8c79b7be833bf > It seems the MOC does not support declaring signal/slot functions within > preprocessor if statements... That's why > > #if (QT_VERSION > QT_VERSION_CHECK(5, 0, 0)) > someSlotFunction(); > #endif > > didn't work. Thanks, it works like a charm again :-) > As for the sparse matrix reading: The code looks godd, just the way I'd > > expect it to work. Maybe the file format isn't recognized properly? Can > > you run in a debugger to see where the error is caused? > > > I assumed my code wasn't good, so I didn't do much testing. I'll take a > better look at it now. Thanks. Now as I could run the GUI again, I must say that it is getting into better and better shape, so we should be good with releasing it together with ViennaCL 1.6.0 and get a bunch of attention :-) Some more minor suggestions to make the GUI even better: * I notice that the splash screen has some compression artifacts. Is it enough to just replace the respective graphics file with a higher resolution image? * The benchmark-logo ViennaCL_Benchmark_experimentLogo.png is neat. If the 'V' gets tweaked a little in style so that it matches the font, it would awesome! Also, the red in 'CL' is on the other end of the color spectrum as blue, so it's worth to try colors 'closer' to blue, e.g. orange. Maybe just use black for 'CL', like in 'Benchmark'? * The automatic benchmark result upload functionality is perhaps a bit rude, particularly now as all the NSA stuff has happened. What about asking the user at the end of the benchmark to upload (yes/no)? Also, as there is no autotuning available right now, we could just put the upload option on standby and wait for the autotuning to be added. * The values for "Vector size" take quite a lot of digits. What if you plot "Vector size (in thousands)" instead to crop the unnecessary zeros? I'll go over the routines for "Copy" and "Vector" to really benchmark device-specifics rather than ViennaCL-specifics. This should be straightforward - I'll ping you if I encounter any unexpected problems. Maybe I find some time tonight, otherwise on Sunday. Best regards, Karli |
From: Matthew M. <mat...@gm...> - 2014-08-22 11:29:29
|
Karl, You raise an interesting point about automatically uploading the results. I noticed the option was checked by default and it didn't bother me in the least. I definitely want to publish my results but could see how others may not want to. We should probably list the website where results could be found right next to the flag and a way to tag the results with a username or nickname and supply the person with a direct URL to their results so they can send to their friends and brag :) -Matt On Fri, Aug 22, 2014 at 7:13 AM, Karl Rupp <ru...@iu...> wrote: > Hi Namik, > > > I guess I forgot to work on Qt4 compatibility. It's fixed now: > > > https://github.com/viennacl/viennacl-benchmark-gui/commit/c213ef1058cd84841c0ca4c45de8c79b7be833bf > > It seems the MOC does not support declaring signal/slot functions within > > preprocessor if statements... That's why > > > > #if (QT_VERSION > QT_VERSION_CHECK(5, 0, 0)) > > someSlotFunction(); > > #endif > > > > didn't work. > > Thanks, it works like a charm again :-) > > > > As for the sparse matrix reading: The code looks godd, just the way > I'd > > > > expect it to work. Maybe the file format isn't recognized properly? > Can > > > > you run in a debugger to see where the error is caused? > > > > > > I assumed my code wasn't good, so I didn't do much testing. I'll take a > > better look at it now. > > Thanks. > > Now as I could run the GUI again, I must say that it is getting into > better and better shape, so we should be good with releasing it together > with ViennaCL 1.6.0 and get a bunch of attention :-) Some more minor > suggestions to make the GUI even better: > > * I notice that the splash screen has some compression artifacts. Is it > enough to just replace the respective graphics file with a higher > resolution image? > > * The benchmark-logo ViennaCL_Benchmark_experimentLogo.png is neat. If > the 'V' gets tweaked a little in style so that it matches the font, it > would awesome! Also, the red in 'CL' is on the other end of the color > spectrum as blue, so it's worth to try colors 'closer' to blue, e.g. > orange. Maybe just use black for 'CL', like in 'Benchmark'? > > * The automatic benchmark result upload functionality is perhaps a bit > rude, particularly now as all the NSA stuff has happened. What about > asking the user at the end of the benchmark to upload (yes/no)? Also, as > there is no autotuning available right now, we could just put the upload > option on standby and wait for the autotuning to be added. > > * The values for "Vector size" take quite a lot of digits. What if you > plot "Vector size (in thousands)" instead to crop the unnecessary zeros? > > I'll go over the routines for "Copy" and "Vector" to really benchmark > device-specifics rather than ViennaCL-specifics. This should be > straightforward - I'll ping you if I encounter any unexpected problems. > Maybe I find some time tonight, otherwise on Sunday. > > Best regards, > Karli > > > > ------------------------------------------------------------------------------ > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/ > _______________________________________________ > ViennaCL-devel mailing list > Vie...@li... > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > -- -------------------- Matthew Musto mat...@gm... |
From: Karl R. <ru...@iu...> - 2014-08-22 11:42:43
|
Hi Matt, > You raise an interesting point about automatically uploading the > results. I noticed the option was checked by default and it didn't > bother me in the least. I definitely want to publish my results but > could see how others may not want to. Some Europeans are pretty sensitive w.r.t. that topic in the meanwhile. > We should probably list the website where results could be found right > next to the flag and a way to tag the results with a username or > nickname and supply the person with a direct URL to their results so > they can send to their friends and brag :) You are absolutely right, we should not neglect this social aspect. At the very least, result uploads will provide us some statistics about which GPUs are in use by potential users. At the same time, it offers more potential for going 'viral', although we cannot (and should not) really expect this to happen. Best regards, Karli > > On Fri, Aug 22, 2014 at 7:13 AM, Karl Rupp <ru...@iu... > <mailto:ru...@iu...>> wrote: > > Hi Namik, > > > I guess I forgot to work on Qt4 compatibility. It's fixed now: > > > https://github.com/viennacl/viennacl-benchmark-gui/commit/c213ef1058cd84841c0ca4c45de8c79b7be833bf > > It seems the MOC does not support declaring signal/slot functions > within > > preprocessor if statements... That's why > > > > #if (QT_VERSION > QT_VERSION_CHECK(5, 0, 0)) > > someSlotFunction(); > > #endif > > > > didn't work. > > Thanks, it works like a charm again :-) > > > > As for the sparse matrix reading: The code looks godd, just > the way I'd > > > > expect it to work. Maybe the file format isn't recognized > properly? Can > > > > you run in a debugger to see where the error is caused? > > > > > > I assumed my code wasn't good, so I didn't do much testing. I'll > take a > > better look at it now. > > Thanks. > > Now as I could run the GUI again, I must say that it is getting into > better and better shape, so we should be good with releasing it together > with ViennaCL 1.6.0 and get a bunch of attention :-) Some more minor > suggestions to make the GUI even better: > > * I notice that the splash screen has some compression artifacts. Is it > enough to just replace the respective graphics file with a higher > resolution image? > > * The benchmark-logo ViennaCL_Benchmark_experimentLogo.png is neat. If > the 'V' gets tweaked a little in style so that it matches the font, it > would awesome! Also, the red in 'CL' is on the other end of the color > spectrum as blue, so it's worth to try colors 'closer' to blue, e.g. > orange. Maybe just use black for 'CL', like in 'Benchmark'? > > * The automatic benchmark result upload functionality is perhaps a bit > rude, particularly now as all the NSA stuff has happened. What about > asking the user at the end of the benchmark to upload (yes/no)? Also, as > there is no autotuning available right now, we could just put the upload > option on standby and wait for the autotuning to be added. > > * The values for "Vector size" take quite a lot of digits. What if you > plot "Vector size (in thousands)" instead to crop the unnecessary zeros? > > I'll go over the routines for "Copy" and "Vector" to really benchmark > device-specifics rather than ViennaCL-specifics. This should be > straightforward - I'll ping you if I encounter any unexpected problems. > Maybe I find some time tonight, otherwise on Sunday. > > Best regards, > Karli > > > ------------------------------------------------------------------------------ > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/ > _______________________________________________ > ViennaCL-devel mailing list > Vie...@li... > <mailto:Vie...@li...> > https://lists.sourceforge.net/lists/listinfo/viennacl-devel > > > > > -- > -------------------- > Matthew Musto > mat...@gm... <mailto:mat...@gm...> |
From: Namik K. <nam...@gm...> - 2014-08-22 11:43:28
|
Hey Karl, * I notice that the splash screen has some compression artifacts. Is it > enough to just replace the respective graphics file with a higher > resolution image? Yes, just make sure the new image has the same name and extension. * The benchmark-logo ViennaCL_Benchmark_experimentLogo.png is neat. If the > 'V' gets tweaked a little in style so that it matches the font, it would > awesome! Also, the red in 'CL' is on the other end of the color spectrum as > blue, so it's worth to try colors 'closer' to blue, e.g. orange. Maybe just > use black for 'CL', like in 'Benchmark'? Oh, you found that. I'm glad you like it :) That was just a proof of concept, so to speak. I'll work on it and make better. The automatic benchmark result upload functionality is perhaps a bit rude, > particularly now as all the NSA stuff has happened. What about asking the > user at the end of the benchmark to upload (yes/no)? Also, as there is no > autotuning available right now, we could just put the upload option on > standby and wait for the autotuning to be added. Ah yes, the NSA stuff. That's why I made it opt-out in the first place. My initial plan was to hard-code auto-uploading without asking the user haha :D But yeah, since it's not available right now I might aswell disable it for the time being. * The values for "Vector size" take quite a lot of digits. What if you plot > "Vector size (in thousands)" instead to crop the unnecessary zeros? Sure, that's a good idea. I'll go over the routines for "Copy" and "Vector" to really benchmark > device-specifics rather than ViennaCL-specifics. This should be > straightforward - I'll ping you if I encounter any unexpected problems. > Maybe I find some time tonight, otherwise on Sunday. Alrighty. Regards, Namik On Fri, Aug 22, 2014 at 1:13 PM, Karl Rupp <ru...@iu...> wrote: > Hi Namik, > > > > I guess I forgot to work on Qt4 compatibility. It's fixed now: > >> https://github.com/viennacl/viennacl-benchmark-gui/commit/ >> c213ef1058cd84841c0ca4c45de8c79b7be833bf >> It seems the MOC does not support declaring signal/slot functions within >> preprocessor if statements... That's why >> >> #if (QT_VERSION > QT_VERSION_CHECK(5, 0, 0)) >> someSlotFunction(); >> #endif >> >> didn't work. >> > > Thanks, it works like a charm again :-) > > > > As for the sparse matrix reading: The code looks godd, just the way >> I'd >> >> expect it to work. Maybe the file format isn't recognized properly? >> Can >> >> you run in a debugger to see where the error is caused? >> >> >> I assumed my code wasn't good, so I didn't do much testing. I'll take a >> better look at it now. >> > > Thanks. > > Now as I could run the GUI again, I must say that it is getting into > better and better shape, so we should be good with releasing it together > with ViennaCL 1.6.0 and get a bunch of attention :-) Some more minor > suggestions to make the GUI even better: > > * I notice that the splash screen has some compression artifacts. Is it > enough to just replace the respective graphics file with a higher > resolution image? > > * The benchmark-logo ViennaCL_Benchmark_experimentLogo.png is neat. If > the 'V' gets tweaked a little in style so that it matches the font, it > would awesome! Also, the red in 'CL' is on the other end of the color > spectrum as blue, so it's worth to try colors 'closer' to blue, e.g. > orange. Maybe just use black for 'CL', like in 'Benchmark'? > > * The automatic benchmark result upload functionality is perhaps a bit > rude, particularly now as all the NSA stuff has happened. What about asking > the user at the end of the benchmark to upload (yes/no)? Also, as there is > no autotuning available right now, we could just put the upload option on > standby and wait for the autotuning to be added. > > * The values for "Vector size" take quite a lot of digits. What if you > plot "Vector size (in thousands)" instead to crop the unnecessary zeros? > > I'll go over the routines for "Copy" and "Vector" to really benchmark > device-specifics rather than ViennaCL-specifics. This should be > straightforward - I'll ping you if I encounter any unexpected problems. > Maybe I find some time tonight, otherwise on Sunday. > > Best regards, > Karli > > |
From: Namik K. <nam...@gm...> - 2014-08-22 11:58:42
|
Hi Matt, We should probably list the website where results could be found right > > next to the flag and a way to tag the results with a username or > > nickname and supply the person with a direct URL to their results so > > they can send to their friends and brag :) > > > You are absolutely right, we should not neglect this social aspect. At the > very least, result uploads will provide us some statistics about which GPUs > are in use by potential users. At the same time, it offers more potential > for going 'viral', although we cannot (and should not) really expect this > to happen. That was the idea behind the "database" section I planned to implement. It would allow result viewing & comparison within the Benchmark GUI itself. This is coupled with a website with the same functionality for those who don't have the program installed on their machine. What's interesting, from the technical perspective, is that a website can be easily integrated with the GUI, like MatrixMarket is. With minor tweaking, we could reuse the website's HTML/JavaScript code and show it in the GUI, effectively killing two birds with one stone :) Even social network sharing plugins can be made to work directly from the GUI with ease. So it's definitely worth looking into. Regards, Namik On Fri, Aug 22, 2014 at 1:42 PM, Namik Karovic <nam...@gm...> wrote: > Hey Karl, > > > * I notice that the splash screen has some compression artifacts. Is it >> enough to just replace the respective graphics file with a higher >> resolution image? > > > Yes, just make sure the new image has the same name and extension. > > > * The benchmark-logo ViennaCL_Benchmark_experimentLogo.png is neat. If >> the 'V' gets tweaked a little in style so that it matches the font, it >> would awesome! Also, the red in 'CL' is on the other end of the color >> spectrum as blue, so it's worth to try colors 'closer' to blue, e.g. >> orange. Maybe just use black for 'CL', like in 'Benchmark'? > > > Oh, you found that. I'm glad you like it :) That was just a proof of > concept, so to speak. I'll work on it and make better. > > > The automatic benchmark result upload functionality is perhaps a bit >> rude, particularly now as all the NSA stuff has happened. What about asking >> the user at the end of the benchmark to upload (yes/no)? Also, as there is >> no autotuning available right now, we could just put the upload option on >> standby and wait for the autotuning to be added. > > > Ah yes, the NSA stuff. That's why I made it opt-out in the first place. My > initial plan was to hard-code auto-uploading without asking the user haha :D > But yeah, since it's not available right now I might aswell disable it for > the time being. > > > * The values for "Vector size" take quite a lot of digits. What if you >> plot "Vector size (in thousands)" instead to crop the unnecessary zeros? > > > Sure, that's a good idea. > > > I'll go over the routines for "Copy" and "Vector" to really benchmark >> device-specifics rather than ViennaCL-specifics. This should be >> straightforward - I'll ping you if I encounter any unexpected problems. >> Maybe I find some time tonight, otherwise on Sunday. > > > Alrighty. > > > Regards, Namik > > > On Fri, Aug 22, 2014 at 1:13 PM, Karl Rupp <ru...@iu...> wrote: > >> Hi Namik, >> >> >> > I guess I forgot to work on Qt4 compatibility. It's fixed now: >> >>> https://github.com/viennacl/viennacl-benchmark-gui/commit/ >>> c213ef1058cd84841c0ca4c45de8c79b7be833bf >>> It seems the MOC does not support declaring signal/slot functions within >>> preprocessor if statements... That's why >>> >>> #if (QT_VERSION > QT_VERSION_CHECK(5, 0, 0)) >>> someSlotFunction(); >>> #endif >>> >>> didn't work. >>> >> >> Thanks, it works like a charm again :-) >> >> >> >> As for the sparse matrix reading: The code looks godd, just the way >>> I'd >>> >>> expect it to work. Maybe the file format isn't recognized properly? >>> Can >>> >>> you run in a debugger to see where the error is caused? >>> >>> >>> I assumed my code wasn't good, so I didn't do much testing. I'll take a >>> better look at it now. >>> >> >> Thanks. >> >> Now as I could run the GUI again, I must say that it is getting into >> better and better shape, so we should be good with releasing it together >> with ViennaCL 1.6.0 and get a bunch of attention :-) Some more minor >> suggestions to make the GUI even better: >> >> * I notice that the splash screen has some compression artifacts. Is it >> enough to just replace the respective graphics file with a higher >> resolution image? >> >> * The benchmark-logo ViennaCL_Benchmark_experimentLogo.png is neat. If >> the 'V' gets tweaked a little in style so that it matches the font, it >> would awesome! Also, the red in 'CL' is on the other end of the color >> spectrum as blue, so it's worth to try colors 'closer' to blue, e.g. >> orange. Maybe just use black for 'CL', like in 'Benchmark'? >> >> * The automatic benchmark result upload functionality is perhaps a bit >> rude, particularly now as all the NSA stuff has happened. What about asking >> the user at the end of the benchmark to upload (yes/no)? Also, as there is >> no autotuning available right now, we could just put the upload option on >> standby and wait for the autotuning to be added. >> >> * The values for "Vector size" take quite a lot of digits. What if you >> plot "Vector size (in thousands)" instead to crop the unnecessary zeros? >> >> I'll go over the routines for "Copy" and "Vector" to really benchmark >> device-specifics rather than ViennaCL-specifics. This should be >> straightforward - I'll ping you if I encounter any unexpected problems. >> Maybe I find some time tonight, otherwise on Sunday. >> >> Best regards, >> Karli >> >> > |