Hi Karli, Karl Rupp <r...@iue.tuwien.ac.at> writes: > I'll work on improving the iterative solvers in the next couple of days, > so if something behaves weird, please let me know. Also, we have two > summer students who reworked (and fixed) large parts of the eigenvalue > routines for symmetric dense matrices and extended this to all three > backends. I can merge these some time in August.
OK; PyViennaCL should be ready for that. >> Now, of those 10382 tests, 312 are currently failing. These failures >> relate to just three operations: >> >> 1) A += trans(B); >> 2) elementwise_pow; >> 3) solving A \ b with b being a vector range or slice. >> >> (3) just gives numerically wrong results, which I suspect means that >> vector ranges aren't being handled correctly somewhere. I haven't >> investigated very strongly, but note that matrix ranges and slices (for >> A \ B) work fine. > > I thought there are tests for these, but maybe this was missed. I can > check that, shouldn't be a big deal. Thanks. >> (2) fails with "ViennaCL: Internal error: The scheduler encountered a >> problem with the operation provided: Unsupported binary operator", so >> that's probably not implemented in the scheduler yet. I'm using >> operation_node_type.OPERATION_BINARY_ELEMENT_POW_TYPE. > > Sounds indeed just like this was not registered in the scheduler. I'll > fix this. Also thanks. >> (1) is most interesting. I mentioned it to Philippe, and he noticed that >> the matrix_float_double tests in ViennaCL don't cover trans or >> operations on trans objects. Importantly, I don't get a bug if I do >> >> B_trans = trans(B); >> A += B_trans >> >> instead of >> >> A += trans(B). >> >> When I tried to add a C++ test of this form to matrix_float_double.hpp, >> I get the compilation error >> >> ‘apply’ is not a member of >> ‘viennacl::linalg::detail::op_executor<viennacl::matrix_base<float>, >> viennacl::op_inplace_add, viennacl::matrix_expression<const >> viennacl::matrix_base<float>, const viennacl::matrix_base<float>, >> viennacl::op_trans> >’ >> >> which suggests that this is just a missing bit of API, and so I >> shouldn't expect A += trans(B) to work yet. > > Ah, this is apparently not working correctly. It should be supported > API-wise, even though trans() is currently fairly poor in terms of > performance. Again, I'll fix this soon. And further thanks! In the meantime, I can always add another hook to PyViennaCL to dispatch any trans op before trying to compute an inplace add / sub. > You can hook the tests into our CDash > (http://viennastar.iue.tuwien.ac.at/CDash/index.php?project=ViennaCL) if > this is possible from your testing environment. As an alternative, I > don't think it is a big problem to set up a different dashboard system > on either the same machine or somewhere else. Most important is that > these tests are run on multiple machines on a nightly basis and > automatically report failures. Yep -- I'll look into all this. > Btw: Did you run these tests on krupp2 tonight? I see strange test > failures for which I don't have any explanation other than that the > machine was temporarily overloaded. Nope; I've not logged into krupp2 for a while now :) Cheers, Toby ------------------------------------------------------------------------------ Infragistics Professional Build stunning WinForms apps today! Reboot your WinForms applications with our WinForms controls. Build a bridge from your legacy apps to the future. http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk _______________________________________________ ViennaCL-devel mailing list ViennaCL-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/viennacl-devel