trvon
|
c1d6a992fc
|
feat(search): implement parallel post-processing (PBI-001 Phase 3)
Parallel Post-Processor with Threshold-Based Activation
--------------------------------------------------------
- New ParallelPostProcessor class (120 lines header, 247 lines impl)
- Uses std::async for concurrent facet/highlight/snippet generation
- Threshold = 100 results (sequential below, parallel at/above)
- Facets now operate on filtered results (fixed data flow bug)
Performance Results (100 iterations)
------------------------------------
- 100 results: 0.06ms (~1.66M ops/sec) - sequential path
- 500 results: 0.23ms (~2.21M ops/sec) - parallel path
- 1000 results: 0.43ms (~2.32M ops/sec) - parallel path
- Speedup: ~3.4x faster at 1000 results
Test Coverage
-------------
- 5 unit tests (threshold behavior, facets, snippets, edge cases)
- All tests passing (5/5 ✅)
- 3 benchmarks added to search_benchmarks.cpp
Files Changed
-------------
- include/yams/search/parallel_post_processor.hpp (NEW)
- src/search/parallel_post_processor.cpp (NEW)
- src/search/search_executor.cpp (integrated)
- tests/unit/search/search_executor_test.cpp (+6 tests)
- tests/benchmarks/search_benchmarks.cpp (+3 benchmarks)
- CHANGELOG.md (documented with measured results)
- docs/delivery/001/prd.md (Phase 3 → ✅ COMPLETED)
Technical Details
-----------------
- Parallel path: filtering → parallel(facets + highlights) → wait
- Sequential path: identical logic, no std::async overhead
- Correctness preserved: identical output to previous sequential impl
- Build: 46/46 targets compiling successfully
|
2025-11-09 08:04:15 -05:00 |
|
trvon
|
bbf23bb190
|
test migrations to catch2, service manager + socket server refactor for better startup performance. search bug fixes
|
2025-10-29 23:08:09 -04:00 |
|
trvon
|
6971daf41c
|
staging docs
|
2025-10-23 23:01:29 -04:00 |
|
trvon
|
692dabe16e
|
commititing readme and vscode settings fixes
|
2025-10-20 16:14:57 -04:00 |
|
trvon
|
b6ca31dfb0
|
adding symbol extraction work, simplying build with ./setup.sh, updated plugin tests with new meson shard and other goodies
|
2025-10-20 16:11:31 -04:00 |
|
trvon
|
4a894911da
|
testing fixings for ubuntu and grep / search improvements
|
2025-10-12 08:03:58 -04:00 |
|
trvon
|
5bb124a3c1
|
v0.7.3
|
2025-10-08 17:02:37 -04:00 |
|
Trevon
|
43699f99a3
|
v0.7.0-prerelease
|
2025-09-20 22:55:34 -04:00 |
|
Trevon
|
31e1aa5b56
|
v0.6.14
|
2025-09-12 23:37:14 -04:00 |
|
Trevon
|
7c92f09d21
|
v0.5.7
|
2025-08-29 06:12:50 -04:00 |
|