<
typenameSVect,
typenameLock>
63 typenamebvector_type::optmode
64opt_mode = bvector_type::opt_compress,
65 typenamesparse_vector_type::statistics*
st= 0)
68 autorsize = sv.get_bmatrix().rows();
73 for(
unsignedk = 0; k < rsize; ++k)
78 typenamebvector_type::statistics stbv;
81bv->optimize(tb, opt_mode, &stbv);
102 template<
typenameBV>
127 ref_vect.build_nb_digest_and_xor_matrix(sim_model.
matr,
130 typenamebvector_type::size_type nb_count = sim_model.
bv_blocks.count();
132tv.reserve(nb_count);
136 typenamebvector_type::enumerator en(sim_model.
bv_blocks);
137 for(
size_typecol = 0; en.valid(); ++en, ++col)
141[nb, col, &xs_params, &sm_matr, &
ref_vect] (
void*
) {
144xor_scan.sync_nb_vect();
145xor_scan.compute_sim_model(sm_matr, nb, col, xs_params);
148batch.
add(task, 0);
161 template<
typenameSV>
217 unsignedplanes = sv.stored_slices();
218tv.reserve(planes + 1);
222 for(
unsigned i= 0;
i< planes; ++
i)
224 typenameSV::bvector_type_const_ptr bv = sv.get_slice(
i);
234[bv_idx, &sv_layout] (
void*
) {
241tdescr.
init(task, (
void*)&tdescr);
265[&sv_layout] (
void*
) {
272tdescr.
init(task_final, (
void*)&tdescr);
#define BM_DECLARE_TEMP_BLOCK(x)
Serialization for sparse_vector<>
List of reference bit-vectors with their true index associations.
static size_type not_found() noexcept
not-found value for find methods
size_type find_bv(const bvector_type *bv) const noexcept
Find vector index by the pointer.
Parallel plan builder for the XOR filter scanner.
bvector_type::allocator_type allocator_type
bm::bv_ref_vector< BV > bv_ref_vector_type
void build_plan(task_batch &batch, bm::xor_sim_model< BV > &sim_model, const bv_ref_vector_type &ref_vect, const bm::xor_sim_params &xs_params)
Construct task batch for parallel execution.
Simple scoped lock guard.
Builder class to prepare a batch of tasks for parallel optimization of a sparse vector.
bvector_type::allocator_type allocator_type
sparse_vector_type::statistics sv_statistics_type
sparse_vector_type::bvector_type bvector_type
bvector_type::optmode optmode_type
static void build_plan(task_batch &batch, sparse_vector_type &sv, typename bvector_type::optmode opt_mode=bvector_type::opt_compress, typename sparse_vector_type::statistics *st=0)
Build paralell optimization batch (of tasks) for sparse vector.
Parallel plan builder for succinct sparse vector serialization.
sv_serialization_plan_builder()
static void * task_run(void *argp)
Task execution Entry Point.
bm::xor_sim_model< bvector_type > xor_sim_model_type
static void * task_run_final(void *argp)
void build_plan(task_batch &batch, sparse_vector_serial_layout< SV > &sv_layout, const sparse_vector_type &sv)
void set_sim_model(const xor_sim_model_type *sim_model) noexcept
bm::bv_ref_vector< bvector_type > bv_ref_vector_type
bvector_type::allocator_type allocator_type
SV::bvector_type bvector_type
serialization_params s_params_
void set_xor_ref(const bv_ref_vector_type *bv_ref_ptr) noexcept
void set_bookmarks(bool enable, unsigned bm_interval=256) noexcept
Basic implementation for collection of tasks for parallel execution.
task_vector_type & get_task_vector() noexcept
Get access to internal task vector.
void add(task_function_t f, void *argptr)
std::vector< bm::task_descr > task_vector_type
XOR scanner to search for complement-similarities in collections of bit-vectors.
void set_ref_vector(const bv_ref_vector_type *ref_vect) noexcept
std::function< int(void *)> task_function_t
Typedef for a call-back functional for lambda capture.
const unsigned set_compression_default
Default compression level.
static SLJIT_INLINE sljit_ins st(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
static SLJIT_INLINE sljit_ins lg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
std::vector< bm::id64_t > ref_vect
parent_type::task_vector_type task_vector_type
bm::task_batch< allocator_type > parent_type
bm::task_batch< allocator_type > parent_type
parent_type::task_vector_type task_vector_type
layout class for serialization buffer structure
void set_plane(unsigned i, unsigned char *ptr, size_t buf_size) noexcept
Set plane output pointer and size.
unsigned compression_level_
const xor_sim_model_type * sim_model_ptr_
unsigned sb_range_
Desired bookmarks interval.
const bv_ref_vector_type * bv_ref_ptr_
bool sb_bookmarks_
Bookmarks flag.
bm::task_batch< allocator_type > parent_type
serialization_params s_params
parent_type::task_vector_type task_vector_type
BitMagic task with a captured function.
@ barrier_ok
barrier waits all prev.tasks done without error
void init(task_function_t f, void *argptr) noexcept
matrix_chain_type matr
model matrix
bvector_type bv_blocks
blocks digest
Parameters for XOR similarity search.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4