Commit Graph

15 Commits

Author SHA1 Message Date
cd50e0dd11 Added some useful shuffle ops to Float4. 2019-06-21 22:14:18 +09:00
b3cc5c070a Added fused multiple-add method to Float4. 2019-06-19 17:45:04 +09:00
48e015996f Initial implementation of Jakob 2019 spectral upsampling.
It has a slight color cast to it at the moment, I believe due to
incorrect color space conversions, not because of the upsampling
method itself.  So Meng upsampling is still the active method
at the moment.
2019-06-09 19:51:43 +09:00
508cda6021 Better path usage and "extern crate" removal in sub-crates. 2018-12-16 13:14:06 -08:00
5fb349cc49 Second step transitioning to Rust 2018. 2018-12-16 12:07:11 -08:00
8deb1e87bb First step transitioning to Rust 2018. 2018-12-16 12:02:20 -08:00
8b6181d262 Fixed Clippy warnings in float4. 2018-12-15 21:41:16 -08:00
df27f7b829 Moved matrix transpose and inverse code into Float4 crate.
This allows for more optimized implementations, taking advantage
of SIMD intrinsics.
2018-06-24 21:06:32 -07:00
8e791259b3 Sped up Float4::h_sum for platforms with SSE3.
Since this is used heavily during matrix multiplication, gives a
nice little speed boost.
2018-06-24 16:45:21 -07:00
27d1b2286b Switch to stable SIMD intrinsics.
Rust 1.27 stablized a variety of cpu intrinsics, including SIMD
on x86/64 platforms.  This commit moves to using those intrinsics
for the optimized Float4 implementation.  This means Psychopath
now compiles on stable Rust with all optimizations.  Yay!
2018-06-24 15:32:09 -07:00
bbf832a3d8 Fixed compile error in float4 lib, and updated to latest simd crate. 2018-03-04 13:32:31 -08:00
f39589ab72 Small refactor of float4 crate to make it easier to read. 2018-03-04 12:27:35 -08:00
b5f2237676 Reformatted sub-crates with new rustfmt as well. 2017-06-15 22:21:25 -07:00
922e33ec3f Reformat code with latest rustfmt and custom config. 2017-05-14 13:43:51 -07:00
88578b9eae Moved Float4 and Matrix and Vector math into their own sub-crates. 2017-05-12 21:01:54 -07:00