eigen/unsupported/test
Rasmus Munk Larsen e5ac8cbd7a A) fix deadlocks in thread pool caused by EventCount
This fixed 2 deadlocks caused by sloppiness in the EventCount logic.
Both most likely were introduced by cl/236729920 which includes the new EventCount algorithm:
01da8caf00

bug #1 (Prewait):
Prewait must not consume existing signals.
Consider the following scenario.
There are 2 thread pool threads (1 and 2) and 1 external thread (3). RunQueue is empty.
Thread 1 checks the queue, calls Prewait, checks RunQueue again and now is going to call CommitWait.
Thread 2 checks the queue and now is going to call Prewait.
Thread 3 submits 2 tasks, EventCount signals is set to 1 because only 1 waiter is registered the second signal is discarded).
Now thread 2 resumes and calls Prewait and takes away the signal.
Thread 1 resumes and calls CommitWait, there are no pending signals anymore, so it blocks.
As the result we have 2 tasks, but only 1 thread is running.

bug #2 (CancelWait):
CancelWait must not take away a signal if it's not sure that the signal was meant for this thread.
When one thread blocks and another submits a new task concurrently, the EventCount protocol guarantees only the following properties (similar to the Dekker's algorithm):
(a) the registered waiter notices presence of the new task and does not block
(b) the signaler notices presence of the waiters and wakes it
(c) both the waiter notices presence of the new task and signaler notices presence of the waiter
[it's only that both of them do not notice each other must not be possible, because it would lead to a deadlock]
CancelWait is called for cases (a) and (c). For case (c) it is OK to take the notification signal away, but it's not OK for (a) because nobody queued a signals for us and we take away a signal meant for somebody else.
Consider:
Thread 1 calls Prewait, checks RunQueue, it's empty, now it's going to call CommitWait.
Thread 3 submits 2 tasks, EventCount signals is set to 1 because only 1 waiter is registered the second signal is discarded).
Thread 2 calls Prewait, checks RunQueue, discovers the tasks, calls CancelWait and consumes the pending signal (meant for thread 1).
Now Thread 1 resumes and calls CommitWait, since there are no signals it blocks.
As the result we have 2 tasks, but only 1 thread is running.

Both deadlocks are only a problem if the tasks require parallelism. Most computational tasks do not require parallelism, i.e. a single thread will run task 1, finish it and then dequeue and run task 2.

This fix undoes some of the sloppiness in the EventCount that was meant to reduce CPU consumption by idle threads, because we now have more threads running in these corner cases. But we still don't have pthread_yield's and maybe the strictness introduced by this change will actually help to reduce tail latency because we will have threads running when we actually need them running.



B) fix deadlock in thread pool caused by RunQueue

This fixed a deadlock caused by sloppiness in the RunQueue logic.
Most likely this was introduced with the non-blocking thread pool.
The deadlock only affects workloads that require parallelism.
Most computational tasks don't require parallelism.

