You can subscribe to this list here.
2010 
_{Jan}

_{Feb}

_{Mar}

_{Apr}

_{May}
(1) 
_{Jun}
(8) 
_{Jul}
(16) 
_{Aug}
(6) 
_{Sep}

_{Oct}

_{Nov}

_{Dec}
(5) 

2011 
_{Jan}
(4) 
_{Feb}
(3) 
_{Mar}
(5) 
_{Apr}

_{May}
(24) 
_{Jun}

_{Jul}
(5) 
_{Aug}
(17) 
_{Sep}

_{Oct}
(6) 
_{Nov}
(9) 
_{Dec}
(8) 
2012 
_{Jan}
(5) 
_{Feb}
(14) 
_{Mar}
(25) 
_{Apr}
(7) 
_{May}
(15) 
_{Jun}
(12) 
_{Jul}
(22) 
_{Aug}
(4) 
_{Sep}
(10) 
_{Oct}
(10) 
_{Nov}
(19) 
_{Dec}
(17) 
2013 
_{Jan}
(8) 
_{Feb}
(10) 
_{Mar}
(16) 
_{Apr}
(3) 
_{May}
(16) 
_{Jun}
(26) 
_{Jul}

_{Aug}
(9) 
_{Sep}

_{Oct}
(8) 
_{Nov}
(17) 
_{Dec}
(2) 
2014 
_{Jan}
(37) 
_{Feb}
(15) 
_{Mar}
(6) 
_{Apr}
(9) 
_{May}
(11) 
_{Jun}
(11) 
_{Jul}
(9) 
_{Aug}
(9) 
_{Sep}
(19) 
_{Oct}
(4) 
_{Nov}
(22) 
_{Dec}
(21) 
2015 
_{Jan}

_{Feb}
(7) 
_{Mar}
(2) 
_{Apr}
(17) 
_{May}
(19) 
_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}

_{Nov}

_{Dec}

S  M  T  W  T  F  S 



1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25
(3) 
26

27

28
(1) 
29
(1) 
30
(3) 



From: Abhinav Golas <abhinav.golas@gm...>  20100630 23:38:24

Hi Karli, I tried your proposed fixes, as well as a number of different other fixes, but all of them simply transfer the crash to other locations in code. I managed to get the execution to a point in the GMRES solver, where it crashes in the solver which runs without the preconditioner (line 198 in tut3.cpp). Abhinav Dear Abhinav, thanks for your email and pointing that bug out. As a quick fix, I think it is sufficient to write iter2 = _mat[_mat.size()1].end(); in the elsestatement. This is, however, untested, but will be fixed in the upcoming version 1.0.4. In the meanwhile I can recommend using either the uBLAS types for the initialization of the GPU data or to ensure that the STL vector< map< > > capacity is larger than the size. This can for example be enforced by writing stl_matrix.reserve(rhs.size()+1); in tut3 right after line 131. Again, thanks for pointing that out, our test environment did not complain on that one. Best regards, Karli Abhinav Golas wrote: > Hi, > > I encountered an error while running tut3, the code tried to access an > out of range element of a vector. The relevant code section is: > > tools.hpp: > > const_sparse_matrix_adapted_iterator(std::vector<std::map<unsigned int, > SCALARTYPE> > const & mat, int i, int j) > : _mat(mat), _i(i), _j(j) > { > if (i < static_cast<int>(_mat.size()) && j < static_cast<int>(_mat.size())) > iter2 = _mat[i].begin(); > else > iter2 = _mat[i].end(); > } > > for i == 65025 and _mat.size() == 65025 > > This is encountered for the execution stack: > main.cpp:143 copy(stl_matrix, vcl_coordinate_matrix); > coordinate_matrix.hpp: 217 > copy(tools::const_sparse_matrix_adapter<SCALARTYPE>(cpu_matrix), > gpu_matrix); > coordinate_matrix.hpp: 166 for (typename CPU_MATRIX::const_iterator1 > row_it = cpu_matrix.begin1(); row_it != cpu_matrix.end1(); ++row_it) > tools.hpp: 184 const_iterator1 end1() const { return > const_iterator1(_mat, size1(), size2()); } > tools.hpp: 101 (code given above) > > I'm running this on Visual Studio 2008, on Windows 7, with Core i7 > extreme 965, ATI Radeon 5770 with the latest stream SDK, Boost 1.42 > > Thanks, > Abhinav Golas > > >  > >  > This SF.net email is sponsored by Sprint > What will you do first with EVO, the first 4G phone? > Visit sprint.com/first  http://p.sf.net/sfu/sprintcomfirst > > >  > > _______________________________________________ > Viennaclsupport mailing list > Viennaclsupport@... > https://lists.sourceforge.net/lists/listinfo/viennaclsupport 
From: <melfiand@ms...>  20100630 21:51:46

