69 Commits
Author SHA1 Message Date
Kirill Kuzminykh 3300f08eed - Updated f32 benchmarks for wasm32 arch. 2024-07-13 22:52:51 +03:00
Kirill Kuzminykh c84efe0e57 Updated benchmark results for wasm32 arch. 2024-07-06 20:13:38 +03:00
Kirill Kuzminykh 57c547c15f Added placeholders for F32 based pixel types into benchmarks for arm64 and wasm32 archs. 2024-07-06 11:49:24 +03:00
Kirill Kuzminykh 564a28ac9d Updated benchmark results for x86_64 arch. 2024-07-05 23:05:00 +03:00
Kirill Kuzminykh f1bf0bb51a Added support for optimization with help of SSE4.1 and AVX2 to multiple and divide by alpha channel for the F32x4 pixel type (#30). 2024-07-01 23:43:59 +03:00
Kirill Kuzminykh 84d6c17b98 Added support for optimization with help of SSE4.1 and AVX2 for the F32x4 pixel type (#30). 2024-06-23 21:57:54 +03:00
Kirill Kuzminykh 15fa98863b Added support for optimization with help of SSE4.1 and AVX2 for the F32 pixel type. 2024-06-19 00:49:57 +03:00
Kirill Kuzminykh 5e450afe04 Added basic support for the new pixel type PixelType::F32x4 (#30). 2024-06-18 23:20:13 +03:00
Kirill Kuzminykh 91c28d4539 Added basic support for the new pixel type PixelType::F32x3 (#30). 2024-06-18 02:10:49 +03:00
Kirill Kuzminykh ad2610b91e Added support for the new pixel type PixelType::F32x2 with optimizations for SSE4.1 and AVX2 (#30). 2024-06-18 01:16:32 +03:00
Kirill Kuzminykh bd5a82ab4b Updated benchmark results. 2024-05-05 16:47:16 +03:00
Kirill Kuzminykh 2bc54792f2 - Added Gaussian filter for convolution algorithm.
- Added field `algorithm` into `ResizeOptions`.
- Argument `resize_alg` was removed from `Resizer::new()` method, use `options` argument of methods to resize instead.
2024-05-02 21:41:41 +03:00
Kirill Kuzminykh d31c9b7a49 Updated results of Aarch64 benchmarks. 2024-04-19 08:15:00 +03:00
Kirill Kuzminykh 4651d524bd Updated environment parameters for benchmarks reports. 2024-04-19 01:02:52 +03:00
Kirill Kuzminykh d90d235fb2 A lot of changes to replace ImageView and ImageViewMut structures on traits with the same names. 2024-04-10 23:38:46 +03:00
Kirill Kuzminykh c9167d61a4 Fixed mistakes in texts. 2024-02-05 22:55:02 +03:00
Kirill Kuzminykh 25ea0da382 Disabled using libvips under Windows. 2024-02-05 00:14:56 +03:00
Kirill Kuzminykh ff5b72c239 - Fixed code to write benchmark results for Wasm32.
- Updated results of benchmarks for Wasm32 architecture.
2024-01-08 22:27:23 +03:00
Kirill Kuzminykh b963d61d2d Updated results of benchmarks for x64_86 architecture. 2023-12-30 14:54:24 +03:00
Kirill Kuzminykh c195c4ff43 - Significantly improved (4.5 times on x86_64) speed of vertical convolution pass implemented
in native Rust for `U8`, `U8x2`, `U8x3` and `U8x4` images.
- Changed order of convolution passes for `U8`, `U8x2`, `U8x3` and `U8x4` images.
  Now the vertical pass is the first and the horizontal pass is the second.
- **BREAKING**: Changed internal data type for `U8x4` structure. Not it is `[u8; 4]` instead of `u32`.
2023-12-14 22:45:26 +03:00
Kirill Kuzminykh 63369009ec Updated results of benchmarks for x64_86 architecture. 2023-12-06 08:54:33 +03:00
Kirill Kuzminykh 63f6b517ab Added feature only_u8x4 that can be used to experiment with the crate's code. 2023-12-05 21:55:45 +03:00
Kirill Kuzminykh cd7832850d Updated results of benchmarks for wasm32 architecture. 2023-11-29 21:56:04 +03:00
Kirill Kuzminykh 95dd9bc59b - Updated results of benchmarks for x64_86 architecture.
- Fixed several errors in the documentation.
2023-11-23 21:11:47 +03:00
Kirill Kuzminykh 2ad679e044 - Added benchmarks for libvips.
- Added Tera templates to build benchmark reports.
2023-11-11 14:50:09 +03:00
Kirill Kuzminykh 15e509be37 Updated benchmark results for x86_64 and arm64. 2023-04-28 00:20:09 +03:00
Kirill Kuzminykh 0a47adc013 Revert few changes 2023-02-28 00:16:35 +03:00
Kirill Kuzminykh 1dd629eb81 Revert few changes 2023-02-28 00:16:07 +03:00
Kirill Kuzminykh 76a87bc305 - CpuExtension::Wasm32 renamed into CpuExtension::Simd128.
- Optimized MulDiv implementation for Wasm32 SIMD128.
2023-01-29 00:43:25 +04:00
Kirill Kuzminykh 64f59565d5 Changed comments in .md files on version that supports by GitHub 2023-01-22 00:21:12 +04:00
Kirill Kuzminykh 9df6cde213 Changed comments in .md files on version that supports by GitHub 2023-01-22 00:07:11 +04:00
Kirill Kuzminykh 661777b0b4 - Benchmark framework glassbench replaced by criterion.
- Added report with results of benchmarks for `wasm32-wasi` target.
2023-01-21 22:06:51 +04:00
Kirill Kuzminykh f5c7c7937c Added implementation From trait to convert DynamicImageViewMut into DynamicImageView. 2022-12-11 19:09:19 +04:00
Kirill Kuzminykh a706ebb68c Improved speed of MulDiv implementation for U8x4 images. 2022-11-30 20:56:09 +04:00
Kirill Kuzminykh 9320b4b1c4 Added support of optimisation with helps of NEON SIMD for convolution of U8x2 images. 2022-11-12 22:49:24 +04:00
Kirill Kuzminykh e1afd34c9c Added optimisation for processing U8x2 images by MulDiv with helps of NEON SIMD instructions. 2022-11-11 23:11:38 +04:00
Kirill Kuzminykh d65ddab704 Added support of optimisation with helps of NEON SIMD for convolution of U16x4 images. 2022-11-02 23:43:22 +04:00
Kirill Kuzminykh 7b5a1238ca Static variables SRGB_MAPPER and GAMMA22_MAPPER replaced by functions to create these mappers. 2022-10-28 20:59:41 +04:00
Kirill Kuzminykh ff2837d704 - Added support of optimisation with help of NEON SIMD for convolution of U8x4 images.
- Added optimisation for processing `U8x4` images by `MulDiv` with helps of `NEON SIMD` instructions.
2022-10-19 00:25:14 +04:00
Kirill Kuzminykh 29f9f1f508 Added full support of optimisation with help of SSE4.1 for convolution of U8x3 images. 2022-10-09 14:41:39 +04:00
Kirill Kuzminykh e3b64bf7b1 - Trait Pixel renamed into PixelExt and changed.
- All pixel types (`U8`, `U8x2`, ...) replaced by type aliases for new generic structure `Pixel`. Use method `new()` to create instance of one pixel.
- Added module `color` for working with colorspace and gamma.
2022-10-07 20:39:21 +04:00
Kirill Kuzminykh 5b89090d11 - Fixed benchmarks for resizing images with alpha channel using the resizer crate.
- Removed `image` crate from benchmarks for resizing images with alpha.
- Added method `Image::copy(&self) -> Image<'static>`.
2022-06-28 23:50:14 +03:00
Kirill Kuzminykh 891312a4bb Added support of new type of pixels PixelType::U16x4. 2022-06-26 19:16:22 +03:00
Kirill Kuzminykh 20d0578306 Added support of new type of pixels PixelType::U16x2 2022-06-22 21:52:47 +03:00
Kirill Kuzminykh d719e2ab75 - Extracted helping code for testing into separate crate.
- Optimized convolution of U16 images with help of AVX2.
2022-05-31 22:58:10 +03:00
Kirill Kuzminykh 5954725342 Added support of new type of pixels PixelType::U16. 2022-05-22 22:51:05 +03:00
Kirill Kuzminykh 1be895f332 - Added optimisation for processing `U8x2 images by MulDiv with helps of SSE4.1 and AVX2` instructions.
- Added optimisation for convolution of ``U16x2`` images with helps of ``AVX2`` instructions.
2022-05-13 00:03:40 +03:00
Kirill Kuzminykh 0a19acf252 - Added support of new type of pixels `PixelType::U8x2`.
- Added into ``MulDiv`` support of images with pixel type ``U8x2``.
2022-05-01 23:09:25 +03:00
Kirill Kuzminykh 33d51a36bf Excluded "nearest" algorithm for benchmarking of "resizer" crate. 2022-04-22 19:44:38 +03:00
Kirill Kuzminykh f66efe5cfa Prepare to release. 2022-03-23 22:36:24 +03:00