- Add arena allocator for zero-allocation hot paths - Add thread pool for parallel operations - Add mmap utilities for memory-mapped I/O - Implement queue_index with heap-based priority queue - Implement dataset_hash with SIMD support (SHA-NI, ARMv8) - Add runtime SIMD detection for cross-platform correctness - Add comprehensive tests and benchmarks
17 lines
416 B
CMake
17 lines
416 B
CMake
# Common utilities library
|
|
set(COMMON_SOURCES
|
|
src/arena_allocator.cpp
|
|
src/thread_pool.cpp
|
|
src/mmap_utils.cpp
|
|
)
|
|
|
|
add_library(fetchml_common STATIC ${COMMON_SOURCES})
|
|
|
|
target_include_directories(fetchml_common PUBLIC
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include
|
|
)
|
|
|
|
target_compile_features(fetchml_common PUBLIC cxx_std_17)
|
|
|
|
# Link pthread for thread support
|
|
target_link_libraries(fetchml_common PUBLIC pthread)
|