24 std::cout <<
"=== SIMD Batch Example ===" << std::endl;
27 std::cout <<
"\n1. Integer batch:" << std::endl;
28 core::simd_batch<int32_t> int_batch;
30 for (int32_t i = 0; i < 100; ++i)
32 int_batch.push(i * i);
35 std::cout <<
" Size: " << int_batch.size() << std::endl;
37 const auto& values = int_batch.values();
38 std::cout <<
" First 5: ";
39 for (
size_t i = 0; i < 5 && i < values.size(); ++i)
41 std::cout << values[i] <<
" ";
43 std::cout << std::endl;
46 std::cout <<
"\n2. Double batch:" << std::endl;
47 core::simd_batch<double> double_batch;
49 for (
int i = 0; i < 50; ++i)
51 double_batch.push(i * 0.1);
53 std::cout <<
" Size: " << double_batch.size() << std::endl;
56 std::cout <<
"\n3. Batch insert performance:" << std::endl;
57 core::simd_batch<int64_t> perf_batch;
59 auto start = std::chrono::high_resolution_clock::now();
60 for (int64_t i = 0; i < 100000; ++i)
64 auto end = std::chrono::high_resolution_clock::now();
65 auto us = std::chrono::duration_cast<std::chrono::microseconds>(end - start).count();
67 std::cout <<
" 100K inserts: " << us <<
" us" << std::endl;
68 std::cout <<
" Final size: " << perf_batch.size() << std::endl;
72 std::cout <<
"\n4. After clear: size=" << perf_batch.size() << std::endl;
74 std::cout <<
"\nDone." << std::endl;