PopBack must not fail spuriously. If it does, it can effectively lead to single thread consuming several wake up signals.
Consider 2 worker threads are blocked.
External thread submits a task. One of the threads is woken.
It tries to steal the task, but fails due to a spurious failure in PopBack (external thread submits another task and holds the lock).
The thread executes blocking protocol again (it won't block because NonEmptyQueueIndex is precise and the thread will discover pending work, but it has called PrepareWait).
Now external thread submits another task and signals EventCount again.
The signal is consumed by the first thread again. But now we have 2 tasks pending but only 1 worker thread running.

It may be possible to fix this in a different way: make EventCount::CancelWait forward wakeup signal to a blocked thread rather then consuming it. But this looks more complex and I am not 100% that it will fix the bug.
It's also possible to have 2 versions of PopBack: one will do try_to_lock and another won't. Then worker threads could first opportunistically check all queues with try_to_lock, and only use the blocking version before blocking. But let's first fix the bug with the simpler change.
2019-05-08 10:16:46 -07:00
..
mpreal fix mpreal for mpfr<4.0.0 2018-10-09 09:15:22 +02:00
alignedvector3.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
autodiff_scalar.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
autodiff.cpp Fix numerous shadow-warnings for GCC<=4.8 2018-08-28 18:32:39 +02:00
BVH.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
CMakeLists.txt bug #1654: fix compilation with cuda and no c++11 2019-01-09 18:00:05 +01:00
cxx11_eventcount.cpp A) fix deadlocks in thread pool caused by EventCount 2019-05-08 10:16:46 -07:00
cxx11_maxsizevector.cpp bug #1598: Let MaxSizeVector respect alignment of objects and add a unit test 2018-09-14 20:21:56 +02:00
cxx11_meta.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_non_blocking_thread_pool.cpp Collapsed revision 2018-09-17 18:29:12 -07:00
cxx11_runqueue.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_argmax_gpu.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_argmax_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_argmax.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_assign.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_block_access.cpp Fix cxx11_tensor_{block_access, reduction} tests 2018-10-25 11:31:29 -07:00
cxx11_tensor_broadcast_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_broadcasting.cpp Support reshaping with static shapes and dimensions conversion in tensor broadcasting 2018-09-14 15:25:27 -07:00
cxx11_tensor_builtins_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_cast_float16_gpu.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_casts.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_chipping_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_chipping.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_comparisons.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_complex_cwise_ops_gpu.cu Add tiled evaluation support to TensorExecutor 2018-07-25 13:51:10 -07:00
cxx11_tensor_complex_gpu.cu Add tiled evaluation support to TensorExecutor 2018-07-25 13:51:10 -07:00
cxx11_tensor_concatenation_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_concatenation.cpp [PATCH 1/2] Misc. typos 2018-09-18 04:15:01 -04:00
cxx11_tensor_const.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_contract_gpu.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_contract_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_contraction.cpp Fix contraction test. 2018-10-08 16:37:07 -07:00
cxx11_tensor_convolution_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_convolution.cpp Don't use bracket syntax in ctor. 2018-09-13 17:04:05 -07:00
cxx11_tensor_custom_index.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_custom_op_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_custom_op.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_device_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_device.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_dimension.cpp Enable DSizes type promotion with c++03 compilers 2018-09-18 10:57:00 -07:00
cxx11_tensor_empty.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_executor.cpp Block evaluation for TensorGeneratorOp 2019-03-05 16:35:21 -08:00
cxx11_tensor_expr.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_fft.cpp Fix flaky test for tensor fft. 2019-01-16 14:03:12 -08:00
cxx11_tensor_fixed_size.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_forced_eval_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_forced_eval.cpp Do not create Tensor<const T> in cxx11_tensor_forced_eval test 2019-03-05 11:19:25 -08:00
cxx11_tensor_generator_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_generator.cpp Block evaluation for TensorGeneratorOp 2019-03-05 16:35:21 -08:00
cxx11_tensor_gpu.cu bug #1654: fix compilation with cuda and no c++11 2019-01-09 18:00:05 +01:00
cxx11_tensor_ifft.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_image_patch_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_image_patch.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_index_list.cpp Replace deprecated Eigen::DenseIndex with Eigen::Index in TensorIndexList 2018-09-17 10:58:07 -07:00
cxx11_tensor_inflation_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_inflation.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_intdiv.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_io.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_layout_swap_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_layout_swap.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_lvalue.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_map.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_math.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_mixed_indices.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_morphing_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_morphing.cpp Support reshaping with static shapes and dimensions conversion in tensor broadcasting 2018-09-14 15:25:27 -07:00
cxx11_tensor_move.cpp Added a move constructor and move assignment operator to Tensor and wrote some tests. 2018-02-07 19:10:54 +01:00
cxx11_tensor_notification.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_of_complex.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_of_const_values.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_of_float16_gpu.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_of_strings.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_padding_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_padding.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_patch_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_patch.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_random_gpu.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_random.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_reduction_gpu.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_reduction_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_reduction.cpp Fix cxx11_tensor_{block_access, reduction} tests 2018-10-25 11:31:29 -07:00
cxx11_tensor_ref.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_reverse_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_reverse.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_roundings.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_scan_gpu.cu applying EIGEN_DECLARE_TEST to *gpu* tests 2018-07-17 14:16:48 -04:00
cxx11_tensor_scan.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_shuffling_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_shuffling.cpp Avoid warning "suggest braces around initialization of subobject". 2018-09-20 17:03:42 +02:00
cxx11_tensor_simple.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_striding_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_striding.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_sugar.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_symmetry.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_thread_pool.cpp Merged in ezhulenev/eigen-01 (pull request PR-514) 2018-09-28 18:37:54 +00:00
cxx11_tensor_trace.cpp fixing compilation error for cxx11_tensor_trace.cpp error on Microsoft Visual Studio. 2018-08-02 14:30:48 +01:00
cxx11_tensor_uint128.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_volume_patch_sycl.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
cxx11_tensor_volume_patch.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
dgmres.cpp Fix numerous shadow-warnings for GCC<=4.8 2018-08-28 18:32:39 +02:00
EulerAngles.cpp Avoid I as an identifier, since it may clash with the C-header complex.h 2019-01-25 14:54:39 +01:00
FFT.cpp
FFTW.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
forward_adolc.cpp Fix numerous shadow-warnings for GCC<=4.8 2018-08-28 18:32:39 +02:00
gmres.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
kronecker_product.cpp Made the kronecker_product test compile again 2018-08-14 14:08:36 -07:00
levenberg_marquardt.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
matrix_exponential.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
matrix_function.cpp Fix some shadow warnings 2018-08-25 09:06:08 +02:00
matrix_functions.h Silenced several double-promotion warnings 2016-05-22 18:17:04 +02:00
matrix_power.cpp Fixed most conversion warnings in MatrixFunctions module 2018-11-20 16:23:28 +01:00
matrix_square_root.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
minres.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
mpreal_support.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
NonLinearOptimization.cpp relax number of iterations checks to avoid false negatives 2018-10-15 10:23:32 +02:00
NumericalDiff.cpp Fix numerous shadow-warnings for GCC<=4.8 2018-08-28 18:32:39 +02:00
openglsupport.cpp Fix some shadow warnings 2018-08-25 09:06:08 +02:00
polynomialsolver.cpp Various fixes in polynomial solver and its unit tests: 2018-12-09 22:54:39 +01:00
polynomialutils.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
sparse_extra.cpp Make sparse_basic includable from sparse_extra, but disable it since sparse_basic(DynamicSparseMatrix) does not compile at all anyways 2018-10-11 10:27:23 +02:00
special_functions.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00
splines.cpp Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }. 2018-07-17 14:46:15 +02:00