Christoph Hertzberg
2ee306e44a
Temporary workaround for bug #1237 . The snippet (expectedly) failed with enabled assertions.
2016-05-26 16:16:41 +02:00
Gael Guennebaud
37197b602b
Remove debuging code.
2016-05-26 11:53:10 +02:00
Gael Guennebaud
27f0434233
Introduce internal's UIntPtr and IntPtr types for pointer to integer conversions.
...
This fixes "conversion from pointer to same-sized integral type" warnings by ICC.
Ideally, we would use the std::[u]intptr_t types all the time, but since they are C99/C++11 only,
let's be safe.
2016-05-26 10:52:12 +02:00
Gael Guennebaud
40e4637d79
Turn off ICC's conversion warning in is_convertible implementation
2016-05-26 10:48:43 +02:00
Gael Guennebaud
cc1ab64f29
Add missing inclusion of mmintrin.h
2016-05-26 09:51:50 +02:00
Benoit Steiner
2d7ed54ba2
Made the static storage class qualifier come first.
2016-05-25 22:16:15 -07:00
Benoit Steiner
e1fca8866e
Deleted unnecessary explicit qualifiers.
2016-05-25 22:15:26 -07:00
Benoit Steiner
9b0aaf5113
Don't mark inline functions as static since it confuses the ICC compiler
2016-05-25 22:10:11 -07:00
Benoit Steiner
3585ff585e
Silenced a compilation warning
2016-05-25 22:09:19 -07:00
Benoit Steiner
037a463fd5
Marked unused variables as such
2016-05-25 22:07:48 -07:00
Benoit Steiner
efeb89dcdb
Specify the rounding mode in the correct location
2016-05-25 17:53:24 -07:00
Benoit Steiner
457204cb83
Updated the README file for the tensor benchmarks
2016-05-25 16:13:41 -07:00
Benoit Steiner
0322c66a3f
Explicitly specify the rounding mode when converting floats to fp16
2016-05-25 15:56:15 -07:00
Benoit Steiner
3ac4045272
Made the IndexPair code compile in non cxx11 mode
2016-05-25 15:15:12 -07:00
Benoit Steiner
66556d0e05
Made the index pair list code more portable accross various compilers
2016-05-25 14:34:27 -07:00
Benoit Steiner
034aa3b2c0
Improved the performance of tensor padding
2016-05-25 11:43:08 -07:00
Benoit Steiner
58026905ae
Added support for statically known lists of pairs of indices
2016-05-25 11:04:14 -07:00
Benoit Steiner
ed783872ab
Disable the use of MMX instructions on x86_64 since too many compilers only support them in 32bit mode
2016-05-25 08:27:26 -07:00
Benoit Steiner
bcfff64f9e
Use numext:: instead of std:: functions.
2016-05-25 08:08:21 -07:00
Gael Guennebaud
f57260a997
Fix typo in dont_over_optimize
2016-05-25 11:17:53 +02:00
Gael Guennebaud
2cd32be70b
Fix warning.
2016-05-25 11:15:54 +02:00
Gael Guennebaud
bbf9109e25
Fix compilation with ICC.
2016-05-25 10:00:55 +02:00
Gael Guennebaud
2a1bff67fd
Fix static/inline order.
2016-05-25 10:00:11 +02:00
Benoit Steiner
0835667329
There is no need to make the fp16 full reduction kernel a static function.
2016-05-24 23:11:56 -07:00
Benoit Steiner
b5d6b52a4d
Fixed compilation warning
2016-05-24 23:10:57 -07:00
Benoit Steiner
d041a528da
Cleaned up the fp16 code a little more
2016-05-24 22:43:26 -07:00
Benoit Steiner
cb26784d07
Pulled latest updates from trunk
2016-05-24 18:51:39 -07:00
Benoit Steiner
ff4a289572
Cleaned up the fp16 code
2016-05-24 18:50:09 -07:00
Gael Guennebaud
3f715e1701
update doc wrt to unaligned vectorization
2016-05-24 22:34:59 +02:00
Gael Guennebaud
9216abe28d
Document EIGEN_UNALIGNED_VECTORIZE.
2016-05-24 22:14:34 +02:00
Gael Guennebaud
0fd953c217
Workaround clang/llvm bug in code generation.
2016-05-24 21:55:46 +02:00
Gael Guennebaud
e68e165a23
bug #256 : enable vectorization with unaligned loads/stores.
...
This concerns all architectures and all sizes.
This new behavior can be disabled by defining EIGEN_UNALIGNED_VECTORIZE=0
2016-05-24 21:54:03 +02:00
Gael Guennebaud
78390e4189
Block<> should not disable vectorization based on inner-size, this is the responsibilty of the assignment logic.
2016-05-24 17:14:01 +02:00
Gael Guennebaud
64bb7576eb
Clean propagation of Dest/Src alignments.
2016-05-24 17:12:12 +02:00
Benoit Jacob
40a16282c7
Remove now-unused protate PacketMath func
2016-05-24 11:01:18 -04:00
Benoit Jacob
6136f4fdd4
Remove the rotating kernel. It was only useful on some ARM CPUs (Qualcomm Krait) that are not as ubiquitous today as they were when I introduced it.
2016-05-24 10:00:32 -04:00
Benoit Steiner
e617711306
Don't attempt to use MMX instructions with visualstudio since they're only partially supported.
2016-05-24 06:43:58 -07:00
Benoit Steiner
334e76537f
Worked around missing clang intrinsic
2016-05-24 00:29:28 -07:00
Benoit Steiner
b517ab349b
Use the generic ploadquad intrinsics since it does the job
2016-05-24 00:11:17 -07:00
Benoit Steiner
646872cb3b
Worked around missing clang intrinsics
2016-05-24 00:07:08 -07:00
Benoit Steiner
3dfc391a61
Added missing EIGEN_DEVICE_FUNC qualifier
2016-05-23 20:56:59 -07:00
Benoit Steiner
3d0741f027
Include mmintrin.h to make it possible to use mmx instructions when needed. For example, this will enable the definition of a half packet for the Packet4f type.
2016-05-23 20:43:48 -07:00
Benoit Steiner
33a94f5dc7
Use the Index type instead of integers to specify the strides in pgather/pscatter
2016-05-23 20:37:30 -07:00
Benoit Steiner
6bc684ab6a
Added missing alignment in the fp16 packet traits
2016-05-23 20:32:30 -07:00
Benoit Steiner
283e33dea4
ptranspose is not a template.
2016-05-23 19:55:55 -07:00
Benoit Steiner
a5a3ba2b80
Avoid unnecessary float to double conversions
2016-05-23 17:16:09 -07:00
Benoit Steiner
5ba0ebe7c9
Avoid unnecessary float to double conversion.
2016-05-23 17:14:31 -07:00
Benoit Steiner
7d980d74e5
Started to vectorize the processing of 16bit floats on CPU.
2016-05-23 15:21:40 -07:00
Benoit Steiner
5d51a7f12c
Don't optimize the processing of the last rows of a matrix matrix product in cases that violate the assumptions made by the optimized code path.
2016-05-23 15:13:16 -07:00
Benoit Steiner
7aa5bc9558
Fixed a typo in the array.cpp test
2016-05-23 14:39:51 -07:00