Hi, I've just recently discovered your project and I was toying around LU factorization and forwardback substitution, and in my programs, the inplace_solve function seems to break down when I invert a matrix larger than about 225x225. I'm using linux and an NVIDIA tesla C1060. Basically, when I run the viennacl inplace solve and the ublas inplace solve they produce results differing by about one index (if my matrix is (200400)^2 ) and more indices if the matrix is larger. I tested the lu_factorize function, and that produces similar results to ublas (up to a relatively high level of significance), so I'm fairly certain the problem I'm having lies with the inplace_solve function. Here is the code I'm running:  #include <boost/numeric/ublas/triangular.hpp> #include <boost/numeric/ublas/matrix_sparse.hpp> #include <boost/numeric/ublas/vector.hpp> #include <boost/numeric/ublas/matrix.hpp> #include <boost/numeric/ublas/io.hpp> #include <boost/numeric/ublas/lu.hpp> #include <fstream> #include "viennacl/vector.hpp" #include "viennacl/matrix.hpp" #include "viennacl/linalg/direct_solve.hpp" #include "benchmarkutils.hpp" using namespace boost::numeric; int main() { int N = 500; ublas::matrix<double> A(N,N); ublas::vector<double> b(N); ublas::vector<double> b2(N); viennacl::matrix<double> gpu_A(N,N); viennacl::vector<double> gpu_b(N); for (int i=0;i<N;i++) { for (int j=i;j<N;j++) { A(i,j)=1; } b(i)=Ni; } copy(A,gpu_A); copy(b,gpu_b); ublas::inplace_solve(A,b,ublas::upper_tag()); viennacl::linalg::inplace_solve(gpu_A,gpu_b,viennacl::linalg::upper_tag()); ublas::inplace_solve(A2,b3,ublas::upper_tag()); copy(gpu_b,b2); double err = 0; for (int i=0;i<N;i++) { if (abs(b2(i)b(i))>err) { err=abs(b2(i)b(i)); std::cout<<"At index "<<i<<std::endl; std::cout<<"CPU= "<<b(i)<<" and"<<std::endl; std::cout<<"GPU= "<<b2(i)<<std::endl; } } std::cout<<err<<std::endl; }  Every time I run this there are one or two errors at different indices. Am I doing something wrong? Do you have any suggestions? Thanks in advance, Andrew Melfi 
From: Karl Rupp <rupp@iu...>  20100630 08:40:58

