Hi Jan,

thank you very much for your detailed email including suggestions for 
fixing the issues you encountered.

> I have installed Viennacl 1.7.1 on 2 machines, details below. Thank you
> for a great piece of work!
> To plunge right in, here are the issues I found:
> Compilation (VS 2015 rev 3, 64 bits release), using Boost to compile
> tests (and ublas) as well:
> Boost: compiler runs out of steam, needed to
> define BOOST_NO_CXX11_ALLOCATOR
> for smart_ptr/detail/array_allocator.hpp; VS (rightly) complained about
> invalid friend declarations in numeric/ublas/vector.hpp which I
> commented out to avoid compilation errors. 3 lines in
> ..ublas::vector<T,A>::const_iterator,
> fixed_vectir<T.N.A>::const_iterator and c_vector<T,A>::const_iterator.

argl, Boost again. Our roadmap for the next 1.8.0 release has an 
explicit "get rid of uBLAS" included, because supporting multiple 
versions of Boost turned out to be virtually impossible. I consider this 
to be a general failure of the C++ header-only model, but I'll stop my 
rant for now :-)


> Then a peculiarity of the VS IDE: when executing from the IDE, the cwd
> is by default set to the directory of the project file (.vcxproj) as
> written by CMake. For the tests this means that either the cwd or the
> datapath needs to be adapted omitting /examples. In some cases incorrect
> paths caused segfaults instead of reports, which is not an issue of the
> greatest importance, but might need looking into.

I agree and created an issue on GitHub to make sure this is not forgotten:
  https://github.com/viennacl/viennacl-dev/issues/213


> Tests:
> Some opencl fail with CL_OUT_OF_RESOURCES. The corresponding cpu and
> cuda versions pass.

This might have to do with your hardware setup and is - unfortunately - 
hard to track down remotely. Any chance that you can provide more 
information?


> I got a "Sparsity pattern mismatch detected" error on all
> sparse_prod-test versions.
> Playing with the dimensions of the test matrices, I noticed that the
> error occurs only rarely.
> This led me eventually to random.hpp which decides the rows to be
> non-zeroed by returning rand()/RAND_MAX 🐞. This can occasionally return
> 1, and so effectively produce an out of bounds in the sparse arrays. I
> solved this in my copy by using RAND_MAX+1 as the divisor (you might
> want to use a smaller offset, or a check on the return value, perhaps).

Thanks! This should explain other failures some users have reported on 
Windows but which I failed to reproduce...


> The out of resources thing may be specific to the Nvidia implementation.
> Nvidia driver version is 376.19. Memory is 2 GB.

I'd think so...

> Matrix_col-int-test-opencl will be almost finished before the exception
> occurs. Matrix_col-float-test-opencl and Matrix_col-double-test-opencl
> pass. The libviennacl-blas tests all fail immediately (ASUM in blas1) on
> opencl. The opencl blas bench programs (not using the library/backend)
> work fine, though. Debugging libviennacl-blas1.cu
> <http://libviennacl-blas1.cu> gives a CL_INVALID_MEM_OBJECT. After
> catching this exception, another is thrown when the program exits
> (atexit backend<0> destructor).
> Since I am not a regular opencl user, I do not (yet) have other tests
> which might show resource leakage due to the driver. The library may
> have issues of its own with regard to VS/windows, but I don't know how
> to proceed further.

Ok, I'll look into these on my Windows machine.


> System information:
>
> Win 7 64 SP1 and Win 10 64 up to date. Both 16 GB main memory. No
> difference in outcomes.
> AMD K10 (phenom II 945) and I7 6700HQ
> Nvidia 560 Ti and Nvidia 960M, both with 2 GB (dedicated) memory. (Need
> a new desktop, but fear the installation proces...)
> Visual Studio 2015 update 3. Boost 1.60 and 1.62.
> Cmake 3.7. Enable Cuda, OpenCL, OpenMP and UBLAS.

Ok, maybe these latest versions are the culprit. I've got a Win 7 
machine with older versions of CMake and friends. Time for an upgrade :-)

Best regards,
Karli


------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
ViennaCL-support mailing list
ViennaCL-support@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/viennacl-support

Reply via email to