Граф коммитов

51 Коммитов

Автор SHA1 Сообщение Дата
Alex Guteniev 23dc7e3f95
Vectorize `basic_string::find_last_of` (#4934)
Co-authored-by: Stephan T. Lavavej <stl@microsoft.com>
Co-authored-by: Casey Carter <cacarter@microsoft.com>
2024-10-11 20:55:43 -07:00
Alex Guteniev caba83c09e
Use AVX/AVX2 masks in `minmax_element` and `minmax` vectorization (#4917)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-10-11 20:51:52 -07:00
Alex Guteniev ab555adeb2
Vectorize `bitset` from string construction (#4839)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-10-11 20:47:12 -07:00
Alex Guteniev e93126188e
Vectorize `std::search` of 1 and 2 bytes elements with `pcmpestri` (#4745)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-09-09 12:29:36 -07:00
Stephan T. Lavavej c7c5ca7d6a
Remove google/benchmark workaround (#4928) 2024-09-03 22:02:21 -07:00
blackninja9939 a36ece0b71
Implement P3107R5 optimized `<print>` (#4821)
Co-authored-by: Casey Carter <cacarter@microsoft.com>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-09-03 21:40:31 -07:00
Alex Guteniev 77b31f774c
Vectorize `basic_string::find_first_of` (#4744)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
Co-authored-by: Casey Carter <cacarter@microsoft.com>
2024-09-03 21:36:48 -07:00
YexuanXiao d1f63f34fc
Optimize equality comparison of two empty `string_view`s (#4904)
Co-authored-by: Casey Carter <cacarter@microsoft.com>
Co-authored-by: Stephan T. Lavavej <stl@microsoft.com>
2024-08-25 12:02:25 -07:00
Stephan T. Lavavej 6c94f4ebb4
Build with the conformant preprocessor, improve validator (#4886) 2024-08-12 09:41:22 -07:00
Igor Zhukov eaf7b316e4
Update google-benchmark to 1.8.5. (#4851) 2024-08-06 11:26:35 -07:00
Alex Guteniev afb1fc1777
Fix `<bitset>` benchmark correctness (#4817)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-07-11 15:18:12 -07:00
Stephan T. Lavavej 3962da0344
Toolset update: VS 2022 17.11 Preview 3 (#4824) 2024-07-11 14:55:18 -07:00
Alex Guteniev e3ed20614e
Improve `search`/`find_end` perf by dropping `memcmp` (#4654)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-06-17 21:51:00 -07:00
Igor Zhukov de5a7b514a
google-benchmark 1.8.4 (#4694) 2024-05-29 14:30:29 -07:00
Alex Guteniev a35859ce17
Use `BENCHMARK` macro for template benchmarks (#4662) 2024-05-20 17:01:17 -07:00
Alex Guteniev ccf9e1f020
Help the compiler vectorize `ranges::iota` (#4647)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-05-20 16:02:05 -07:00
Alex Guteniev 290a95bc6b
Help the compiler vectorize `std::iota` (#4627)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-04-26 17:10:18 -07:00
Alex Guteniev 23156f142e
`swap_ranges` benchmark (#4589)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-04-18 18:58:48 -07:00
Alex Guteniev 1b06c5276b
Vectorize `find_first_of` for 4 and 8 byte elements (#4587)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-04-18 18:53:25 -07:00
Alex Guteniev 886ef10aaf
`vector_algorithms.cpp`: `find`, `find_last`, `count`: make AVX2 path avoid SSE path and (for some types) fallback (#4570)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-04-12 11:24:33 -07:00
Alex Guteniev 9839187345
Vectorize `lexicographical_compare`! (#4552)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-04-12 11:20:40 -07:00
Alex Guteniev 56ad8253a8
Optimize `find_first_of` for one element needle (#4563)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-04-09 15:45:18 -07:00
Alex Guteniev bed267366d
vectorize `replace` (#4554)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-04-09 15:08:21 -07:00
Alex Guteniev ffd735ac1a
`mismatch` vectorization (#4495)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-03-28 09:35:20 -07:00
Alex Guteniev 9d761bd513
Vectorize `find_first_of` for 8 and 16 bit elements with SSE4.2 `pcmpestri` (#4466)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-03-21 14:48:51 -07:00
Alex Guteniev 1e7d7f8d60
Auto vectorize `replace_copy`, `replace_copy_if` (#4431)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-03-21 14:44:33 -07:00
Alex Guteniev 9a4cda8cab
Remove attempt on unsized find vectorization... (#4486)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-03-19 15:12:54 -07:00
Stephan T. Lavavej 613cdb1d43
Expand old test coverage (#4443) 2024-03-07 21:22:09 -08:00
Alex Guteniev 8b081e26ba
AVX2 vectorization for very large bitsets (#4422)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-02-29 13:58:48 -08:00
Alex Guteniev c53ac59aba
Dedicated `ranges::minmax` vectorization that does not unnecessarily track element pointer (#4384)
Co-authored-by: A. Jiang <de34@live.cn>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-02-16 13:11:33 -08:00
Alex Guteniev 2f6e7f8cb9
Add `find` / `count` benchmark (#4387)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-02-16 12:35:31 -08:00
Stephan T. Lavavej 64e410c8d9
Toolset update: VS 2022 17.10 Preview 1 (#4392) 2024-02-16 12:32:41 -08:00
Alex Guteniev 192a84008a
vectorize `min/max_element` using SSE4.1 for floats (#3928)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2024-02-06 02:57:05 -08:00
Stephan T. Lavavej 55b8971d83
Enable warnings for the benchmarks, and fix them (#4356) 2024-02-01 15:36:59 -08:00
Stephan T. Lavavej 4c110bf9b4
Various cleanups (#4230) 2023-12-07 08:41:33 -08:00
achabense 61cc2a5c94
Avoid unconditional `make_heap` for `priority_queue::push_range` (#4025)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2023-09-21 12:46:52 -07:00
Michael Schellenberger Costa f6580c2ece
[vector.bool] Optimize copy / move algorithms (#3353)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2023-09-21 11:55:55 -07:00
Stephan T. Lavavej 8f67ece4a6
Toolset update: VS 2022 17.8 Preview 2 (#4028) 2023-09-14 19:53:05 -07:00
Stephan T. Lavavej d647797d54
google-benchmark 1.8.3 (#4021) 2023-09-13 15:20:38 -07:00
Stephan T. Lavavej 036ea5953b
Various cleanups (#3935) 2023-08-10 17:44:26 -07:00
achabense c1c969161f
Follow-up enhancements for `<filesystem>` (#3881) 2023-07-20 16:44:04 -07:00
achabense 750ec42773
Enhancements for `<bitset>` (#3838)
Co-authored-by: A. Jiang <de34@live.cn>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2023-07-13 19:37:03 -07:00
achabense f6401b10aa
enhancements for `<filesystem>` (#3850)
Co-authored-by: A. Jiang <de34@live.cn>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2023-07-13 19:05:35 -07:00
Stephan T. Lavavej a9ecd92ac9
Toolset update: VS 2022 17.6 Preview 3 (#3651) 2023-04-13 19:43:50 -07:00
Stephan T. Lavavej f51e945cfc
Toolset update: VS 2022 17.6 Preview 1 (#3490) 2023-02-22 17:14:59 -08:00
Stephan T. Lavavej 67d89ce691
Toolset update: VS 2022 17.5 Preview 2 (#3288) 2022-12-15 13:34:36 -08:00
Matt Stephanson e9c3b556a9
`<locale>`: Double-checked locking for locale::classic (#3048)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-10-26 19:23:54 -07:00
Rose e07c062887
Update google-benchmark to 1.7.0 (#3151)
Co-authored-by: Nicole Mazzuca <mazzucan@outlook.com>
2022-10-24 14:49:36 -07:00
Matt Stephanson 8334fcabaa
`<random>`: Implement Lemire's fast integer generation (#3012)
Co-authored-by: Nicole Mazzuca <mazzucan@outlook.com>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-09-22 14:15:59 -07:00
Igor Zhukov 0f47cb72cf
Include <cmeow> instead of <meow.h>, Part 2 (#2852)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-07-20 17:15:26 -07:00