Dear Abhinav, thanks for your email and pointing that bug out. As a quick fix, I think it is sufficient to write iter2 = _mat[_mat.size()1].end(); in the elsestatement. This is, however, untested, but will be fixed in the upcoming version 1.0.4. In the meanwhile I can recommend using either the uBLAS types for the initialization of the GPU data or to ensure that the STL vector< map< > > capacity is larger than the size. This can for example be enforced by writing stl_matrix.reserve(rhs.size()+1); in tut3 right after line 131. Again, thanks for pointing that out, our test environment did not complain on that one. Best regards, Karli Abhinav Golas wrote: > Hi, > > I encountered an error while running tut3, the code tried to access an > out of range element of a vector. The relevant code section is: > > tools.hpp: > > const_sparse_matrix_adapted_iterator(std::vector<std::map<unsigned int, > SCALARTYPE> > const & mat, int i, int j) > : _mat(mat), _i(i), _j(j) > { > if (i < static_cast<int>(_mat.size()) && j < static_cast<int>(_mat.size())) > iter2 = _mat[i].begin(); > else > iter2 = _mat[i].end(); > } > > for i == 65025 and _mat.size() == 65025 > > This is encountered for the execution stack: > main.cpp:143 copy(stl_matrix, vcl_coordinate_matrix); > coordinate_matrix.hpp: 217 > copy(tools::const_sparse_matrix_adapter<SCALARTYPE>(cpu_matrix), > gpu_matrix); > coordinate_matrix.hpp: 166 for (typename CPU_MATRIX::const_iterator1 > row_it = cpu_matrix.begin1(); row_it != cpu_matrix.end1(); ++row_it) > tools.hpp: 184 const_iterator1 end1() const { return > const_iterator1(_mat, size1(), size2()); } > tools.hpp: 101 (code given above) > > I'm running this on Visual Studio 2008, on Windows 7, with Core i7 > extreme 965, ATI Radeon 5770 with the latest stream SDK, Boost 1.42 > > Thanks, > Abhinav Golas > > >  > >  > This SF.net email is sponsored by Sprint > What will you do first with EVO, the first 4G phone? > Visit sprint.com/first  http://p.sf.net/sfu/sprintcomfirst > > >  > > _______________________________________________ > Viennaclsupport mailing list > Viennaclsupport@... > https://lists.sourceforge.net/lists/listinfo/viennaclsupport 
From: Abhinav Golas <abhinav.golas@gm...>  20100629 22:10:15

Hi, I encountered an error while running tut3, the code tried to access an out of range element of a vector. The relevant code section is: tools.hpp: const_sparse_matrix_adapted_iterator(std::vector<std::map<unsigned int, SCALARTYPE> > const & mat, int i, int j) : _mat(mat), _i(i), _j(j) { if (i < static_cast<int>(_mat.size()) && j < static_cast<int>(_mat.size())) iter2 = _mat[i].begin(); else iter2 = _mat[i].end(); } for i == 65025 and _mat.size() == 65025 This is encountered for the execution stack: main.cpp:143 copy(stl_matrix, vcl_coordinate_matrix); coordinate_matrix.hpp: 217 copy(tools::const_sparse_matrix_adapter<SCALARTYPE>(cpu_matrix), gpu_matrix); coordinate_matrix.hpp: 166 for (typename CPU_MATRIX::const_iterator1 row_it = cpu_matrix.begin1(); row_it != cpu_matrix.end1(); ++row_it) tools.hpp: 184 const_iterator1 end1() const { return const_iterator1(_mat, size1(), size2()); } tools.hpp: 101 (code given above) I'm running this on Visual Studio 2008, on Windows 7, with Core i7 extreme 965, ATI Radeon 5770 with the latest stream SDK, Boost 1.42 Thanks, Abhinav Golas 
From: Karl Rupp <rupp@iu...>  20100628 17:05:30

Hello Salomon, the answer to the problems is given here: http://developer.amd.com/support/KnowledgeBase/Lists/KnowledgeBase/DispForm.aspx?ID=88 Seems like I have not read through the page carefully enough: The builtin functions sqrt, fabs, fmax and the like for double precision are only available on CPUs, but not on GPUs. Thus, the compilation fails for your Radeon HD 5850. As a remedy, you can do the following: * Open the file viennacl/linalg/kernels/vector_kernels.h * Comment or delete the lines 355, 356, 357 and 365 (This excludes norm_1, norm_2, norm_inf and index_norm_inf from the compilation process) This should fix the issue for Radeon GPUs. However, you cannot use the norm functions then, hence the GMRESsolver will not work. However, the CG and BiCGStab solver are unaffected. If you need the GMRESsolver anyway, you have to replace the norm_2(v) calls (lines 101 and 151) by sqrt(inner_prod(v,v)); calls in viennacl/linalg/gmres.hpp Hope this helps :) Best regards, Karli salomon wrote: > Hi, > > I get the error from your 'vectorbench' function that comes with the > ViennaCL 1.0.3 distribution, even before I have modified it for my own > purposes. If it helps, I get the same error as soon as I try to > initialise a viennacl vector in double precision. > > Kind regards, > Salomon > > > > On Fri, 20100625 at 17:08 +0200, rupp@... wrote: >> Quoting salomon <14551454@...>: >> >>> Hi, >>> >>> I have updated to 10.6. However, I still get the same error? >>> >>> Regards >>> Salomon >>> >> Okay, could you please send a sample code to the mailinglist? >> >> Best regards, >> Karli >> > > > 
From: <rupp@iu...>  20100625 11:15:27

Hi, > 1) I am working under Ubuntu 9.10 as my OS. Okay, this should not cause the issue then. > Could it be that my ATI driver is outdated? This is what I suppose. We used version 10.4 of the Catalyst driver for our tests, which  as far as I remember  is recommended with Stream SDK 2.1. Please update you driver and let us know whether this caused the issue. Best regards, Karli 
From: <rupp@iu...>  20100625 09:18:25

Hi Salomon, Thanks for your enquiry. A couple of questions: * Which operating system do you use? We have observed that for some reasons the experimental double precision support works fine under Linux, while it may give the error you mentioned under Windows. From the file paths you provided I assume that you are using Linux, so it is not an OSrelated issue. * Did set the preprocessor constant to unlock double precision support as explained in the manual, i.e. prior to any other ViennaCL includes? * Which version of the ATI driver (not the SDK) are you using? In any case, you do not have to touch any OpenCL code, this can be all handled in C++ :) Best regards, Karli Quoting salomon <14551454@...>: > Hi ViennaCL team, > > I would like to use your double precision version of the matrix vector > multiplication function. However, I receive the following error message: > >  > # benchmarking doubleprecision >  > Error 11 in function create > ( /home/salomon/ATI/ViennaCL1.0.3/./viennacl/ocl/program.hpp:77 ) > CL_BUILD_PROGRAM_FAILURE > Segmentation fault > > This is when I try to run the vectorbench program. I am working with an > ATI Radeon HD 5850 card and am using ViennaCL 1.0.3 and ATI Stream SDK > 2.1. I am aware that there is only experimental support for double > precision on ATI cards, but that would be sufficient for my purposes. > > How can I solve this error? Any help would be appreciated as I am not > very familiar with OpenCL. > > Thank you > Salomon > > >  > ThinkGeek and WIRED's GeekDad team up for the Ultimate > GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the > lucky parental unit. See the prize list and enter to win: > http://p.sf.net/sfu/thinkgeekpromo > _______________________________________________ > Viennaclsupport mailing list > Viennaclsupport@... > https://lists.sourceforge.net/lists/listinfo/viennaclsupport > > 
From: salomon <14551454@su...>  20100625 02:17:35

Hi ViennaCL team, I would like to use your double precision version of the matrix vector multiplication function. However, I receive the following error message:  # benchmarking doubleprecision  Error 11 in function create ( /home/salomon/ATI/ViennaCL1.0.3/./viennacl/ocl/program.hpp:77 ) CL_BUILD_PROGRAM_FAILURE Segmentation fault This is when I try to run the vectorbench program. I am working with an ATI Radeon HD 5850 card and am using ViennaCL 1.0.3 and ATI Stream SDK 2.1. I am aware that there is only experimental support for double precision on ATI cards, but that would be sufficient for my purposes. How can I solve this error? Any help would be appreciated as I am not very familiar with OpenCL. Thank you Salomon 