From e54525d9feaacacf12bc0be599a1eb1dcd8ccedd Mon Sep 17 00:00:00 2001 From: docs-sched-rebuild Date: Thu, 12 Oct 2023 08:29:48 +0000 Subject: [PATCH] Pushing changes to GitHub Pages. --- master/README.html | 20 +++++++ master/_sources/README.md.txt | 50 +++++++++--------- ..._listing_file_merlin_hashtable.cuh.rst.txt | 33 ++++++++++++ .../api/classnv_1_1merlin_1_1HashTable.html | 16 ++++++ ...ram_listing_file_merlin_hashtable.cuh.html | 33 ++++++++++++ master/genindex.html | 2 + master/objects.inv | Bin 4739 -> 4800 bytes master/searchindex.js | 2 +- ..._listing_file_merlin_hashtable.cuh.rst.txt | 33 ++++++++++++ .../api/classnv_1_1merlin_1_1HashTable.html | 16 ++++++ ...ram_listing_file_merlin_hashtable.cuh.html | 33 ++++++++++++ v0.1.0-beta.2/genindex.html | 2 + v0.1.0-beta.2/objects.inv | Bin 4617 -> 4679 bytes v0.1.0-beta.2/searchindex.js | 2 +- ..._listing_file_merlin_hashtable.cuh.rst.txt | 33 ++++++++++++ .../api/classnv_1_1merlin_1_1HashTable.html | 16 ++++++ ...ram_listing_file_merlin_hashtable.cuh.html | 33 ++++++++++++ v0.1.0-beta.3/genindex.html | 2 + v0.1.0-beta.3/objects.inv | Bin 4652 -> 4714 bytes v0.1.0-beta.3/searchindex.js | 2 +- ..._listing_file_merlin_hashtable.cuh.rst.txt | 33 ++++++++++++ .../api/classnv_1_1merlin_1_1HashTable.html | 16 ++++++ ...ram_listing_file_merlin_hashtable.cuh.html | 33 ++++++++++++ v0.1.0-beta.4/genindex.html | 2 + v0.1.0-beta.4/objects.inv | Bin 4652 -> 4714 bytes v0.1.0-beta.4/searchindex.js | 2 +- ..._listing_file_merlin_hashtable.cuh.rst.txt | 33 ++++++++++++ .../api/classnv_1_1merlin_1_1HashTable.html | 16 ++++++ ...ram_listing_file_merlin_hashtable.cuh.html | 33 ++++++++++++ v0.1.0-beta.5/genindex.html | 2 + v0.1.0-beta.5/objects.inv | Bin 4690 -> 4752 bytes v0.1.0-beta.5/searchindex.js | 2 +- ..._listing_file_merlin_hashtable.cuh.rst.txt | 33 ++++++++++++ .../api/classnv_1_1merlin_1_1HashTable.html | 16 ++++++ ...ram_listing_file_merlin_hashtable.cuh.html | 33 ++++++++++++ v0.1.0-beta.6/genindex.html | 2 + v0.1.0-beta.6/objects.inv | Bin 4690 -> 4752 bytes v0.1.0-beta.6/searchindex.js | 2 +- ..._listing_file_merlin_hashtable.cuh.rst.txt | 33 ++++++++++++ .../api/classnv_1_1merlin_1_1HashTable.html | 16 ++++++ ...ram_listing_file_merlin_hashtable.cuh.html | 33 ++++++++++++ v0.1.0-beta.7/genindex.html | 2 + v0.1.0-beta.7/objects.inv | Bin 4739 -> 4800 bytes v0.1.0-beta.7/searchindex.js | 2 +- 44 files changed, 640 insertions(+), 32 deletions(-) diff --git a/master/README.html b/master/README.html index 68ae16f13..6431edfe2 100644 --- a/master/README.html +++ b/master/README.html @@ -468,20 +468,24 @@

On pure HBM mode:

λ

export_batch

export_batch_if

+

contains

0.50

2.087

12.258

+

3.121

0.75

2.045

12.447

+

3.094

1.00

1.950

2.657

+

3.096

@@ -535,20 +539,24 @@

On pure HBM mode:

λ

export_batch

export_batch_if

+

contains

0.50

0.692

10.784

+

3.100

0.75

0.569

10.240

+

3.075

1.00

0.551

0.765

+

3.096

@@ -602,20 +610,24 @@

On pure HBM mode:

λ

export_batch

export_batch_if

+

contains

0.50

0.316

8.199

+

3.239

0.75

0.296

8.549

+

3.198

1.00

0.288

0.395

+

3.225

@@ -668,20 +680,24 @@

On HBM+HMEM hybrid mode:

λ

export_batch

export_batch_if

+

contains

0.50

0.318

8.086

+

3.122

0.75

0.294

5.549

+

3.111

1.00

0.287

0.393

+

3.075

@@ -731,20 +747,24 @@

On HBM+HMEM hybrid mode:

λ

export_batch

export_batch_if

+

contains

0.50

0.316

8.181

+

3.073

0.75

0.293

8.950

+

3.052

1.00

0.292

0.394

+

3.026

diff --git a/master/_sources/README.md.txt b/master/_sources/README.md.txt index 6094834a0..798819e34 100644 --- a/master/_sources/README.md.txt +++ b/master/_sources/README.md.txt @@ -228,11 +228,11 @@ For Benchmark: | 0.75 | 1.045 | 2.452 | 1.335 | 1.807 | 3.374 | 1.309 | 1.013 | | 1.00 | 0.655 | 2.481 | 0.612 | 1.815 | 1.865 | 0.619 | 0.511 | -| λ | export_batch | export_batch_if | -|-----:|-------------:|----------------:| -| 0.50 | 2.087 | 12.258 | -| 0.75 | 2.045 | 12.447 | -| 1.00 | 1.950 | 2.657 | +| λ | export_batch | export_batch_if | contains | +|-----:|-------------:|----------------:|---------:| +| 0.50 | 2.087 | 12.258 | 3.121 | +| 0.75 | 2.045 | 12.447 | 3.094 | +| 1.00 | 1.950 | 2.657 | 3.096 | * dim = 32, capacity = 128 Million-KV, HBM = 16 GB, HMEM = 0 GB @@ -242,11 +242,11 @@ For Benchmark: | 0.75 | 0.930 | 2.238 | 1.177 | 1.693 | 3.369 | 1.316 | 0.866 | | 1.00 | 0.646 | 2.321 | 0.572 | 1.783 | 1.873 | 0.618 | 0.469 | -| λ | export_batch | export_batch_if | -|-----:|-------------:|----------------:| -| 0.50 | 0.692 | 10.784 | -| 0.75 | 0.569 | 10.240 | -| 1.00 | 0.551 | 0.765 | +| λ | export_batch | export_batch_if | contains | +|-----:|-------------:|----------------:|---------:| +| 0.50 | 0.692 | 10.784 | 3.100 | +| 0.75 | 0.569 | 10.240 | 3.075 | +| 1.00 | 0.551 | 0.765 | 3.096 | * dim = 64, capacity = 64 Million-KV, HBM = 16 GB, HMEM = 0 GB @@ -256,11 +256,11 @@ For Benchmark: | 0.75 | 0.801 | 1.951 | 1.033 | 1.493 | 3.545 | 1.359 | 0.773 | | 1.00 | 0.621 | 2.021 | 0.608 | 1.541 | 1.965 | 0.613 | 0.481 | -| λ | export_batch | export_batch_if | -|-----:|-------------:|----------------:| -| 0.50 | 0.316 | 8.199 | -| 0.75 | 0.296 | 8.549 | -| 1.00 | 0.288 | 0.395 | +| λ | export_batch | export_batch_if | contains | +|-----:|-------------:|----------------:|---------:| +| 0.50 | 0.316 | 8.199 | 3.239 | +| 0.75 | 0.296 | 8.549 | 3.198 | +| 1.00 | 0.288 | 0.395 | 3.225 | ### On HBM+HMEM hybrid mode: @@ -272,11 +272,11 @@ For Benchmark: | 0.75 | 0.083 | 0.122 | 0.111 | 0.129 | 3.221 | 1.274 | | 1.00 | 0.073 | 0.123 | 0.095 | 0.126 | 1.854 | 0.617 | -| λ | export_batch | export_batch_if | -|-----:|-------------:|----------------:| -| 0.50 | 0.318 | 8.086 | -| 0.75 | 0.294 | 5.549 | -| 1.00 | 0.287 | 0.393 | +| λ | export_batch | export_batch_if | contains | +|-----:|-------------:|----------------:|---------:| +| 0.50 | 0.318 | 8.086 | 3.122 | +| 0.75 | 0.294 | 5.549 | 3.111 | +| 1.00 | 0.287 | 0.393 | 3.075 | * dim = 64, capacity = 512 Million-KV, HBM = 32 GB, HMEM = 96 GB @@ -286,11 +286,11 @@ For Benchmark: | 0.75 | 0.049 | 0.069 | 0.049 | 0.069 | 3.116 | 1.242 | | 1.00 | 0.047 | 0.072 | 0.047 | 0.070 | 1.771 | 0.607 | -| λ | export_batch | export_batch_if | -|-----:|-------------:|----------------:| -| 0.50 | 0.316 | 8.181 | -| 0.75 | 0.293 | 8.950 | -| 1.00 | 0.292 | 0.394 | +| λ | export_batch | export_batch_if | contains | +|-----:|-------------:|----------------:|---------:| +| 0.50 | 0.316 | 8.181 | 3.073 | +| 0.75 | 0.293 | 8.950 | 3.052 | +| 1.00 | 0.292 | 0.394 | 3.026 | ### Support and Feedback: diff --git a/master/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt b/master/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt index cf63e848f..44e7a9eeb 100644 --- a/master/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt +++ b/master/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt @@ -1044,6 +1044,39 @@ Program Listing for File merlin_hashtable.cuh CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel; + ContainsKernelParams containsParams( + table_->buckets, table_->buckets_num, static_cast(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/master/api/classnv_1_1merlin_1_1HashTable.html b/master/api/classnv_1_1merlin_1_1HashTable.html index a1312fa62..d7e2d3b55 100644 --- a/master/api/classnv_1_1merlin_1_1HashTable.html +++ b/master/api/classnv_1_1merlin_1_1HashTable.html @@ -405,6 +405,22 @@

Class Documentation +
+inline void contains(const size_type n, const key_type *keys, bool *founds, cudaStream_t stream = 0) const
+

Checks if there are elements with key equivalent to keys in the table.

+
+
Parameters
+
    +
  • n – The number of keys to check.

  • +
  • keys – The keys to search on GPU-accessible memory with shape (n).

  • +
  • founds – The result that indicates if the keys are found, and should be allocated by caller on GPU-accessible memory with shape (n).

  • +
  • stream – The CUDA stream that is used to execute the operation.

  • +
+
+
+
+
inline void erase(const size_type n, const key_type *keys, cudaStream_t stream = 0)
diff --git a/master/api/program_listing_file_merlin_hashtable.cuh.html b/master/api/program_listing_file_merlin_hashtable.cuh.html index b37d08283..c8f7be11b 100644 --- a/master/api/program_listing_file_merlin_hashtable.cuh.html +++ b/master/api/program_listing_file_merlin_hashtable.cuh.html @@ -1120,6 +1120,39 @@ CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel<key_type, value_type, + score_type, ArchTag>; + ContainsKernelParams<key_type, value_type, score_type> containsParams( + table_->buckets, table_->buckets_num, static_cast<uint32_t>(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel<key_type, value_type, score_type>; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/master/genindex.html b/master/genindex.html index 53c95ac2a..8bd99250a 100644 --- a/master/genindex.html +++ b/master/genindex.html @@ -124,6 +124,8 @@

N

  • nv::merlin::HashTable::capacity (C++ function)
  • nv::merlin::HashTable::clear (C++ function) +
  • +
  • nv::merlin::HashTable::contains (C++ function)
  • nv::merlin::HashTable::dim (C++ function)
  • diff --git a/master/objects.inv b/master/objects.inv index c9dde02bd04db81061b14beb3b391c8d32f2a034..82095970b860ec0c0493e49f388f1672b0944c8f 100644 GIT binary patch delta 4654 zcmV+}64C90CBP++h<{s;+c>g*&#y2r2M4V}%ruhO?4!YJTWDMM z+Hxno5Bu9sQMS9~ySpRGmq`#LGEG)}bz!lJl%@Qk(;2vNKg&CvtFfB6Ykxa-HZw)b zj7FW}apYR4rAFC5!liY-JL}!;_SB?TDBX8mVWzz`-%^!{}^K8kwj{eI1!&4fFL*>w(6>2&AK=}wY~E4p|6p;rB_3tBEw`e|;8 zY?#-Mk*%`3x)IYXFBt6>FT>gCti!FQM@PZ@E978*hJPGvEhj3kSJ6CmUrEK1Znl(; z$)}E2+Zc8_Z^s5M@3!WP@ewRbzv4rOv){(yQP7S(+K3Jl)hRN1Yd+vh5KY@q~QNKH>`t>DB3k)vTl=;OP|TFWYR-NTT_(S4HIB6iv%PA3jn3=UX*s-VYzK(|DqN`Q0`KF|AFA1w0DmttN z#LDG!617zCzDmi>igvSEwnzd&?l`Nm-8fp}bRxEkTrT}3rEJ<+^UF71eyO$_dOvZ+ z5fwjj_#71L19VdMu&V=Y#uj;CeUm=(k@rq5k6vQKK!Q9w9Vi ziQ|b-qaE@yH$r~)7KpqJ+>9BHDSt$rwurl#+mJ1eC`666sP_jMM-?UV?s7A3bxa{@ zvqktNbe2!txQOwD4!X?ZAd~D6si|Ii9^vL$F9ji~IDRBO2`_1dC&|_`iTZqTx zRu)1rDs{HX#Uy{_7GvL=NAlzwJUbtF+3v~&KS*Rsyv3dGaj~wKhlKWr z%Eq|EBGA2pgy5Z;xSP+vWPNvyZqR4+>FS2f6nW^6DFUT%m&?jqaqGNsp>D7P^|kwD zIKH2ZlyTia;cTGCjf^$J?RsTaZ@sDO0aU2M;OZ5i;y>u@RS1J?&fny+=9hH=OIMie zdS3x#8E*U#dOiBIyk$MY9THt1S0}3_o62Ub>

    ULM?jZDTK?B+Mu=v zHO>OP?i@_F2ONsBMVM)?ixf$vcPS$&l}M08q%8528BGvje~MVO4QukuHUN76$M1iB zyngr3Kd*oPzt*I%9Xm9wHfmMdOH!@(!@L-0dRk=p-O{k12KEP~hts0n%iLIvO)oR5 zfB#UD>nrX08wqY6^ENcLeyud#d|u~fZ5H&b`t7m%_cR;3fy;}@UWQwSy?ttLeXO*v zu{A>rvbQJ2e{a2S+i$b~*T@W1R=zaWjVHZqw2#_K?+;5K-+a7!`}2pZ>I9gz z%v}HX&(}X+zg_XlzrAyX`ulw3VRN8D^99~t;b89bf8m$Dvv-9fOaCi*fdKH|f>Rf%u1cTeyI>3V99w&>N`n zeY-t!V_2{T3LNCisuNV1JP)aiXn$#E?NRI9;=9)Wwr-!l{oB8Oy8h|*@5_9h&sGD? z3Y%Gve|PhX%4nEHKD(QaOJ%hezY5+;YIFDZ)z;R0xmjj1n|L8<*hTxf*Zazc3Z?Q+ znfBA2GFxe_^t&p5Nc(C2u|lsm{L(IlZ9UEUc00ADUcU~%w2EP?{IE_5me{>?LZ3Mm zxa?Gj+`GqiW}VuhrROd;?y*%~RS1;fX%~b=e}~^@|5t|Q51Gx>%H-D&PPP-drxO0N$LL ze?9YaL*IXfrdGA7LiPy5y4O)_q;2ST@c^ zFHeis`yYSYuyTblxf;0HsZRc|O0W9ee>^2vw6yYvwc*{lG`q+w`mB>%R0t*6(Rg?_ zR)cOon}l4dd$3Xu9ykMVJL?X?s_fo^MR1SeH_}3A36x$vH`dibjCyL#Ki4`eDnFRz4rckvT!MM@rk-MT6-Z6x zZ|n1%PHS`B{pNs(_!MIgJ(&0(sH%7O1NaGGPLbuQqN#KSJI9oyIOX1RL{lD3bgHxihV5v;C1xMGKGM!>Zqq5c%rKyy{5ET9jl zB8h5ihK)+Ouv)*NbNyKDL3Fe$3B4NFyjuYaDClF=?u@uXgA%$_q zQv!L9#^7^cYH%&-krpaN${HJ$HK$r9!hwS)1QV$fhcUMpX;{OfdN|N0LZl8!Y$&YO ziVMt;^%#7gbLC^Qwu$i!#8s))LB)`4r9@Cm5kWSIDK#WR3UUINf6B}!l-pEltq|tY zCroN?BC=Kpa%_m>oH)#3!L$N`NkW}5f@nz8VzLIcLI8Kv5W={0);dU9FcXj_rrsq{ zSrczDM3$5rqC-6OoOtIYM?}H09g{VMj7TdhsdLzHE0u;>1$-SW+=9l;!<7R@j)m1( zII1|7LDvq!#Gu%!f&B+a9;HdbkGywe;( zR52l#Tj`)1F`l2_zu|9p6jBf?dK(B)OG*WTpJ5=Th*}_;l7>h-RD9}vh6+z`XPM1 zjx$i&ejaq^^5=87CuWP**K7!-g1r zdXuk2e-&;vTeHRJvAy_WuI!F3t-AZxkAasfH z+zU4!j=t<*bcy@Rjz)i&cW=+Tx3^D_mmQ*3OtQyTw~s|{m@k`b;=)PX^1xZ!{2X)k z{cV^(haT0wZeb2icR=Uh#9m6P6G)IHVG`<4f9#lIjwK3fL9K2Cgh(}{ZHy}qr9Kzj zGk_u_R~U*FgV0HUP{bt2E2$Yl36|P;?GT5*$Wlur7pH-eqSPalQZIBO9Wq2f(dQ-A z)G& zf9Ek!hAC?eXIguxcQC?Ehwa$JI9My86pDg!#6 zgoK+=JWU|X$pi`2AQV`TB=?R;4-<(oBA6tYOKgZWl5aY<4SCuhk-eta|(rYK%m5-flHY||1 za8WZ5#MgMe6o1>*)%}OrG#?H7|8n*TsDlopNds^ZDzSeB_Re@@dcXNu^T_2B?^nZ~ z91-^9HL#DOXnOxT9Un!#^nSl)&t}4%!|XbTsdT#Y=5!~?)aBi~!APq?*99#XDE%xm zd4H7Ej*+dh>)eQ0Kg${I<}br}b+rz+oE{wo^GC?R{(lTP*ji3hT(6>e>b{bSCEb1{ z9g|NTJKGpuUA>zaxV+n%FUChum43yC4rjlSZ3)1`b_6#^ls=@&tM$%z3QYse9W1{b zQQS)Qe;f#3kH}jYGaGhClP)mo-(?Xz9;GWhIyZ6($wW8!*X@nCcaMuplsu@xZ25%_ z4O26k%zqmYHZ!ZhT22kSxjtB;wT9`|PQTDrok^RTt(JeGYUZtR@5PU@`8E<+Rd7MiFnOBk%~;}iBGhPy?97djoxKGjZv!`DhGPm*r!C@c<~C%DBMMQYE$Y2X z{HUTt-d%3St&S-~ZMFzM&+KPYH-E`vJT`z@a>g-f)aN=J&w{5QRvd$67ig{QGEEiv;Ty-Z*J%hA$!KvODRM-korGXYhG6v=t)KN{)M_-)?R>sL?5XLGaUegvU44+xZhvg0rwYYV zc#T*`^KmDRGf2QtulGV(*ka5ox_(Tb?FTF^$G}g+7%bB*55*1f?}3x ziCS!){uH?|MbzvZk!z)Ma*qp9Ma>QpIZHez2e}Yc)Z`$|?n0k~pIoL!YI2wV_$=f{ z_VKKX>_6HQvL9|RSHzFx^MC3`(pk|)+(Uq~aEQxLK}`62p(e-pQI=l) zC`aSIs)(&J`Tl1Gzd)j6m6OMkwvqDaSi)r&D_KMN>(Rt(CL24Jcn#(i#}cujRk9iJ zmegu~DbW+k9S;c|jFgRWhee>zxD_28r`6;=u78@&3_en=#MD^rEr(a z%Bwo-ym6s!utW7%_uFW4KOHOMx`D#kK#v<4YlhqP%BDh36`!o`u)B2TRxVrk~BZ?kbbgVUSGusc$hAmRp?c3_%1FTIG8X#OAyXSF)yq!1eU7>qnFBgA4l%)A$(W2Cj!eUELCjZ|d?6%wCAIsp}fJ z%2l?EO$}&s1J_lkd2cdMN;Wq%1BBj5+o5R zOFU&p6GWJQB35m~nmn@&fIj^3`=6h$-~Z#!>)-#kHO=jn9hp`ewaV=Usn&;4mQVV6 zmiM!}%CMh@_N~&RS>EpT-9$}HuW!`g{-Gc@P}&VP65KrIU1)55EH&PIUFT+PKj>Kv z+7tKBS%2b&F3YET8EzT&?y0@?xzxVK){HF3-k#=vkC3+R;Z^DTq4?1H5($BQsR}EQkNy zWZLVG_fcEv{i*Wt&F9X$Up{rp6JXvlcm3bLUjK6aZpADA_TJ^{?~9R#&4Cil7kGb( zgSpRtM&Aa`-USEULA%=TUFBn$-niceac7}f74_G4l51Vx-CnnTDYvW;9;$pc0Ur$) zlm1`3Nw0Pe#6K>-PEEzy06O*FWF>y~@}5{%W9EVKeW4@qTep8V$3^_wQztLRszQuY$Ld+T8s^ zxwW-eZmLY?6E7qUyJ$c6`cV2%qEy@|(|)>BW-G0gex2fnv|knOsAm5*A*hjmJ@#O|dN`Yfox z?C{(C-_p?Rp>O+YW%6qXC)zdu_lU zS?lBbPd|P9)cMq!x3@z3Rh89vHgU!Hy-cb-fqG~NEY`?QXXEgc?6%5m+dF49gt_gc zH}?KAZ)`zh>(@nNnZ<0X?i?fs;LUx1vuA#8==+b*)G9ZXXn*VHy|z~W0!mwHmimOt zR&lvX!wl8E+e2gCr=U?>zS+O6R$lxL+=OfWxp+5C>qD`X_VjJRE*$JE^Vg^J^=HUl zS2=C%IA;;77$STxQ@SEohm!%shLSh>QOOby-qR402_rC0ucZjll! zTUyz}+VJi|nq6d;eb&h>D};jVcrv=1s9|@|pN3qjd$3Xu9ykYZJMRv`s_5Q=MR1Se zH_n|>(ws{?qO5gI={UrOOpiggjvm; zi-P4d-N9fsi#<71yWP_+xoho)7o5jzd0ZxKE>EW4<`N#s_NbS0Dc0P zQ)GFnXeyn-&M_q^PPz9S(Uiwzt+5daRTxLo*%P@hUpY=UC4HY8OkLpqUOGX^?m(ou&2 z1tyv#FKeeMAB4) z2RM;LwKc;=rCeAoV0wA%5=*R2ti{$KfFxqFrUY}&5RtIxQO5~?al{h{GlE!(Wz3Mm zIO8dS zmQ2M3X2^OBzR$VxFY$+ydP%8v*M-3s2OJ}Wvqy;kpxmxO7 z5|uUa7DHr7xgk2lQ_qQaUUEbfEZZ?zQ^<(4vXVN74YyKhm{q{n!NM(Q%w$+OVB}a> zorR-{V;OYq5KJtZdKEJ_(949>kw3`?|s7cAz=1qm2p2^Ly;%cQ_c zdT(9uH78BnQ~{zVrP@MRp&AM5AsZD8mMsR0se#NiCTn1Un8TWS$o+9Dv{Mp$Z?KS_ z*_ex_(Na^Wx*)1)<&aZ}bu7g`k(fAyVy;}4CK|y)nNZ|0Rf(g78H19PGv}<)o#l=sOc)+BL9$#34RaY5EP^$I1%!g5L10S>BuSb_Wo@j|-gu`u zf~aCbFt^e};mIIli>YwXH3vu2Qh6#+DibicO}vq5!ob!fCTnR;C~OT(@HD|1iX99E zfrf-wKouG@hC3&0k|a=FYm0q~97Is=I7$un2EK}a$l7xQIWMx@S`Uk5l33&jORY~C zhmiIiMXvj+r+`J#y}NPH)4tT}n9Lcpi>~d(fHrC`2863;23z;q7bxeOoZZcPoy8&D z=Ciz)Y|JhJ&-=HR!>W+0yf$v-9s>DE@{K2@FTH8!5a4SZx9tTl;McPqToI|B4dJD< z3u^6ug@{kY+JRX60DK2*EH89X(;jd|8Fk$Rwa~_r+*Wn$MYwM}dH3N=MYi3?F>k}y z>o^0Y?T0dVE_*%XJ(}ypXMi5H}0|hHQdP$lVCJackayz8aBk} z)0=z+s&L2Gnk~kU?d2B>WsmF(%sIEp+5u#L1>D*Z8d;&d z@WRa}lrKA-tZ;wX`Q+P0_x7TDd;0`=*-2)}BztUi`AVHRdNvK1yV~RPJD69pwx)Bf})sVI^t~`|bTyW2S z0E&=YVJKD%LMH)25tAUVq-F#qSZd?7Lmd7fOD&OHoCZpYQjbtdz0iqt$PfWVpO;iq z#~8KgX`oCQ<`@Yqourm2&BJ~kr^GTNyi)WuP_jf53)Oj=I7X<^&Ul_GVXWs$;7vQ8 z$3PjTtTmiz?V;Ym2s<6NV-w?Gt%Op4C<@ArH(9(oA3vN=I5&18p+-mt_92Q$L#3C( z`y?E8d5@Ze;yE@Jb7BRD0O4>7)x8u#X|Ra1q(LYs5f~AHQkUWc0=EF~fLdFFLny{m z)*uut1QyO3K?P!5D8Y@QoRM%Ymx9%rgyIw-8Y_upN|_Z9Um#XPs%EvNN;K(zD@1te z5b%fpjKcyViU$i}t%Rh+Ck;YLiFC|CXhDQHBhyqSR4T}1HF8dR-6RyDr~uO_nA1Te zBux?WG=VTD6C_lFP+&ol+&dyYOeDsLV3J@iu_4w-zUkaL8WfpG?160pYc~ZH5MPXg zfQ~Uj2Fi^Fp%^H>it|pUQ{#|9O@y}zg1H0njoY+I1DSB34-Vp#a*A82i3_(ESctWh kdukhm;#dH~5f_QZoLU9eF&1%{&m3uwzaPr~1Cw#)J3n#xVgLXD diff --git a/master/searchindex.js b/master/searchindex.js index 750337e7f..97632c2c6 100644 --- a/master/searchindex.js +++ b/master/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"013":1,"021":1,"033":1,"045":1,"047":1,"049":1,"069":1,"070":1,"072":1,"073":1,"075":1,"083":1,"086":1,"087":1,"093":1,"095":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":[1,8],"0xfffffffffffffffc":1,"0xfffffffffffffffd":1,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"109":1,"111":1,"113":1,"116":1,"122":1,"123":1,"124":1,"126":1,"128":[1,7,9],"128u":7,"129":1,"131":1,"177":1,"181":1,"199":1,"2022":7,"2023":1,"221":1,"238":1,"240":1,"242":1,"258":1,"272":1,"274":1,"278":1,"287":1,"288":1,"292":1,"293":1,"294":1,"296":1,"309":1,"316":1,"318":1,"321":1,"32bit":[1,8],"335":1,"359":1,"369":1,"370":1,"374":1,"393":1,"394":1,"395":1,"435":1,"447":1,"452":1,"469":1,"470":1,"478":1,"481":1,"484":1,"493":1,"499":1,"502":1,"511":1,"512":1,"541":1,"545":1,"549":1,"551":1,"569":1,"572":1,"607":1,"608":1,"612":1,"613":1,"617":1,"618":1,"619":1,"621":1,"646":1,"655":1,"657":1,"692":1,"693":1,"705":1,"706":1,"718":1,"726":1,"765":1,"770":1,"771":1,"773":1,"783":1,"784":1,"801":1,"805":1,"807":1,"80gb":1,"815":1,"834":1,"854":1,"865":1,"866":1,"873":1,"930":1,"931":1,"950":1,"951":1,"961":1,"965":1,"982":1,"\u03bb":1,"boolean":2,"byte":[1,9],"char":[1,7],"class":[1,7,10,11],"const":[2,7,8,10],"default":[1,2,9],"enum":[7,8],"export":[1,2,10],"float":[1,2,7,9],"function":[1,2,8,10],"import":[1,2,8],"int":[1,2,7,9],"new":[1,2,7],"public":[0,1,2,7,8,9],"return":[1,2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],The:[0,1,2,7,8,9,10],Use:1,Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[1,2,7],accum_or_assign_kernel:7,accumul:2,actual:2,add:1,added:2,address:[1,2],adher:0,advanc:1,advertis:1,after:[1,8],agre:7,algorithm:2,all:[0,1,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argc:1,argument:2,argv:1,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],bash:1,basi:7,basic:[1,2],batch:[2,7],bazel_build:1,bazelrc:1,becaus:2,been:[1,7],befor:[0,1,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:[1,9],block_siz:[1,7,9],blockquot:8,bool:[1,2,7,9,10],bring:13,bucket:[1,2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[1,2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:[1,2],challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:[1,8],clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,compil:1,complianc:7,comput:1,concept:8,concurr:2,condit:[1,2,7],conduct:[0,2],configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:[1,8],constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,contain:1,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:[1,8],count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[1,2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:[1,10],d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[1,2,8,9,10,12],definit:[1,11],delet:7,delta:[1,2,7],denot:2,dep:7,descript:1,design:[0,1],destroi:2,destroy_t:7,detail:1,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[1,2,7,8,9],device_clock:[1,8],device_id:[1,7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:[1,8],difficult:1,dim:[1,2,7,9],dimens:[1,2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,docker:1,document:[0,7,13],doe:2,doesn:2,don:1,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,1,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[1,7,8],epochlfu:1,epochlru:1,equal:[1,2,7,8],eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[1,2,7],export_batch_if:[1,2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[1,2,7,9],fast_load_factor:7,featur:[0,1],file:[1,2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],firstli:1,fix:[0,1],flag:[1,9],flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[1,2,7],fourth:2,free:[2,7],frequenc:[1,2,8],from:[1,2,8,10],full:[1,2,8],fulli:[1,8],functor:2,futur:2,gcc:1,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:[1,8],global_epoch:[1,7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:[1,8],grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:[1,9],happen:1,has:[1,2],hash:[1,2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,highli:1,hkvtabl:1,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,hot:1,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,imag:1,implement:1,impli:7,improv:1,includ:[0,1,7,11],increas:8,increment:[1,8],indic:[1,2,9,10],industri:1,inform:13,init:[1,2,7],init_capac:[1,7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:[1,8],insert:[1,2,8],insert_and_evict:[1,2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:[1,7],integr:0,interest:0,intern:[1,2,8],introduc:[1,2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[1,7,9],io_by_cpu:[1,7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,june:1,just:2,kcustom:[7,8],keep:[1,2,8],kei:[0,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[1,2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],later:1,law:7,lead:2,learn:1,least:[1,2,8],length:[1,2,9],less:[1,2,7,8],lfu:[1,7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[1,2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[2,7],local:1,lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintain:1,maintian:[0,1],make:[1,7],make_uniqu:[1,7],manag:1,match:[1,2],max:[1,7,8,9],max_bucket_s:[1,2,7,9],max_capac:[1,2,7,9],max_hbm_for_vector:[1,7,9],max_load_factor:[1,7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[1,2,9],mean:1,meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[1,2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,method:2,might:2,million:1,min:7,minbucketcapacityfilt:7,minimum:[1,2,8],miss:[1,2],mkdir:1,mode:[7,8],model:1,modifi:[1,2],more:[1,2,8,13],most:1,move:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,name:1,namespac:[7,11],nanosecond:[1,8],necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,note:1,noth:2,notic:2,now:2,nullptr:[2,7,8],number:[1,2],numeric_limit:7,nvcr:1,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:[1,7],onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],order:1,org:7,origin:1,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwrit:1,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[1,2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,pointer:1,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:[0,1],pure:7,put:2,py3:1,question:1,rais:2,ram:13,reach:[1,8],reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,real:1,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[1,2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:[1,2],respons:2,restraint:1,review:[0,1],run:[1,7],runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,scenario:1,score:[1,2,7,8,10],score_s:7,score_typ:[1,2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,separ:1,seper:2,serv:1,set:[1,2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[1,2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[1,2,7,9],size_typ:[2,7],sizeof:7,slightli:[1,8],slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,someth:1,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:[1,7],specifi:[1,2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,standard:1,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:[1,7],step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,tableopt:1,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],tensorflow:1,terabyt:1,test:[0,1],tf2:1,than:[2,7],thei:[1,2,8],them:1,thi:[0,2,7,10],third:2,thread:[1,2],thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[1,2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:[1,7],unit:[0,1],unless:[2,7],unsaf:[1,2],unsign:7,updat:[1,2],update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valid:1,valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:[1,11],vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,verifi:1,version:[1,7],via:[0,1,8],warmup:1,warranti:7,websit:13,welcom:0,well:1,when:[0,1,2,7,8],whether:2,which:[1,2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,world:1,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],configur:1,content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evict:1,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,idea:1,includ:3,kei:[1,13],licenc:0,licens:1,list:7,maintainership:0,matrix:1,matur:1,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,option:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,strategi:1,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,use:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file +Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::contains":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"013":1,"021":1,"026":1,"033":1,"045":1,"047":1,"049":1,"052":1,"069":1,"070":1,"072":1,"073":1,"075":1,"083":1,"086":1,"087":1,"093":1,"094":1,"095":1,"096":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":[1,8],"0xfffffffffffffffc":1,"0xfffffffffffffffd":1,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"100":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"109":1,"111":1,"113":1,"116":1,"121":1,"122":1,"123":1,"124":1,"126":1,"128":[1,7,9],"128u":7,"129":1,"131":1,"177":1,"181":1,"198":1,"199":1,"2022":7,"2023":1,"221":1,"225":1,"238":1,"239":1,"240":1,"242":1,"258":1,"272":1,"274":1,"278":1,"287":1,"288":1,"292":1,"293":1,"294":1,"296":1,"309":1,"316":1,"318":1,"321":1,"32bit":[1,8],"335":1,"359":1,"369":1,"370":1,"374":1,"393":1,"394":1,"395":1,"435":1,"447":1,"452":1,"469":1,"470":1,"478":1,"481":1,"484":1,"493":1,"499":1,"502":1,"511":1,"512":1,"541":1,"545":1,"549":1,"551":1,"569":1,"572":1,"607":1,"608":1,"612":1,"613":1,"617":1,"618":1,"619":1,"621":1,"646":1,"655":1,"657":1,"692":1,"693":1,"705":1,"706":1,"718":1,"726":1,"765":1,"770":1,"771":1,"773":1,"783":1,"784":1,"801":1,"805":1,"807":1,"80gb":1,"815":1,"834":1,"854":1,"865":1,"866":1,"873":1,"930":1,"931":1,"950":1,"951":1,"961":1,"965":1,"982":1,"\u03bb":1,"boolean":2,"byte":[1,9],"char":[1,7],"class":[1,7,10,11],"const":[2,7,8,10],"default":[1,2,9],"enum":[7,8],"export":[1,2,10],"float":[1,2,7,9],"function":[1,2,8,10],"import":[1,2,8],"int":[1,2,7,9],"new":[1,2,7],"public":[0,1,2,7,8,9],"return":[1,2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],The:[0,1,2,7,8,9,10],Use:1,Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[1,2,7],accum_or_assign_kernel:7,accumul:2,actual:2,add:1,added:2,address:[1,2],adher:0,advanc:1,advertis:1,after:[1,8],agre:7,algorithm:2,all:[0,1,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argc:1,argument:2,argv:1,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],bash:1,basi:7,basic:[1,2],batch:[2,7],bazel_build:1,bazelrc:1,becaus:2,been:[1,7],befor:[0,1,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:[1,9],block_siz:[1,7,9],blockquot:8,bool:[1,2,7,9,10],bring:13,bucket:[1,2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[1,2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:[1,2],challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:[1,8],clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,compil:1,complianc:7,comput:1,concept:8,concurr:2,condit:[1,2,7],conduct:[0,2],configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:[1,8],constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,contain:[1,2,7],containskernelparam:7,containsparam:7,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:[1,8],count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[1,2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:[1,10],d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[1,2,8,9,10,12],definit:[1,11],delet:7,delta:[1,2,7],denot:2,dep:7,descript:1,design:[0,1],destroi:2,destroy_t:7,detail:1,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[1,2,7,8,9],device_clock:[1,8],device_id:[1,7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:[1,8],difficult:1,dim:[1,2,7,9],dimens:[1,2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,docker:1,document:[0,7,13],doe:2,doesn:2,don:1,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,1,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[1,7,8],epochlfu:1,epochlru:1,equal:[1,2,7,8],equival:2,eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[1,2,7],export_batch_if:[1,2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[1,2,7,9],fast_load_factor:7,featur:[0,1],file:[1,2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],firstli:1,fix:[0,1],flag:[1,9],flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[1,2,7],fourth:2,free:[2,7],frequenc:[1,2,8],from:[1,2,8,10],full:[1,2,8],fulli:[1,8],functor:2,futur:2,gcc:1,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:[1,8],global_epoch:[1,7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:[1,8],grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:[1,9],happen:1,has:[1,2],hash:[1,2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,highli:1,hkvtabl:1,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,hot:1,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,imag:1,implement:1,impli:7,improv:1,includ:[0,1,7,11],increas:8,increment:[1,8],indic:[1,2,9,10],industri:1,inform:13,init:[1,2,7],init_capac:[1,7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:[1,8],insert:[1,2,8],insert_and_evict:[1,2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:[1,7],integr:0,interest:0,intern:[1,2,8],introduc:[1,2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[1,7,9],io_by_cpu:[1,7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,june:1,just:2,kcustom:[7,8],keep:[1,2,8],kei:[0,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[1,2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],later:1,law:7,lead:2,learn:1,least:[1,2,8],length:[1,2,9],less:[1,2,7,8],lfu:[1,7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[1,2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[2,7],local:1,lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintain:1,maintian:[0,1],make:[1,7],make_uniqu:[1,7],manag:1,match:[1,2],max:[1,7,8,9],max_bucket_s:[1,2,7,9],max_capac:[1,2,7,9],max_hbm_for_vector:[1,7,9],max_load_factor:[1,7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[1,2,9],mean:1,meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[1,2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,method:2,might:2,million:1,min:7,minbucketcapacityfilt:7,minimum:[1,2,8],miss:[1,2],mkdir:1,mode:[7,8],model:1,modifi:[1,2],more:[1,2,8,13],most:1,move:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,name:1,namespac:[7,11],nanosecond:[1,8],necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,note:1,noth:2,notic:2,now:2,nullptr:[2,7,8],number:[1,2],numeric_limit:7,nvcr:1,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:[1,7],onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],order:1,org:7,origin:1,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwrit:1,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[1,2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,pointer:1,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:[0,1],pure:7,put:2,py3:1,question:1,rais:2,ram:13,reach:[1,8],reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,real:1,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[1,2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:[1,2],respons:2,restraint:1,result:2,review:[0,1],run:[1,7],runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,scenario:1,score:[1,2,7,8,10],score_s:7,score_typ:[1,2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectcontainskernel:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinecontainskernel:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,separ:1,seper:2,serv:1,set:[1,2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[1,2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[1,2,7,9],size_typ:[2,7],sizeof:7,slightli:[1,8],slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,someth:1,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:[1,7],specifi:[1,2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,standard:1,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:[1,7],step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,tableopt:1,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],tensorflow:1,terabyt:1,test:[0,1],tf2:1,than:[2,7],thei:[1,2,8],them:1,thi:[0,2,7,10],third:2,thread:[1,2],thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[1,2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:[1,7],unit:[0,1],unless:[2,7],unsaf:[1,2],unsign:7,updat:[1,2],update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valid:1,valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:[1,11],vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,verifi:1,version:[1,7],via:[0,1,8],warmup:1,warranti:7,websit:13,welcom:0,well:1,when:[0,1,2,7,8],whether:2,which:[1,2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,world:1,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],configur:1,content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evict:1,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,idea:1,includ:3,kei:[1,13],licenc:0,licens:1,list:7,maintainership:0,matrix:1,matur:1,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,option:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,strategi:1,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,use:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file diff --git a/v0.1.0-beta.2/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt b/v0.1.0-beta.2/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt index cf63e848f..44e7a9eeb 100644 --- a/v0.1.0-beta.2/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt +++ b/v0.1.0-beta.2/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt @@ -1044,6 +1044,39 @@ Program Listing for File merlin_hashtable.cuh CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel; + ContainsKernelParams containsParams( + table_->buckets, table_->buckets_num, static_cast(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.2/api/classnv_1_1merlin_1_1HashTable.html b/v0.1.0-beta.2/api/classnv_1_1merlin_1_1HashTable.html index 71626fccb..43b2f4de9 100644 --- a/v0.1.0-beta.2/api/classnv_1_1merlin_1_1HashTable.html +++ b/v0.1.0-beta.2/api/classnv_1_1merlin_1_1HashTable.html @@ -405,6 +405,22 @@

    Class Documentation +
    +inline void contains(const size_type n, const key_type *keys, bool *founds, cudaStream_t stream = 0) const
    +

    Checks if there are elements with key equivalent to keys in the table.

    +
    +
    Parameters
    +
      +
    • n – The number of keys to check.

    • +
    • keys – The keys to search on GPU-accessible memory with shape (n).

    • +
    • founds – The result that indicates if the keys are found, and should be allocated by caller on GPU-accessible memory with shape (n).

    • +
    • stream – The CUDA stream that is used to execute the operation.

    • +
    +
    +
    +

    +
    inline void erase(const size_type n, const key_type *keys, cudaStream_t stream = 0)
    diff --git a/v0.1.0-beta.2/api/program_listing_file_merlin_hashtable.cuh.html b/v0.1.0-beta.2/api/program_listing_file_merlin_hashtable.cuh.html index 2278fa6b4..7c8691dd1 100644 --- a/v0.1.0-beta.2/api/program_listing_file_merlin_hashtable.cuh.html +++ b/v0.1.0-beta.2/api/program_listing_file_merlin_hashtable.cuh.html @@ -1120,6 +1120,39 @@ CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel<key_type, value_type, + score_type, ArchTag>; + ContainsKernelParams<key_type, value_type, score_type> containsParams( + table_->buckets, table_->buckets_num, static_cast<uint32_t>(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel<key_type, value_type, score_type>; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.2/genindex.html b/v0.1.0-beta.2/genindex.html index dca3e2bb9..b0e62f040 100644 --- a/v0.1.0-beta.2/genindex.html +++ b/v0.1.0-beta.2/genindex.html @@ -124,6 +124,8 @@

    N

  • nv::merlin::HashTable::capacity (C++ function)
  • nv::merlin::HashTable::clear (C++ function) +
  • +
  • nv::merlin::HashTable::contains (C++ function)
  • nv::merlin::HashTable::dim (C++ function)
  • diff --git a/v0.1.0-beta.2/objects.inv b/v0.1.0-beta.2/objects.inv index 128426f9e1eddf83c997a71b3cc0f789b4a53c0f..3abbd6b9218b551e5686418b9ef280dd700de354 100644 GIT binary patch delta 4584 zcmVB*!F>iGPn9x0ZhQuMm*I;9dmEa4Rl)vmIs9=s0QExt>RXYfG?H($&&V z&%^xoIn>f!rM=t5(h?hnEwRXRzO(S~9I{lEKeSo{KkoPPR;xYM6Mqx##@_Ypv|&f1 z*7R}Y8@QoIz5j|Ioe!Nw?@p(yC*7$weczFG*6m=OA%q3u&VO*PgrJ%9A_%S>hc5zA z{Zn^3=>O1pe|Pu5ZV+n!PVxu7poUqQce~MilkY^@i*HSUm>6Owk z_0+Mwi(#wvc5LC}{my(bJ%Y0IYd&;5`>kvX03LQDxILltF;!l#cfL_*7HRHb`RRn> zma_lTK=^z@-rCyPpfenIfKl&0PvG%5TjSBbRTD@iI?=!GZsiyMxcrFGgYM5(7ffuJ z*x`85fPaadIStnGdeE7gqb1sCnCuL-mo6y$6N&g3^*fWIUtgoNz~FjKnP07Ba~juc zxXFCX)rz+u3JuQpr}}!#*zXT*EN14zD$af|E0f>18mC%>`9U?lMr)@-TQvGNU{AY> zBvksTfmf#g{34Z~UxDV+F2qUIe`@H}*&u1Qkbl+&Cx%{`4Q6@o-#`gyU!)z*0e)q+ zm=n6>iEU=~i=TGvaF$QMF)_N`noE)*hkaX!R*$spO&?RBkSpSQ0rb5dCrA#nIpKEM zBnM!m4p%S5G|Z>Ex3&{inQfNDce%NFDauwWfU~(ure$rAt4fb+1DszJ+UllLV#uyH zNPjWQDA3&({QO{)CiG@=%11|Wd?ip^!;C>;dt6Hdb<6lq;D??iyR6% zEC$5F$LA!fRPVk@$@PkMyIrkjiwo622s(SNcv zUhRjSMdzvPn{Z?2vUO5rWp*7Jsi?HM4rS!uHL=u0Wf}K%sH6J5<;&JbWvTp?sH5s# z`^#2GiUWYl)<|XP_C=~A^m3PCo1aC(yYBQTp*EL;`*`4HKl0?aU)7=h(+W|cEs`D~ z)MJU$iBO>(@(VXYe(@GaybWBB8GlYGM3uHkyO~>)Elwyzg|?{n2N@?7CGqZZJ#KYM zAu6*){3UcRpZM`K#S=PMnZ;2i*(1s&$npZq94$_jN$&Z{R`1hAPUVtkDrXv#CVhm; z=`45-Vx=)yeudV`uhUeCpL26Md!2`1iHw%^={+Yj+F1ye#%Sq(0e?cnoqvyTX^fZl z7ylNUnCAr6ysG?#ANt`8Kl7E9-i7F~`ka~BaFTqc)QzI3*%ilf=`JR0|>mvVKdqV!* z4Hk;{o_w~xC!Hm2q&)<<2#2^16;$L9H5@Knf>T_P8Y*&(?`3K0dpVl+tzdke$+th2 z`vnr6s+>HPw6&B+rxGr|TFGk4Ur#1pJ=xf)#H%r{IF*Pst&;VKw|}Bm@%z7?Q0{q1 zXn&|(iaRVK-8Liy@ASmqe*UG`_c!GXJSS>AwLWbwRcDBCIrou^43DC6j_FEuM^g|LiW07z* zu_RKeZi%S}ZJITv9_*=qa9bhXr);k3ce54}#XafS1VU)EbVV=K+MesKGbub)@_1y6 zSh*8xrOEm004G}R*nEjQ+M%Fx4HMv{kW#q#vr+aq_;c}8`F{j^CcTIM|2=(9FtvV0 zyHlS(3O8fV*(_OtYs~C)C(q@u9jrHRy>1`i-)fou(0+MdKuRyGs2B`J&&&=3b8(B* zcX}>4F7?FfXjA}aIDYJmhQoe(waHDUM*v;EfGj1l`P;}2BIyn%(|Q%g*I6D08GpP` zUb>PZq$Pewz<(Qd>YS*w#P2wGj~zRjrJt)$tPZ2vR_rEK+eYPk6vX2POh(w?{6izeazd~*!Z>3c>8&in{&OWXWeg({l90uu^;$+IyuO2$FR3g z?TwFx_J0kwcIZI%=4AQ^Y3l)ArM~ayUmBm{mn~EWgIONq&_R-`j_+5Wwh((Z(qVdq zzI&}(> z>1&bRsMiE>XR%q&>#yA;H@d#PyJ`GfY$*^nV6g5$kH0jVBR_@}WuU==U)QZvWbizs zFrxXj*=vp(?^f3u|Jk^EzWR^<`RV4TyMLDX`p}zBn!|9kA@+=Ux4hIChTTSanjCSN z-hauZ)a!lWOMy~%__aA5HqETpce^Q-di^^5+L#U-^DhNT^QklOyNRqi{I>YNFf@PY zxt?CrgaKFIO>FCs=6uX?GiR7LA@k_M3fSyEnsLuH2Sc|9{i1(!W56GIV-iYn3GON*S?C0YTGAZ{2>aiiR*nc29nT_HToSQm#&EUN=Fa>v$-rD=qqOk#u zjbE0HMHaJ(zW1`v4(gs?!|8Sa%3G?QKg!GE>m@I@f1*MWUA!R0hukZBYvj&^+U?oEhq7y>2E z;m>j% ztgzUmWF0Ug;K3Q8Cd)9!1PjBM;ZkbuxK7HN1%{a7+DmT&6N+LcG8r_LgkY7BHOUMp zn=__8%x9NnL2*nd3z-tsA)J!6rJ2q+Hb@1-IhdO(&pZJXU;>I#vJOPrAT7zLA(Ce* zGY%Zx7{*OTI7`afFq~ydNqXHga}8lfi*m-hXZ{oW#+LWmceSRg(MuiK*0Bf&>= zuFjl^Du!e$qmns>DSvh-rPPoNX~+p+D)WGtaG5ejVQTp3{#vep=KY>4B6dLm%K zbP|FIV%}Ow4J2wQS%X?3fO}>spK7*B(s!3QNU z)v#=*WX&KWGTJHTJ+ZdXh*1xv9IO~Z1cfX|CP9YIV@Wo7E=qEX-d|>0&`Cc3y}MhOd78h3BeMn0(U7FO>2~4Q1C%iGumUXk@Gww z0VzT~#wk}W$A6H)uuvj~17R9@M!B^ZWrBO}EJ?~blh_lQ5vVK$WQ0CY;hpdlacM=$ z1jz|04a{X&uqZJc77zxG27xW3kR%zAl(lu*1RJ~&7@~@e!Q80;g(ruMEv3Ri*8&{P zC>@x@nL=Q2hk{iZ;$Ul>+{*FK}i_uy83M>mV%Tyx0ln0xXsYIqWIVT*$b9koFBluK%m6fyKOgXX~J+EwR@z zSukkMyEc~tnz*?f5I;RL*tyNWM7h{s?QGv>o&O4ZQrrg zbr<;<$bV0g4@X-LUtW3-$uYn;IPThpUc#?tC%Pn3HG9!3X_wTROA()lH6yX+5%`YS z(_ZSLqV4CBGOD^KXQ_=9xt;1bi15%(_WpCBl5G1=f_{jXH*rQvyU&B}eg1q7_rz?~ zy4Z`qi67r=9M=_kd{`Ws-TKGo=Xhf|OoHK9-+%izXK2_Mqt9>h%~8c0kTz^FdTg#P zER{WUGcf1EDjR2?C2$+3pFcdcG@*a#D0JsB=uV2IgU}M?r5A2L9DUirXo>sFjz)i2 zc5g1bH+N5vmmQ)OOme_hcaPKVFfW^I;^RqNdElaLd5*cbei!G@u}8J9TbQHM9nm>D zaeq+C83YNkqFg~8N<7!xbEJup%$Zt1$jm_6#)S@0>I*3X2PjerO`uq@7@q|QO)bJf zE5j*9L>U{5#{&Lh#~f8co(D>Xvw(5Nf;32ZY^j8zFDPc1=bX9hJWytw2!bV1UNOhD z5ph3HFzUFKL2Gs%C^<6JL3N%X&ndIU+kYT3Ev*YeOR{ap^AsrKlyz2cV*=DW1QT!K zb}X_U)=DUalAzprf5)ry@#Fc#b7L7m57kszrh<|opm^970EiTHAm_Xf85dBNQSfk=|L!B<4bDDSxbH zg41{|mx0ylgyJ=&hG>OV#<-IZUm#XPs^*MiTGr_+R0ifT@P|Lv6A2L|fQ5+BQZX7( zjZiYGJogYXf`I;w=mn@|En5atxZQr8Ft79=Ht zrz*fi;+#sZC=rTS>Z}sm&aIO{QDI1t0BjMg-3(Abe6bz^Iw2TaC^u?^Vxjn&pLcST zS&to(!66KD2jZJ>S)B&5@jxFO#B1%faLQ00Z!d5VYncel)d8v$ zsQ#&24EjHG-rwClup5M~e<%3^pG(86ihbQ`zsa{UySloalkJubZ`eR*uketn=*D8msV=+gkAZ1olgfdCO&?s znFtnZSTE&vb$|8c{d7_c2fhFG?un>}3d3;&bTKZ$zk>VqXlT2?g=zE5)f4usX^)Rc zd;A*OM=><}@;VzI#k}mxe#@RshdYPfbq-zWbo4<90MxtB6GS}DRxqw_)dZ4>PK>X+TlvL5E`~9Jfik?t~W^G77B8AdBhJ!Y2qQ9Nj_NpS?xMqQVXegqezNyoeADD=Ddhp+MK^m zo`3l{kW4%x)W)>a3*Q!&H}R&ZEhhtV332^Q^y4$pk2_|;{j}$2Nxwwi!*LyF9LG~+ zq>I9j>xk6Xj*E`b#pXLD zzCBMZBb01d9uP|(pR@2v68=w1W`ErhDFnIWJoWeEWQo&>_^!Tm=ew523fBDc z-Irgg?}i~vd~x{>Y*x>vy;$E?`DuHxSv?!~V%n{e)A3@XdN%FF`gXTZ+l$TW*{m09 z+l|?*TDF39{jhb>c`W}X+}Js9o7A~7y9|rew6wVlW8~j0v9LsK8TVzFqyD|+^MAHS zZK?c)n4|7p`|~zOiUWZ2wn%O1_F0-E^m3PCo1aC&+in%Aur}wz`*7lBH*@$Ka$T2h zk=KOzkE=wDzDRn6(2OUJr$UW>$j{sf`Pq9Q@iuTXZaAhAb^0RhW^O~iIHD3Y`l8;u z#E+^<;@#zD!s?hx)aHx$^UPj8@qgnY#bX0l72+V5>`>(#ba{bi4pyhmB=_`mYxa=` z#|p_4)iaGtlRnqscpf|jwbD2&zd�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 + ContainsKernelParams containsParams( + table_->buckets, table_->buckets_num, static_cast(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.3/api/classnv_1_1merlin_1_1HashTable.html b/v0.1.0-beta.3/api/classnv_1_1merlin_1_1HashTable.html index d6466a1ab..a02b623b8 100644 --- a/v0.1.0-beta.3/api/classnv_1_1merlin_1_1HashTable.html +++ b/v0.1.0-beta.3/api/classnv_1_1merlin_1_1HashTable.html @@ -405,6 +405,22 @@

    Class Documentation +
    +inline void contains(const size_type n, const key_type *keys, bool *founds, cudaStream_t stream = 0) const
    +

    Checks if there are elements with key equivalent to keys in the table.

    +
    +
    Parameters
    +
      +
    • n – The number of keys to check.

    • +
    • keys – The keys to search on GPU-accessible memory with shape (n).

    • +
    • founds – The result that indicates if the keys are found, and should be allocated by caller on GPU-accessible memory with shape (n).

    • +
    • stream – The CUDA stream that is used to execute the operation.

    • +
    +
    +
    +

    +
    inline void erase(const size_type n, const key_type *keys, cudaStream_t stream = 0)
    diff --git a/v0.1.0-beta.3/api/program_listing_file_merlin_hashtable.cuh.html b/v0.1.0-beta.3/api/program_listing_file_merlin_hashtable.cuh.html index 2bc5d4ffd..afe091749 100644 --- a/v0.1.0-beta.3/api/program_listing_file_merlin_hashtable.cuh.html +++ b/v0.1.0-beta.3/api/program_listing_file_merlin_hashtable.cuh.html @@ -1120,6 +1120,39 @@ CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel<key_type, value_type, + score_type, ArchTag>; + ContainsKernelParams<key_type, value_type, score_type> containsParams( + table_->buckets, table_->buckets_num, static_cast<uint32_t>(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel<key_type, value_type, score_type>; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.3/genindex.html b/v0.1.0-beta.3/genindex.html index 7ba449e2d..6df1cbfb3 100644 --- a/v0.1.0-beta.3/genindex.html +++ b/v0.1.0-beta.3/genindex.html @@ -124,6 +124,8 @@

    N

  • nv::merlin::HashTable::capacity (C++ function)
  • nv::merlin::HashTable::clear (C++ function) +
  • +
  • nv::merlin::HashTable::contains (C++ function)
  • nv::merlin::HashTable::dim (C++ function)
  • diff --git a/v0.1.0-beta.3/objects.inv b/v0.1.0-beta.3/objects.inv index c0ff6efe170ff00f8f0687d811dc524780303495..80debbf9cd272c9a3360a14ff972cfdf991a4dca 100644 GIT binary patch delta 4422 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 CS7Ryw diff --git a/v0.1.0-beta.3/searchindex.js b/v0.1.0-beta.3/searchindex.js index 801b0395b..57d7f1047 100644 --- a/v0.1.0-beta.3/searchindex.js +++ b/v0.1.0-beta.3/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"020":1,"024":1,"026":1,"027":1,"028":1,"029":1,"030":1,"033":1,"034":1,"038":1,"039":1,"041":1,"042":1,"044":1,"045":1,"048":1,"052":1,"062":1,"064":1,"072":1,"076":1,"081":1,"082":1,"083":1,"085":1,"086":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":8,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"100":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"113":1,"119":1,"128":[1,7,9],"128u":7,"157":1,"174":1,"190":1,"200":1,"2022":7,"211":1,"213":1,"217":1,"221":1,"234":1,"237":1,"247":1,"248":1,"266":1,"267":1,"299":1,"32bit":8,"345":1,"363":1,"388":1,"411":1,"413":1,"423":1,"428":1,"440":1,"447":1,"453":1,"481":1,"512":1,"517":1,"527":1,"548":1,"554":1,"573":1,"647":1,"671":1,"683":1,"685":1,"694":1,"712":1,"736":1,"749":1,"784":1,"795":1,"799":1,"80gb":1,"816":1,"872":1,"922":1,"968":1,"boolean":2,"byte":9,"char":7,"class":[1,7,10,11],"const":[2,7,8,10],"default":[2,9],"enum":[7,8],"export":[2,10],"float":[2,7,9],"function":[2,8,10],"import":[2,8],"int":[2,7,9],"new":[2,7],"public":[0,1,2,7,8,9],"return":[2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],KVs:1,The:[0,1,2,7,8,9,10],Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[2,7],accum_or_assign_kernel:7,accumul:2,actual:2,added:2,address:2,adher:0,advertis:1,after:8,agre:7,algorithm:2,all:[0,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argument:2,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],basi:7,basic:[1,2],batch:[2,7],becaus:2,been:7,befor:[0,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:9,block_siz:[7,9],blockquot:8,bool:[2,7,9,10],bring:13,bucket:[2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:2,challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:8,clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,complianc:7,comput:1,concept:8,concurr:2,condit:[2,7],conduct:[0,2],config:1,configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:8,constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:8,count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:10,d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[2,8,9,10,12],definit:11,delet:7,delta:[2,7],denot:2,dep:7,design:[0,1],destroi:2,destroy_t:7,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[2,7,8,9],device_clock:8,device_id:[7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:8,difficult:1,dim:[1,2,7,9],dimens:[2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,document:[0,7,13],doe:2,doesn:2,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[7,8],equal:[2,7,8],eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[2,7],export_batch_if:[2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[2,7,9],fast_load_factor:7,featur:[0,1],file:[2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],fix:[0,1],flag:9,flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[2,7],fourth:2,free:[2,7],frequenc:[2,8],from:[2,8,10],full:[1,2,8],fulli:8,functor:2,futur:2,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:8,global_epoch:[7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:8,grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:9,has:2,hash:[2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,implement:1,impli:7,improv:1,includ:[0,7,11],increas:8,increment:8,indic:[2,9,10],inform:13,init:[2,7],init_capac:[7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:8,insert:[2,8],insert_and_evict:[2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:7,integr:0,interest:0,intern:[1,2,8],introduc:[2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[7,9],io_by_cpu:[7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,just:2,kcustom:[7,8],keep:[2,8],kei:[0,1,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],law:7,lead:2,learn:1,least:[2,8],length:[2,9],less:[2,7,8],lfu:[7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[1,2,7],lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintian:[0,1],make:[1,7],make_uniqu:7,match:2,max:[7,8,9],max_bucket_s:[2,7,9],max_capac:[2,7,9],max_hbm_for_vector:[7,9],max_load_factor:[7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[2,9],meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,meta_typ:1,method:2,might:2,min:7,minbucketcapacityfilt:7,minimum:[2,8],miss:2,mkdir:1,mode:[7,8],model:1,modifi:2,more:[1,2,8,13],most:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,namespac:[7,11],nanosecond:8,necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,noth:2,notic:2,now:2,nullptr:[2,7,8],number:2,numeric_limit:7,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:7,onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],org:7,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:0,pure:7,put:2,question:1,rais:2,ram:13,reach:8,reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:2,respons:2,restraint:1,review:[0,1],run:7,runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,score:[2,7,8,10],score_s:7,score_typ:[2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,seper:2,serv:1,set:[2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[2,7,9],size_typ:[2,7],sizeof:7,slightli:8,slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:7,specifi:[2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:7,step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[1,2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],terabyt:1,test:[0,1],than:[2,7],thei:[2,8],thi:[0,2,7,10],third:2,thread:2,thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:7,unit:[0,1],unless:[2,7],unsaf:2,unsign:7,updat:2,update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,1,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:11,vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,version:[1,7],via:[0,8],warranti:7,websit:13,welcom:0,when:[0,1,2,7,8],whether:2,which:[2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,includ:3,kei:13,licenc:0,licens:1,list:7,maintainership:0,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file +Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::contains":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"020":1,"024":1,"026":1,"027":1,"028":1,"029":1,"030":1,"033":1,"034":1,"038":1,"039":1,"041":1,"042":1,"044":1,"045":1,"048":1,"052":1,"062":1,"064":1,"072":1,"076":1,"081":1,"082":1,"083":1,"085":1,"086":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":8,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"100":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"113":1,"119":1,"128":[1,7,9],"128u":7,"157":1,"174":1,"190":1,"200":1,"2022":7,"211":1,"213":1,"217":1,"221":1,"234":1,"237":1,"247":1,"248":1,"266":1,"267":1,"299":1,"32bit":8,"345":1,"363":1,"388":1,"411":1,"413":1,"423":1,"428":1,"440":1,"447":1,"453":1,"481":1,"512":1,"517":1,"527":1,"548":1,"554":1,"573":1,"647":1,"671":1,"683":1,"685":1,"694":1,"712":1,"736":1,"749":1,"784":1,"795":1,"799":1,"80gb":1,"816":1,"872":1,"922":1,"968":1,"boolean":2,"byte":9,"char":7,"class":[1,7,10,11],"const":[2,7,8,10],"default":[2,9],"enum":[7,8],"export":[2,10],"float":[2,7,9],"function":[2,8,10],"import":[2,8],"int":[2,7,9],"new":[2,7],"public":[0,1,2,7,8,9],"return":[2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],KVs:1,The:[0,1,2,7,8,9,10],Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[2,7],accum_or_assign_kernel:7,accumul:2,actual:2,added:2,address:2,adher:0,advertis:1,after:8,agre:7,algorithm:2,all:[0,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argument:2,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],basi:7,basic:[1,2],batch:[2,7],becaus:2,been:7,befor:[0,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:9,block_siz:[7,9],blockquot:8,bool:[2,7,9,10],bring:13,bucket:[2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:2,challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:8,clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,complianc:7,comput:1,concept:8,concurr:2,condit:[2,7],conduct:[0,2],config:1,configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:8,constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,contain:[2,7],containskernelparam:7,containsparam:7,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:8,count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:10,d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[2,8,9,10,12],definit:11,delet:7,delta:[2,7],denot:2,dep:7,design:[0,1],destroi:2,destroy_t:7,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[2,7,8,9],device_clock:8,device_id:[7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:8,difficult:1,dim:[1,2,7,9],dimens:[2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,document:[0,7,13],doe:2,doesn:2,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[7,8],equal:[2,7,8],equival:2,eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[2,7],export_batch_if:[2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[2,7,9],fast_load_factor:7,featur:[0,1],file:[2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],fix:[0,1],flag:9,flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[2,7],fourth:2,free:[2,7],frequenc:[2,8],from:[2,8,10],full:[1,2,8],fulli:8,functor:2,futur:2,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:8,global_epoch:[7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:8,grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:9,has:2,hash:[2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,implement:1,impli:7,improv:1,includ:[0,7,11],increas:8,increment:8,indic:[2,9,10],inform:13,init:[2,7],init_capac:[7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:8,insert:[2,8],insert_and_evict:[2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:7,integr:0,interest:0,intern:[1,2,8],introduc:[2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[7,9],io_by_cpu:[7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,just:2,kcustom:[7,8],keep:[2,8],kei:[0,1,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],law:7,lead:2,learn:1,least:[2,8],length:[2,9],less:[2,7,8],lfu:[7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[1,2,7],lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintian:[0,1],make:[1,7],make_uniqu:7,match:2,max:[7,8,9],max_bucket_s:[2,7,9],max_capac:[2,7,9],max_hbm_for_vector:[7,9],max_load_factor:[7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[2,9],meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,meta_typ:1,method:2,might:2,min:7,minbucketcapacityfilt:7,minimum:[2,8],miss:2,mkdir:1,mode:[7,8],model:1,modifi:2,more:[1,2,8,13],most:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,namespac:[7,11],nanosecond:8,necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,noth:2,notic:2,now:2,nullptr:[2,7,8],number:2,numeric_limit:7,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:7,onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],org:7,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:0,pure:7,put:2,question:1,rais:2,ram:13,reach:8,reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:2,respons:2,restraint:1,result:2,review:[0,1],run:7,runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,score:[2,7,8,10],score_s:7,score_typ:[2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectcontainskernel:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinecontainskernel:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,seper:2,serv:1,set:[2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[2,7,9],size_typ:[2,7],sizeof:7,slightli:8,slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:7,specifi:[2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:7,step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[1,2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],terabyt:1,test:[0,1],than:[2,7],thei:[2,8],thi:[0,2,7,10],third:2,thread:2,thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:7,unit:[0,1],unless:[2,7],unsaf:2,unsign:7,updat:2,update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,1,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:11,vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,version:[1,7],via:[0,8],warranti:7,websit:13,welcom:0,when:[0,1,2,7,8],whether:2,which:[2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,includ:3,kei:13,licenc:0,licens:1,list:7,maintainership:0,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file diff --git a/v0.1.0-beta.4/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt b/v0.1.0-beta.4/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt index cf63e848f..44e7a9eeb 100644 --- a/v0.1.0-beta.4/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt +++ b/v0.1.0-beta.4/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt @@ -1044,6 +1044,39 @@ Program Listing for File merlin_hashtable.cuh CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel; + ContainsKernelParams containsParams( + table_->buckets, table_->buckets_num, static_cast(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.4/api/classnv_1_1merlin_1_1HashTable.html b/v0.1.0-beta.4/api/classnv_1_1merlin_1_1HashTable.html index 51878ee82..4ff588621 100644 --- a/v0.1.0-beta.4/api/classnv_1_1merlin_1_1HashTable.html +++ b/v0.1.0-beta.4/api/classnv_1_1merlin_1_1HashTable.html @@ -405,6 +405,22 @@

    Class Documentation +
    +inline void contains(const size_type n, const key_type *keys, bool *founds, cudaStream_t stream = 0) const
    +

    Checks if there are elements with key equivalent to keys in the table.

    +
    +
    Parameters
    +
      +
    • n – The number of keys to check.

    • +
    • keys – The keys to search on GPU-accessible memory with shape (n).

    • +
    • founds – The result that indicates if the keys are found, and should be allocated by caller on GPU-accessible memory with shape (n).

    • +
    • stream – The CUDA stream that is used to execute the operation.

    • +
    +
    +
    +

    +
    inline void erase(const size_type n, const key_type *keys, cudaStream_t stream = 0)
    diff --git a/v0.1.0-beta.4/api/program_listing_file_merlin_hashtable.cuh.html b/v0.1.0-beta.4/api/program_listing_file_merlin_hashtable.cuh.html index 033a724a0..c6419641a 100644 --- a/v0.1.0-beta.4/api/program_listing_file_merlin_hashtable.cuh.html +++ b/v0.1.0-beta.4/api/program_listing_file_merlin_hashtable.cuh.html @@ -1120,6 +1120,39 @@ CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel<key_type, value_type, + score_type, ArchTag>; + ContainsKernelParams<key_type, value_type, score_type> containsParams( + table_->buckets, table_->buckets_num, static_cast<uint32_t>(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel<key_type, value_type, score_type>; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.4/genindex.html b/v0.1.0-beta.4/genindex.html index 8500fae79..fe79e5dfd 100644 --- a/v0.1.0-beta.4/genindex.html +++ b/v0.1.0-beta.4/genindex.html @@ -124,6 +124,8 @@

    N

  • nv::merlin::HashTable::capacity (C++ function)
  • nv::merlin::HashTable::clear (C++ function) +
  • +
  • nv::merlin::HashTable::contains (C++ function)
  • nv::merlin::HashTable::dim (C++ function)
  • diff --git a/v0.1.0-beta.4/objects.inv b/v0.1.0-beta.4/objects.inv index c0ff6efe170ff00f8f0687d811dc524780303495..80debbf9cd272c9a3360a14ff972cfdf991a4dca 100644 GIT binary patch delta 4422 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 CS7Ryw diff --git a/v0.1.0-beta.4/searchindex.js b/v0.1.0-beta.4/searchindex.js index 08541ad47..eb2e4bb36 100644 --- a/v0.1.0-beta.4/searchindex.js +++ b/v0.1.0-beta.4/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"031":1,"034":1,"035":1,"036":1,"045":1,"047":1,"051":1,"054":1,"055":1,"072":1,"087":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":8,"0xfffffffffffffffc":1,"0xfffffffffffffffd":1,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"114":1,"115":1,"116":1,"120":1,"121":1,"125":1,"128":[1,7,9],"128u":7,"143":1,"145":1,"147":1,"149":1,"178":1,"179":1,"200":1,"2022":7,"303":1,"314":1,"323":1,"32bit":8,"342":1,"352":1,"397":1,"402":1,"512":1,"541":1,"552":1,"569":1,"584":1,"617":1,"629":1,"632":1,"640":1,"645":1,"665":1,"743":1,"795":1,"800":1,"809":1,"80gb":1,"826":1,"834":1,"849":1,"851":1,"855":1,"883":1,"890":1,"895":1,"896":1,"906":1,"914":1,"925":1,"930":1,"954":1,"958":1,"boolean":2,"byte":9,"char":7,"class":[1,7,10,11],"const":[2,7,8,10],"default":[2,9],"enum":[7,8],"export":[2,10],"float":[2,7,9],"function":[2,8,10],"import":[2,8],"int":[2,7,9],"new":[2,7],"public":[0,1,2,7,8,9],"return":[1,2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],The:[0,1,2,7,8,9,10],Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[2,7],accum_or_assign_kernel:7,accumul:2,actual:2,added:2,address:[1,2],adher:0,advertis:1,after:8,agre:7,algorithm:2,all:[0,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argument:2,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],basi:7,basic:[1,2],batch:[2,7],becaus:2,been:7,befor:[0,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:9,block_siz:[7,9],blockquot:8,bool:[2,7,9,10],bring:13,bucket:[2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:2,challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:8,clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,complianc:7,comput:1,concept:8,concurr:2,condit:[2,7],conduct:[0,2],config:1,configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:8,constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:8,count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:10,d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[2,8,9,10,12],definit:11,delet:7,delta:[2,7],denot:2,dep:7,design:[0,1],destroi:2,destroy_t:7,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[2,7,8,9],device_clock:8,device_id:[7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:8,difficult:1,dim:[1,2,7,9],dimens:[2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,document:[0,7,13],doe:2,doesn:2,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[7,8],equal:[2,7,8],eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[2,7],export_batch_if:[2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[2,7,9],fast_load_factor:7,featur:[0,1],file:[2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],fix:[0,1],flag:9,flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[2,7],fourth:2,free:[2,7],frequenc:[2,8],from:[2,8,10],full:[1,2,8],fulli:8,functor:2,futur:2,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:8,global_epoch:[7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:8,grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:9,has:2,hash:[2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,hit:1,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,implement:1,impli:7,improv:1,includ:[0,7,11],increas:8,increment:8,indic:[2,9,10],inform:13,init:[2,7],init_capac:[7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:8,insert:[2,8],insert_and_evict:[1,2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:7,integr:0,interest:0,intern:[1,2,8],introduc:[2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[7,9],io_by_cpu:[7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,just:2,kcustom:[7,8],keep:[2,8],kei:[0,1,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],law:7,lead:2,learn:1,least:[2,8],length:[2,9],less:[2,7,8],lfu:[7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[1,2,7],lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintian:[0,1],make:[1,7],make_uniqu:7,match:2,max:[7,8,9],max_bucket_s:[2,7,9],max_capac:[2,7,9],max_hbm_for_vector:[7,9],max_load_factor:[7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[2,9],mean:1,meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,meta_typ:1,method:2,might:2,million:1,min:7,minbucketcapacityfilt:7,minimum:[2,8],miss:2,mkdir:1,mode:[7,8],model:1,modifi:2,more:[1,2,8,13],most:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,namespac:[7,11],nanosecond:8,necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,noth:2,notic:2,now:2,nullptr:[2,7,8],number:2,numeric_limit:7,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:7,onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],org:7,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:0,pure:7,put:2,question:1,rais:2,ram:13,rate:1,reach:8,reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:2,respons:2,restraint:1,review:[0,1],run:7,runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,score:[2,7,8,10],score_s:7,score_typ:[2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,seper:2,serv:1,set:[2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[2,7,9],size_typ:[2,7],sizeof:7,slightli:8,slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:7,specifi:[2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:7,step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[1,2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],terabyt:1,test:[0,1],than:[2,7],thei:[2,8],thi:[0,2,7,10],third:2,thread:2,thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:7,unit:[0,1],unless:[2,7],unsaf:2,unsign:7,updat:2,update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,1,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:11,vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,version:[1,7],via:[0,8],warranti:7,websit:13,welcom:0,when:[0,1,2,7,8],whether:2,which:[2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,includ:3,kei:13,licenc:0,licens:1,list:7,maintainership:0,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file +Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::contains":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"031":1,"034":1,"035":1,"036":1,"045":1,"047":1,"051":1,"054":1,"055":1,"072":1,"087":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":8,"0xfffffffffffffffc":1,"0xfffffffffffffffd":1,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"114":1,"115":1,"116":1,"120":1,"121":1,"125":1,"128":[1,7,9],"128u":7,"143":1,"145":1,"147":1,"149":1,"178":1,"179":1,"200":1,"2022":7,"303":1,"314":1,"323":1,"32bit":8,"342":1,"352":1,"397":1,"402":1,"512":1,"541":1,"552":1,"569":1,"584":1,"617":1,"629":1,"632":1,"640":1,"645":1,"665":1,"743":1,"795":1,"800":1,"809":1,"80gb":1,"826":1,"834":1,"849":1,"851":1,"855":1,"883":1,"890":1,"895":1,"896":1,"906":1,"914":1,"925":1,"930":1,"954":1,"958":1,"boolean":2,"byte":9,"char":7,"class":[1,7,10,11],"const":[2,7,8,10],"default":[2,9],"enum":[7,8],"export":[2,10],"float":[2,7,9],"function":[2,8,10],"import":[2,8],"int":[2,7,9],"new":[2,7],"public":[0,1,2,7,8,9],"return":[1,2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],The:[0,1,2,7,8,9,10],Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[2,7],accum_or_assign_kernel:7,accumul:2,actual:2,added:2,address:[1,2],adher:0,advertis:1,after:8,agre:7,algorithm:2,all:[0,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argument:2,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],basi:7,basic:[1,2],batch:[2,7],becaus:2,been:7,befor:[0,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:9,block_siz:[7,9],blockquot:8,bool:[2,7,9,10],bring:13,bucket:[2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:2,challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:8,clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,complianc:7,comput:1,concept:8,concurr:2,condit:[2,7],conduct:[0,2],config:1,configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:8,constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,contain:[2,7],containskernelparam:7,containsparam:7,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:8,count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:10,d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[2,8,9,10,12],definit:11,delet:7,delta:[2,7],denot:2,dep:7,design:[0,1],destroi:2,destroy_t:7,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[2,7,8,9],device_clock:8,device_id:[7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:8,difficult:1,dim:[1,2,7,9],dimens:[2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,document:[0,7,13],doe:2,doesn:2,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[7,8],equal:[2,7,8],equival:2,eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[2,7],export_batch_if:[2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[2,7,9],fast_load_factor:7,featur:[0,1],file:[2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],fix:[0,1],flag:9,flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[2,7],fourth:2,free:[2,7],frequenc:[2,8],from:[2,8,10],full:[1,2,8],fulli:8,functor:2,futur:2,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:8,global_epoch:[7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:8,grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:9,has:2,hash:[2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,hit:1,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,implement:1,impli:7,improv:1,includ:[0,7,11],increas:8,increment:8,indic:[2,9,10],inform:13,init:[2,7],init_capac:[7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:8,insert:[2,8],insert_and_evict:[1,2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:7,integr:0,interest:0,intern:[1,2,8],introduc:[2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[7,9],io_by_cpu:[7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,just:2,kcustom:[7,8],keep:[2,8],kei:[0,1,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],law:7,lead:2,learn:1,least:[2,8],length:[2,9],less:[2,7,8],lfu:[7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[1,2,7],lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintian:[0,1],make:[1,7],make_uniqu:7,match:2,max:[7,8,9],max_bucket_s:[2,7,9],max_capac:[2,7,9],max_hbm_for_vector:[7,9],max_load_factor:[7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[2,9],mean:1,meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,meta_typ:1,method:2,might:2,million:1,min:7,minbucketcapacityfilt:7,minimum:[2,8],miss:2,mkdir:1,mode:[7,8],model:1,modifi:2,more:[1,2,8,13],most:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,namespac:[7,11],nanosecond:8,necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,noth:2,notic:2,now:2,nullptr:[2,7,8],number:2,numeric_limit:7,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:7,onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],org:7,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:0,pure:7,put:2,question:1,rais:2,ram:13,rate:1,reach:8,reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:2,respons:2,restraint:1,result:2,review:[0,1],run:7,runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,score:[2,7,8,10],score_s:7,score_typ:[2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectcontainskernel:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinecontainskernel:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,seper:2,serv:1,set:[2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[2,7,9],size_typ:[2,7],sizeof:7,slightli:8,slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:7,specifi:[2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:7,step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[1,2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],terabyt:1,test:[0,1],than:[2,7],thei:[2,8],thi:[0,2,7,10],third:2,thread:2,thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:7,unit:[0,1],unless:[2,7],unsaf:2,unsign:7,updat:2,update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,1,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:11,vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,version:[1,7],via:[0,8],warranti:7,websit:13,welcom:0,when:[0,1,2,7,8],whether:2,which:[2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,includ:3,kei:13,licenc:0,licens:1,list:7,maintainership:0,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file diff --git a/v0.1.0-beta.5/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt b/v0.1.0-beta.5/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt index cf63e848f..44e7a9eeb 100644 --- a/v0.1.0-beta.5/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt +++ b/v0.1.0-beta.5/_sources/api/program_listing_file_merlin_hashtable.cuh.rst.txt @@ -1044,6 +1044,39 @@ Program Listing for File merlin_hashtable.cuh CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel; + ContainsKernelParams containsParams( + table_->buckets, table_->buckets_num, static_cast(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.5/api/classnv_1_1merlin_1_1HashTable.html b/v0.1.0-beta.5/api/classnv_1_1merlin_1_1HashTable.html index 5eb7d98c9..72c6ec919 100644 --- a/v0.1.0-beta.5/api/classnv_1_1merlin_1_1HashTable.html +++ b/v0.1.0-beta.5/api/classnv_1_1merlin_1_1HashTable.html @@ -405,6 +405,22 @@

    Class Documentation +
    +inline void contains(const size_type n, const key_type *keys, bool *founds, cudaStream_t stream = 0) const
    +

    Checks if there are elements with key equivalent to keys in the table.

    +
    +
    Parameters
    +
      +
    • n – The number of keys to check.

    • +
    • keys – The keys to search on GPU-accessible memory with shape (n).

    • +
    • founds – The result that indicates if the keys are found, and should be allocated by caller on GPU-accessible memory with shape (n).

    • +
    • stream – The CUDA stream that is used to execute the operation.

    • +
    +
    +
    +

    +
    inline void erase(const size_type n, const key_type *keys, cudaStream_t stream = 0)
    diff --git a/v0.1.0-beta.5/api/program_listing_file_merlin_hashtable.cuh.html b/v0.1.0-beta.5/api/program_listing_file_merlin_hashtable.cuh.html index 3600b7fb6..27b259c71 100644 --- a/v0.1.0-beta.5/api/program_listing_file_merlin_hashtable.cuh.html +++ b/v0.1.0-beta.5/api/program_listing_file_merlin_hashtable.cuh.html @@ -1120,6 +1120,39 @@ CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel<key_type, value_type, + score_type, ArchTag>; + ContainsKernelParams<key_type, value_type, score_type> containsParams( + table_->buckets, table_->buckets_num, static_cast<uint32_t>(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel<key_type, value_type, score_type>; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.5/genindex.html b/v0.1.0-beta.5/genindex.html index a0e1e71e6..24095b195 100644 --- a/v0.1.0-beta.5/genindex.html +++ b/v0.1.0-beta.5/genindex.html @@ -124,6 +124,8 @@

    N

  • nv::merlin::HashTable::capacity (C++ function)
  • nv::merlin::HashTable::clear (C++ function) +
  • +
  • nv::merlin::HashTable::contains (C++ function)
  • nv::merlin::HashTable::dim (C++ function)
  • diff --git a/v0.1.0-beta.5/objects.inv b/v0.1.0-beta.5/objects.inv index 941b312e505818624873e91bd8bfc08daa13b7f5..0171569f4ca93c3e5134d935d078453f0c8b73f3 100644 GIT binary patch delta 4524 zcmV;d5mWBcB#g*&#y2r2M4V}%ruhO?4!YJ+h|+% z+Hxno5Bu9sQMS7!-@7Bqmq`#LGEG)}bz!lJl%?#U(;2$Spr3U*R}(dL*Zy|mY~SQ9 zGah&H$FXanmKyi}5iYIs-FfeBx2LAPTFk zr-||b8b9R|fOPj*AT$Ftoi30~^U2KQ*+Um~(E=S@RmPNgm-&)PubpgHK3-+BVS&Vj zi<*HTzQ*gN*nc{m`}ebHJ{tD_HX_;d=&N4`~8|dn+bOgv+EqD(&^5d)14$!mv`?5BdrEq7qncU^s~(5 z{ZUpsMz+fC>PF1^Sz!{Dng*IXSbjR9 zxRvbxI1oM`k+(8tHtdcjU0~F|%OZF@N>_MX-N-2<6W!onw>RS6JuWU$@}LH@uT&#F=qR?R7AXk@T#=&4@LNQYet2z5Yv`T*0Y8-13W_#868m%1e^L240)~v$Irwb^)4?yAVfJ|FNOhXM?EOLVsKv92t6THkf7oe*-0;eU^4O1^Bhu zq9An66I;*Bz0131G|TdDOpIO-QDbHL`C|+eVo7`_fPqt!2+3hu5WcFK zWDktk;p(NBMp>@}$IGe3yS~do`uJpJuz}Z=$t#3L-hHU%8 z7=N>j0Nq`|&ke_MLT_47J~+}8y`!7!rJ%w+Sus|Ig76lXc@em{<#nAnvvU9$dGW0c zX}9mc%`LCP{fAo);lz@~)icnK&pu5O?#t(Jxejx4?%}+sNJNlJ%9ZwgB^SN?(29o$-7$Rn{P_`_L8v7p`^od zKrCH8CsCDp_f<-6RsdpPV?Z7Vh_XX93kyH#>JR%}$xrma}tLDFeku~|8rwPJ0%F`Gq8SATe2 zJ!~yHk7eJ88$0K%lR7K2%g{(orOjn1Bm1t2g(hmtxGzH;_3tg8w?1l1n}R0Gzi*YD>4zQXRgZ*%;gWG!Wi)r$+^~J|EnN1J}EeN5B253H2XWh#GAX^$4LE zOB_#x8tsssxe>Cnw?O1=;AYHlOn)Kjv_;&_+=gs%L?LRlMZG`BII1X-cbA)St78gL zn=QgGq5Ij?P4XB|=%7^=2bpAtDCZ!{3oLW6ICUnurzcypPZv3sOP;8laZDQZ5h};C z;3Ex&GGDY8iGYKTHL4i9MNbeAy^!v#s3BT5e;`b!hgjvUff^& zAJK59Ay_>|>u3EKwHgg{uRh)&_SE#pIFO&-u0AtsH@4CPykaT5My#XxxD!VjysE3f z$BIHIMy1YHnY`k`9JjU3;Y*UbbO!u-1%x~8iVIikZ=o(hF-x^XEjCYoid>i?YIcsu zwbD7c$Aze(W(SF!C7zRmTz`lvYI2ZfccIV0PcBmY>l1UL(axC|B4afCSEhy*s;WGFt0e4hz+fh&4{<8R)6#Rzn)O;cu44A zq-=~kECSstNC@7ksk{07OMl?5(GB{HK3(0gxgrn!F-4#h?s8dqD{h@PF4PTnsJ?c; zj3)Qfu`;e3D4Y%SxRJ4DxLvQz>a90*J%9?87+k#qRQv~>y$WG)&BdEs*8H+AVCf2z zUGFP^EW=G6Vmy?eFMmjvBln?NS`38@&wc4`e4$N^lcE-&ap&!~K%AcL2Omw|~irN-F#ggZJ1q<5~Q<`owBKs!hdiRJE;Dz6U{U&g*a`YdQ#APY=6( zH0eILu+K1!k5O*mdKlEzEur|PF7LqXg*cnKu7RsuWy{#qfHpU9U4@$WCNl_^W3@qT z4{Fj6^tuZ$-5zkrixy#Ky)IHDmENU{q*Nk75|OgRQ-5YOL4+w{)i$ijGur^@{U5*o z`SJSQKmWY`{r_6i+;;59wA!duZZAl+-jA|;($}-RpWRi4{WP>cC_S3x?Oxwa)Wr1q zMh)&C3UULb-C!fZ&12q%#@4T;#+%RU+^p>fJ*z=`;{HABPu$RD`E)PCEyLbEwYNT& z+Sk~ck$(l*+td6J($+n^Dt+GO{5Rc7|8aM|s*`TuKVhN@q@G}cX~z5aL~wUyoVD7Wgmw~f)!9jP>uJ(Id`Byx3J$4gVu!ag8?X>}aWPhz+-+lP;*AG`8TJ!c+Xzx^6jb{^AjNi+o z+7qaUhQMNt>~uB`&x&rV%(lIAR>Nf9PI_bSPxHnWG`4FL{oT{zxYW^qqR+)t3ht#aDhan2-cr?)nJU2y4V)_q;2STxQ@ zSEohm{f|Fxh~HsMriN~Qwvj!o(kp+rSQwWrt?XfKcy}SqE;7qL>*SVsazS=H8Qo3P zusi5aLq^d(Sg8jOoCCO>cZXnAbboKbQm{wyn+u1laF^ky4ff5V&vrL6}edogCRK`8E=AUaFmh}(JatE_~WiG)ydVf<-$+ill zrXsNQc|oVOx%zx_Ktz0sv4?KY{}0rbyZZtB1Td$_@>J1OI)j~KN>ZG1?>V9=kI7nN zBND1GvIG<;Q{$*jv>;9!Zjg@2+9Qg=gHud&nj(ZS;+j&;giy>f6_qvhG@+6yC!F?_ zOM)m*g;zvijATUCIMtwRMt`YtFrRIjddUzb)TfdYo1mDi4M|nXkWQr6jDfkCbkt!$ z0VW_xOx7L?F{4pgYl_lTN?`~Je}(c89!TOCh2X#TlBq}xD8fj8at(1%zN>oZHXWH?Y^M9JCgz3Z!qJ%U? zDJQiRiS>%p#BdZ-;nZ1AX(AC<(o)Nq&;&aHF2F4_GUmL7;E`ZwAbe>;Y>KeeMAB4) z2RM;LwKc;=rCeAoV0wA%5=*R2ti{$KfFxqFrUY}&5RtInQpX8##1jZJf>?@W%#gx3 z<0*l>M`Q3gFg3WA^ph_Q8Go$dQ9T^!6CqNEBsLUQYsCd-$a)OE&$;q3S=+>T2I8vJ z>Y!pswo)RfrHCM##FQG6Aq6=BOl9U1%55sORtR(H6DBn`5m_q)IX1*`P8{a2U|Ipe zB%#h2K{O<4FwGW%I$XY4JFYAB_%J^-yK#^0 z&*4^jm;|GVx^r(%(6Av!pWfsvP=#Br)@(6;Y%jl9D0^gQe_+nJRo2cvE8x~nKYw^? zX+!_YQRvoV(5)0J2cZ?p3oqP!IQp`K(F*sM9gY65=-ys*Z*QLcUA}b>O^hagI6v{x-~?Lyu}-w=f5%JD_uLVlSoD2_(ppFbQ=ic1$tH5{0#( zRyP7dq#DvTf5w%EQlAU%89)(|D-6YoLFgnvC}I-imDG%&1WRqac8J4YWT_>Ri_<_! zQR)#&sTVqt4jCe#=<||l>KLOoJq?s8!yF@lrIXY$rFq!Tow5awipglZ59EJ%`jN2G^|#267w z63itw#2U#rom)qPA`^){uuWj?rho$Ci*XRpF-FKhxzS7@6a&Rqao)*vY8J}66AtvjL7Y-faVs@(;r0Rxv6gaAZG%u83t%|nBGH&rtH3(OA`bJJBkl3G KL-~JUWc8fF#K#H% delta 4454 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 sCNA7wU}3JM+*8{i6vqM>j<`rP=F}>%j; + ContainsKernelParams containsParams( + table_->buckets, table_->buckets_num, static_cast(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.6/api/classnv_1_1merlin_1_1HashTable.html b/v0.1.0-beta.6/api/classnv_1_1merlin_1_1HashTable.html index 0d1d250a2..e07f6066f 100644 --- a/v0.1.0-beta.6/api/classnv_1_1merlin_1_1HashTable.html +++ b/v0.1.0-beta.6/api/classnv_1_1merlin_1_1HashTable.html @@ -405,6 +405,22 @@

    Class Documentation +
    +inline void contains(const size_type n, const key_type *keys, bool *founds, cudaStream_t stream = 0) const
    +

    Checks if there are elements with key equivalent to keys in the table.

    +
    +
    Parameters
    +
      +
    • n – The number of keys to check.

    • +
    • keys – The keys to search on GPU-accessible memory with shape (n).

    • +
    • founds – The result that indicates if the keys are found, and should be allocated by caller on GPU-accessible memory with shape (n).

    • +
    • stream – The CUDA stream that is used to execute the operation.

    • +
    +
    +
    +

    +
    inline void erase(const size_type n, const key_type *keys, cudaStream_t stream = 0)
    diff --git a/v0.1.0-beta.6/api/program_listing_file_merlin_hashtable.cuh.html b/v0.1.0-beta.6/api/program_listing_file_merlin_hashtable.cuh.html index 7962c6dff..251e843f4 100644 --- a/v0.1.0-beta.6/api/program_listing_file_merlin_hashtable.cuh.html +++ b/v0.1.0-beta.6/api/program_listing_file_merlin_hashtable.cuh.html @@ -1120,6 +1120,39 @@ CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel<key_type, value_type, + score_type, ArchTag>; + ContainsKernelParams<key_type, value_type, score_type> containsParams( + table_->buckets, table_->buckets_num, static_cast<uint32_t>(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel<key_type, value_type, score_type>; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.6/genindex.html b/v0.1.0-beta.6/genindex.html index 083e4a5c0..6522c6334 100644 --- a/v0.1.0-beta.6/genindex.html +++ b/v0.1.0-beta.6/genindex.html @@ -124,6 +124,8 @@

    N

  • nv::merlin::HashTable::capacity (C++ function)
  • nv::merlin::HashTable::clear (C++ function) +
  • +
  • nv::merlin::HashTable::contains (C++ function)
  • nv::merlin::HashTable::dim (C++ function)
  • diff --git a/v0.1.0-beta.6/objects.inv b/v0.1.0-beta.6/objects.inv index 941b312e505818624873e91bd8bfc08daa13b7f5..0171569f4ca93c3e5134d935d078453f0c8b73f3 100644 GIT binary patch delta 4524 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 KL-~JUWc8fF#K#H% delta 4454 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 sCNA7wU}3JM+*8{i6vqM>j<`rP=F}>%j; + ContainsKernelParams containsParams( + table_->buckets, table_->buckets_num, static_cast(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.7/api/classnv_1_1merlin_1_1HashTable.html b/v0.1.0-beta.7/api/classnv_1_1merlin_1_1HashTable.html index 53a50f661..80b91e97a 100644 --- a/v0.1.0-beta.7/api/classnv_1_1merlin_1_1HashTable.html +++ b/v0.1.0-beta.7/api/classnv_1_1merlin_1_1HashTable.html @@ -405,6 +405,22 @@

    Class Documentation +
    +inline void contains(const size_type n, const key_type *keys, bool *founds, cudaStream_t stream = 0) const
    +

    Checks if there are elements with key equivalent to keys in the table.

    +
    +
    Parameters
    +
      +
    • n – The number of keys to check.

    • +
    • keys – The keys to search on GPU-accessible memory with shape (n).

    • +
    • founds – The result that indicates if the keys are found, and should be allocated by caller on GPU-accessible memory with shape (n).

    • +
    • stream – The CUDA stream that is used to execute the operation.

    • +
    +
    +
    +

    +
    inline void erase(const size_type n, const key_type *keys, cudaStream_t stream = 0)
    diff --git a/v0.1.0-beta.7/api/program_listing_file_merlin_hashtable.cuh.html b/v0.1.0-beta.7/api/program_listing_file_merlin_hashtable.cuh.html index 9bba41ea5..6fbd62ae1 100644 --- a/v0.1.0-beta.7/api/program_listing_file_merlin_hashtable.cuh.html +++ b/v0.1.0-beta.7/api/program_listing_file_merlin_hashtable.cuh.html @@ -1120,6 +1120,39 @@ CudaCheckError(); } + void contains(const size_type n, const key_type* keys, // (n) + bool* founds, // (n) + cudaStream_t stream = 0) const { + if (n == 0) { + return; + } + + read_shared_lock lock(mutex_, stream); + + if (options_.max_bucket_size == 128) { + // Pipeline lookup kernel only supports "bucket_size = 128". + using Selector = SelectPipelineContainsKernel<key_type, value_type, + score_type, ArchTag>; + ContainsKernelParams<key_type, value_type, score_type> containsParams( + table_->buckets, table_->buckets_num, static_cast<uint32_t>(dim()), + keys, founds, n); + Selector::select_kernel(containsParams, stream); + } else { + using Selector = SelectContainsKernel<key_type, value_type, score_type>; + static thread_local int step_counter = 0; + static thread_local float load_factor = 0.0; + + if (((step_counter++) % kernel_select_interval_) == 0) { + load_factor = fast_load_factor(0, stream, false); + } + Selector::execute_kernel(load_factor, options_.block_size, + options_.max_bucket_size, table_->buckets_num, + options_.dim, stream, n, d_table_, + table_->buckets, keys, founds); + } + CudaCheckError(); + } + void erase(const size_type n, const key_type* keys, cudaStream_t stream = 0) { if (n == 0) { return; diff --git a/v0.1.0-beta.7/genindex.html b/v0.1.0-beta.7/genindex.html index 6fcd4afa6..fdcbf6dd5 100644 --- a/v0.1.0-beta.7/genindex.html +++ b/v0.1.0-beta.7/genindex.html @@ -124,6 +124,8 @@

    N

  • nv::merlin::HashTable::capacity (C++ function)
  • nv::merlin::HashTable::clear (C++ function) +
  • +
  • nv::merlin::HashTable::contains (C++ function)
  • nv::merlin::HashTable::dim (C++ function)
  • diff --git a/v0.1.0-beta.7/objects.inv b/v0.1.0-beta.7/objects.inv index c9dde02bd04db81061b14beb3b391c8d32f2a034..82095970b860ec0c0493e49f388f1672b0944c8f 100644 GIT binary patch delta 4654 zcmV+}64C90CBP++h<{s;+c>g*&#y2r2M4V}%ruhO?4!YJTWDMM z+Hxno5Bu9sQMS9~ySpRGmq`#LGEG)}bz!lJl%@Qk(;2vNKg&CvtFfB6Ykxa-HZw)b zj7FW}apYR4rAFC5!liY-JL}!;_SB?TDBX8mVWzz`-%^!{}^K8kwj{eI1!&4fFL*>w(6>2&AK=}wY~E4p|6p;rB_3tBEw`e|;8 zY?#-Mk*%`3x)IYXFBt6>FT>gCti!FQM@PZ@E978*hJPGvEhj3kSJ6CmUrEK1Znl(; z$)}E2+Zc8_Z^s5M@3!WP@ewRbzv4rOv){(yQP7S(+K3Jl)hRN1Yd+vh5KY@q~QNKH>`t>DB3k)vTl=;OP|TFWYR-NTT_(S4HIB6iv%PA3jn3=UX*s-VYzK(|DqN`Q0`KF|AFA1w0DmttN z#LDG!617zCzDmi>igvSEwnzd&?l`Nm-8fp}bRxEkTrT}3rEJ<+^UF71eyO$_dOvZ+ z5fwjj_#71L19VdMu&V=Y#uj;CeUm=(k@rq5k6vQKK!Q9w9Vi ziQ|b-qaE@yH$r~)7KpqJ+>9BHDSt$rwurl#+mJ1eC`666sP_jMM-?UV?s7A3bxa{@ zvqktNbe2!txQOwD4!X?ZAd~D6si|Ii9^vL$F9ji~IDRBO2`_1dC&|_`iTZqTx zRu)1rDs{HX#Uy{_7GvL=NAlzwJUbtF+3v~&KS*Rsyv3dGaj~wKhlKWr z%Eq|EBGA2pgy5Z;xSP+vWPNvyZqR4+>FS2f6nW^6DFUT%m&?jqaqGNsp>D7P^|kwD zIKH2ZlyTia;cTGCjf^$J?RsTaZ@sDO0aU2M;OZ5i;y>u@RS1J?&fny+=9hH=OIMie zdS3x#8E*U#dOiBIyk$MY9THt1S0}3_o62Ub>

    ULM?jZDTK?B+Mu=v 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 diff --git a/v0.1.0-beta.7/searchindex.js b/v0.1.0-beta.7/searchindex.js index 8037725c3..c7be35f01 100644 --- a/v0.1.0-beta.7/searchindex.js +++ b/v0.1.0-beta.7/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"010":1,"015":1,"022":1,"041":1,"044":1,"048":1,"049":1,"052":1,"062":1,"068":1,"069":1,"070":1,"072":1,"073":1,"081":1,"082":1,"083":1,"085":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":[1,8],"0xfffffffffffffffc":1,"0xfffffffffffffffd":1,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"106":1,"110":1,"111":1,"113":1,"115":1,"123":1,"128":[1,7,9],"128u":7,"129":1,"131":1,"136":1,"148":1,"153":1,"179":1,"180":1,"185":1,"2022":7,"2023":1,"261":1,"269":1,"277":1,"293":1,"298":1,"299":1,"304":1,"305":1,"309":1,"321":1,"322":1,"325":1,"32bit":[1,8],"334":1,"335":1,"346":1,"349":1,"360":1,"366":1,"371":1,"373":1,"393":1,"394":1,"396":1,"399":1,"470":1,"473":1,"512":1,"517":1,"530":1,"541":1,"543":1,"561":1,"567":1,"578":1,"579":1,"580":1,"587":1,"590":1,"651":1,"662":1,"683":1,"701":1,"706":1,"720":1,"730":1,"754":1,"759":1,"766":1,"771":1,"777":1,"791":1,"798":1,"801":1,"804":1,"807":1,"80gb":1,"813":1,"825":1,"840":1,"849":1,"854":1,"862":1,"863":1,"864":1,"873":1,"874":1,"894":1,"911":1,"926":1,"929":1,"930":1,"932":1,"934":1,"939":1,"983":1,"994":1,"\u03bb":1,"boolean":2,"byte":[1,9],"char":[1,7],"class":[1,7,10,11],"const":[2,7,8,10],"default":[1,2,9],"enum":[7,8],"export":[1,2,10],"float":[1,2,7,9],"function":[1,2,8,10],"import":[1,2,8],"int":[1,2,7,9],"new":[1,2,7],"public":[0,1,2,7,8,9],"return":[1,2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],The:[0,1,2,7,8,9,10],Use:1,Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[1,2,7],accum_or_assign_kernel:7,accumul:2,actual:2,add:1,added:2,address:[1,2],adher:0,advanc:1,advertis:1,after:[1,8],agre:7,algorithm:2,all:[0,1,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argc:1,argument:2,argv:1,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],bash:1,basi:7,basic:[1,2],batch:[2,7],bazel_build:1,bazelrc:1,becaus:2,been:[1,7],befor:[0,1,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:[1,9],block_siz:[1,7,9],blockquot:8,bool:[1,2,7,9,10],bring:13,bucket:[1,2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[1,2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:[1,2],challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:[1,8],clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,compil:1,complianc:7,comput:1,concept:8,concurr:2,condit:[1,2,7],conduct:[0,2],configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:[1,8],constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,contain:1,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:[1,8],count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[1,2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:[1,10],d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[1,2,8,9,10,12],definit:[1,11],delet:7,delta:[1,2,7],denot:2,dep:7,descript:1,design:[0,1],destroi:2,destroy_t:7,detail:1,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[1,2,7,8,9],device_clock:[1,8],device_id:[1,7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:[1,8],difficult:1,dim:[1,2,7,9],dimens:[1,2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,docker:1,document:[0,7,13],doe:2,doesn:2,don:1,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,1,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[1,7,8],epochlfu:1,epochlru:1,equal:[1,2,7,8],eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[1,2,7],export_batch_if:[1,2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[1,2,7,9],fast_load_factor:7,featur:[0,1],file:[1,2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],firstli:1,fix:[0,1],flag:[1,9],flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[1,2,7],fourth:2,free:[2,7],frequenc:[1,2,8],from:[1,2,8,10],full:[1,2,8],fulli:[1,8],functor:2,futur:2,gcc:1,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:[1,8],global_epoch:[1,7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:[1,8],grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:[1,9],happen:1,has:[1,2],hash:[1,2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,highli:1,hkvtabl:1,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,hot:1,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,imag:1,implement:1,impli:7,improv:1,includ:[0,1,7,11],increas:8,increment:[1,8],indic:[1,2,9,10],industri:1,inform:13,init:[1,2,7],init_capac:[1,7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:[1,8],insert:[1,2,8],insert_and_evict:[1,2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:[1,7],integr:0,interest:0,intern:[1,2,8],introduc:[1,2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[1,7,9],io_by_cpu:[1,7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,june:1,just:2,kcustom:[7,8],keep:[1,2,8],kei:[0,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[1,2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],later:1,law:7,lead:2,learn:1,least:[1,2,8],length:[1,2,9],less:[1,2,7,8],lfu:[1,7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[1,2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[2,7],local:1,lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintain:1,maintian:[0,1],make:[1,7],make_uniqu:[1,7],manag:1,match:[1,2],max:[1,7,8,9],max_bucket_s:[1,2,7,9],max_capac:[1,2,7,9],max_hbm_for_vector:[1,7,9],max_load_factor:[1,7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[1,2,9],mean:1,meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[1,2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,method:2,might:2,million:1,min:7,minbucketcapacityfilt:7,minimum:[1,2,8],miss:[1,2],mkdir:1,mode:[7,8],model:1,modifi:[1,2],more:[1,2,8,13],most:1,move:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,name:1,namespac:[7,11],nanosecond:[1,8],necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,note:1,noth:2,notic:2,now:2,nullptr:[2,7,8],number:[1,2],numeric_limit:7,nvcr:1,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:[1,7],onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],order:1,org:7,origin:1,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwrit:1,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[1,2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,pointer:1,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:[0,1],pure:7,put:2,py3:1,question:1,rais:2,ram:13,reach:[1,8],reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,real:1,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[1,2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:[1,2],respons:2,restraint:1,review:[0,1],run:[1,7],runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,scenario:1,score:[1,2,7,8,10],score_s:7,score_typ:[1,2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,separ:1,seper:2,serv:1,set:[1,2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[1,2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[1,2,7,9],size_typ:[2,7],sizeof:7,slightli:[1,8],slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,someth:1,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:[1,7],specifi:[1,2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,standard:1,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:[1,7],step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,tableopt:1,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],tensorflow:1,terabyt:1,test:[0,1],tf2:1,than:[2,7],thei:[1,2,8],them:1,thi:[0,2,7,10],third:2,thread:[1,2],thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[1,2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:[1,7],unit:[0,1],unless:[2,7],unsaf:[1,2],unsign:7,updat:[1,2],update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valid:1,valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:[1,11],vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,verifi:1,version:[1,7],via:[0,1,8],warmup:1,warranti:7,websit:13,welcom:0,well:1,when:[0,1,2,7,8],whether:2,which:[1,2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,world:1,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],configur:1,content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evict:1,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,idea:1,includ:3,kei:[1,13],licenc:0,licens:1,list:7,maintainership:0,matrix:1,matur:1,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,option:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,strategi:1,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,use:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file +Search.setIndex({docnames:["CONTRIBUTING","README","api/classnv_1_1merlin_1_1HashTable","api/file_merlin_hashtable.cuh","api/index","api/namespace_nv","api/namespace_nv__merlin","api/program_listing_file_merlin_hashtable.cuh","api/structnv_1_1merlin_1_1EvictStrategy","api/structnv_1_1merlin_1_1HashTableOptions","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a","api/unabridged_orphan","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["CONTRIBUTING.md","README.md","api/classnv_1_1merlin_1_1HashTable.rst","api/file_merlin_hashtable.cuh.rst","api/index.rst","api/namespace_nv.rst","api/namespace_nv__merlin.rst","api/program_listing_file_merlin_hashtable.cuh.rst","api/structnv_1_1merlin_1_1EvictStrategy.rst","api/structnv_1_1merlin_1_1HashTableOptions.rst","api/typedef_merlin__hashtable_8cuh_1a5001706db6e977358e7f76ad6773703a.rst","api/unabridged_orphan.rst","api/variable_merlin__hashtable_8cuh_1a359fe56354918308560f46cb3136a3da.rst","index.rst"],objects:{"":{"nv::merlin::EraseIfPredict":[10,0,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::K":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EraseIfPredict::S":[10,1,1,"_CPPv4I00EN2nv6merlin14EraseIfPredictE"],"nv::merlin::EvictStrategy":[8,2,1,"_CPPv4N2nv6merlin13EvictStrategyE"],"nv::merlin::EvictStrategy::EvictStrategyEnum":[8,3,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnumE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::EvictStrategyEnum::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::kCustomized":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum11kCustomizedE"],"nv::merlin::EvictStrategy::kEpochLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLfuE"],"nv::merlin::EvictStrategy::kEpochLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum9kEpochLruE"],"nv::merlin::EvictStrategy::kLfu":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLfuE"],"nv::merlin::EvictStrategy::kLru":[8,4,1,"_CPPv4N2nv6merlin13EvictStrategy17EvictStrategyEnum4kLruE"],"nv::merlin::EvictStrategy::set_global_epoch":[8,5,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::EvictStrategy::set_global_epoch::epoch":[8,6,1,"_CPPv4N2nv6merlin13EvictStrategy16set_global_epochEK8uint64_t"],"nv::merlin::HashTable":[2,2,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::ArchTag":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTable9HashTableEv"],"nv::merlin::HashTable::K":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Pred":[2,0,1,"_CPPv4N2nv6merlin9HashTable4PredE"],"nv::merlin::HashTable::S":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::Strategy":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::V":[2,1,1,"_CPPv4I000_i0EN2nv6merlin9HashTableE"],"nv::merlin::HashTable::accum_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::accum_or_assigns":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::accum_or_assign::value_or_deltas":[2,6,1,"_CPPv4N2nv6merlin9HashTable15accum_or_assignEK9size_typePK8key_typePK10value_typePKbPK10score_type12cudaStream_tb"],"nv::merlin::HashTable::allocator_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable14allocator_typeE"],"nv::merlin::HashTable::assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable6assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tb"],"nv::merlin::HashTable::bucket_count":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12bucket_countEv"],"nv::merlin::HashTable::capacity":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8capacityEv"],"nv::merlin::HashTable::clear":[2,5,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::clear::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5clearE12cudaStream_t"],"nv::merlin::HashTable::contains":[2,5,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::contains::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable8containsEK9size_typePK8key_typePb12cudaStream_t"],"nv::merlin::HashTable::dim":[2,5,1,"_CPPv4NK2nv6merlin9HashTable3dimEv"],"nv::merlin::HashTable::empty":[2,5,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::empty::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable5emptyE12cudaStream_t"],"nv::merlin::HashTable::erase":[2,5,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable5eraseEK9size_typePK8key_type12cudaStream_t"],"nv::merlin::HashTable::erase_if":[2,5,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::PredFunctor":[2,1,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::pattern":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::stream":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::erase_if::threshold":[2,6,1,"_CPPv4II00E0EN2nv6merlin9HashTable8erase_ifE9size_typeRK8key_typeRK10score_type12cudaStream_t"],"nv::merlin::HashTable::evict_strategy":[2,7,1,"_CPPv4N2nv6merlin9HashTable14evict_strategyE"],"nv::merlin::HashTable::export_batch":[2,5,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::d_counter":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchE9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::offset":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable12export_batchEK9size_typeK9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if":[2,5,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::PredFunctor":[2,1,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::d_counter":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::keys":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::n":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::offset":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::pattern":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::scores":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::stream":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::threshold":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::export_batch_if::values":[2,6,1,"_CPPv4II00E0ENK2nv6merlin9HashTable15export_batch_ifEvRK8key_typeRK10score_type9size_typeK9size_typeP9size_typeP8key_typeP10value_typeP10score_type12cudaStream_t"],"nv::merlin::HashTable::find":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::founds":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::keys":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::n":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::scores":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::unique_key":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find::values":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4findEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tb"],"nv::merlin::HashTable::find_or_insert":[2,5,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::founds":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::find_or_insert::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable14find_or_insertEK9size_typePK8key_typePP10value_typePbP10score_type12cudaStream_tbb"],"nv::merlin::HashTable::init":[2,5,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::allocator":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::init::options":[2,6,1,"_CPPv4N2nv6merlin9HashTable4initERK16HashTableOptionsP14allocator_type"],"nv::merlin::HashTable::insert_and_evict":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::d_evicted_counter":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::evicted_values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_and_evict::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_and_evictEK9size_typePK8key_typePK10value_typePK10score_typeP8key_typeP10value_typeP10score_typeP9size_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign":[2,5,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::ignore_evict_strategy":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::keys":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::n":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::scores":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::unique_key":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::insert_or_assign::values":[2,6,1,"_CPPv4N2nv6merlin9HashTable16insert_or_assignEK9size_typePK8key_typePK10value_typePK10score_type12cudaStream_tbb"],"nv::merlin::HashTable::key_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable8key_typeE"],"nv::merlin::HashTable::load":[2,5,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::file":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::max_workspace_size":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable4loadEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::load_factor":[2,5,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::load_factor::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable11load_factorE12cudaStream_t"],"nv::merlin::HashTable::max_bucket_size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable15max_bucket_sizeEv"],"nv::merlin::HashTable::reserve":[2,5,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::new_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::reserve::stream":[2,6,1,"_CPPv4N2nv6merlin9HashTable7reserveEK9size_type12cudaStream_t"],"nv::merlin::HashTable::save":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::file":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::max_workspace_size":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::save::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4saveEP10BaseKVFileI1K1V1SEK6size_t12cudaStream_t"],"nv::merlin::HashTable::score_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10score_typeE"],"nv::merlin::HashTable::set_max_capacity":[2,5,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::set_max_capacity::new_max_capacity":[2,6,1,"_CPPv4N2nv6merlin9HashTable16set_max_capacityE9size_type"],"nv::merlin::HashTable::size":[2,5,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size::stream":[2,6,1,"_CPPv4NK2nv6merlin9HashTable4sizeE12cudaStream_t"],"nv::merlin::HashTable::size_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable9size_typeE"],"nv::merlin::HashTable::value_type":[2,0,1,"_CPPv4N2nv6merlin9HashTable10value_typeE"],"nv::merlin::HashTable::~HashTable":[2,5,1,"_CPPv4N2nv6merlin9HashTableD0Ev"],"nv::merlin::HashTableOptions":[9,2,1,"_CPPv4N2nv6merlin16HashTableOptionsE"],"nv::merlin::HashTableOptions::block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions10block_sizeE"],"nv::merlin::HashTableOptions::device_id":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9device_idE"],"nv::merlin::HashTableOptions::device_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions18device_memory_poolE"],"nv::merlin::HashTableOptions::dim":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions3dimE"],"nv::merlin::HashTableOptions::host_memory_pool":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions16host_memory_poolE"],"nv::merlin::HashTableOptions::init_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13init_capacityE"],"nv::merlin::HashTableOptions::io_block_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions13io_block_sizeE"],"nv::merlin::HashTableOptions::io_by_cpu":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions9io_by_cpuE"],"nv::merlin::HashTableOptions::max_bucket_size":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_bucket_sizeE"],"nv::merlin::HashTableOptions::max_capacity":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions12max_capacityE"],"nv::merlin::HashTableOptions::max_hbm_for_vectors":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19max_hbm_for_vectorsE"],"nv::merlin::HashTableOptions::max_load_factor":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions15max_load_factorE"],"nv::merlin::HashTableOptions::use_constant_memory":[9,7,1,"_CPPv4N2nv6merlin16HashTableOptions19use_constant_memoryE"],"nv::merlin::thrust_par":[12,7,1,"_CPPv4N2nv6merlin10thrust_parE"]}},objnames:{"0":["cpp","type","C++ type"],"1":["cpp","templateParam","C++ template parameter"],"2":["cpp","class","C++ class"],"3":["cpp","enum","C++ enum"],"4":["cpp","enumerator","C++ enumerator"],"5":["cpp","function","C++ function"],"6":["cpp","functionParam","C++ function parameter"],"7":["cpp","member","C++ member"]},objtypes:{"0":"cpp:type","1":"cpp:templateParam","2":"cpp:class","3":"cpp:enum","4":"cpp:enumerator","5":"cpp:function","6":"cpp:functionParam","7":"cpp:member"},terms:{"010":1,"015":1,"022":1,"041":1,"044":1,"048":1,"049":1,"052":1,"062":1,"068":1,"069":1,"070":1,"072":1,"073":1,"081":1,"082":1,"083":1,"085":1,"0x1":2,"0xffff000000000000":10,"0xffffffff":[1,8],"0xfffffffffffffffc":1,"0xfffffffffffffffd":1,"0xfffffffffffffffe":1,"0xffffffffffffffff":1,"101600":7,"1024":[1,2,7,9],"1024ul":7,"1048576":1,"106":1,"110":1,"111":1,"113":1,"115":1,"123":1,"128":[1,7,9],"128u":7,"129":1,"131":1,"136":1,"148":1,"153":1,"179":1,"180":1,"185":1,"2022":7,"2023":1,"261":1,"269":1,"277":1,"293":1,"298":1,"299":1,"304":1,"305":1,"309":1,"321":1,"322":1,"325":1,"32bit":[1,8],"334":1,"335":1,"346":1,"349":1,"360":1,"366":1,"371":1,"373":1,"393":1,"394":1,"396":1,"399":1,"470":1,"473":1,"512":1,"517":1,"530":1,"541":1,"543":1,"561":1,"567":1,"578":1,"579":1,"580":1,"587":1,"590":1,"651":1,"662":1,"683":1,"701":1,"706":1,"720":1,"730":1,"754":1,"759":1,"766":1,"771":1,"777":1,"791":1,"798":1,"801":1,"804":1,"807":1,"80gb":1,"813":1,"825":1,"840":1,"849":1,"854":1,"862":1,"863":1,"864":1,"873":1,"874":1,"894":1,"911":1,"926":1,"929":1,"930":1,"932":1,"934":1,"939":1,"983":1,"994":1,"\u03bb":1,"boolean":2,"byte":[1,9],"char":[1,7],"class":[1,7,10,11],"const":[2,7,8,10],"default":[1,2,9],"enum":[7,8],"export":[1,2,10],"float":[1,2,7,9],"function":[1,2,8,10],"import":[1,2,8],"int":[1,2,7,9],"new":[1,2,7],"public":[0,1,2,7,8,9],"return":[1,2,7,10],"static":[2,7,8,12],"super":1,"throw":[2,7],"true":[2,7,10],"void":[2,7,8],"while":[2,7,8],For:[1,8,13],The:[0,1,2,7,8,9,10],Use:1,Used:8,__device__:[2,10],__forceinline__:[2,10],a100:1,about:13,abov:0,access:[2,7],accommod:2,accum:2,accum_or_assign:[1,2,7],accum_or_assign_kernel:7,accumul:2,actual:2,add:1,added:2,address:[1,2],adher:0,advanc:1,advertis:1,after:[1,8],agre:7,algorithm:2,all:[0,1,2,10],allevi:1,alloc:[2,3,7],allocator_:7,allocator_typ:[2,7],allow:7,alreadi:2,also:[0,1,2],alwai:7,amount:[2,7],ani:[0,1,2,7,8],anoth:2,answer:1,anymor:7,anywai:2,apach:[0,1,7],api:[0,2,8,10],appli:2,applic:7,appropri:2,archtag:[2,7],argc:1,argument:2,argv:1,array_kernel:[3,7],assign:[1,2,7,8],assum:2,atom:[3,7],atomic_bool:7,attempt:7,attribut:2,auto:[7,12],automat:[2,8],avail:13,averag:2,avoid:7,bandwidth:[0,1,13],base:[1,7],basealloc:[2,7],basekvfil:[2,7],bash:1,basi:7,basic:[1,2],batch:[2,7],bazel_build:1,bazelrc:1,becaus:2,been:[1,7],befor:[0,1,2,9],below:1,benchmark_util:1,better:1,billion:1,binari:1,bit:8,block:[1,9],block_siz:[1,7,9],blockquot:8,bool:[1,2,7,9,10],bring:13,bucket:[1,2,7,8,9],bucket_count:[2,7],bucket_max_s:7,bucket_s:7,buckets_num:7,buckets_s:7,bug:[0,1],bypass:1,cach:7,call:[2,7],callabl:7,caller:[1,2,8],can:[0,1,2],capabl:[0,1],capac:[1,2,7,9],certain:[1,2],challeng:1,chang:[0,2,7],check:2,check_evict_strategi:7,chunk:2,clear:[2,7],clear_kernel:7,clock:[1,8],clone:1,close:[1,8],cluster:1,code:1,com:[0,1,13],command:1,comment:1,common:1,commun:1,compact:2,compil:1,complianc:7,comput:1,concept:8,concurr:2,condit:[1,2,7],conduct:[0,2],configur:[2,9],conform:2,confrom:2,consid:2,consider:2,consist:2,constant:[1,8],constexpr:[2,7,12],construct:7,constructor:2,consumpt:1,contain:[1,2,7],containskernelparam:7,containsparam:7,content:7,contribut:1,control:1,copi:7,copyright:7,core_kernel:[3,7],corpor:7,correspond:2,could:[1,8],count:7,counter:7,cpu:[1,9],creat:[1,7],create_t:7,criteria:0,cstdint:[3,7],cuda:[1,2,7,9,12],cuda_check:7,cudacheckerror:7,cudadeviceprop:7,cudadevicesynchron:7,cudaexcept:2,cudagetdevic:7,cudagetdeviceproperti:7,cudamemcpi:7,cudamemcpyasync:7,cudamemcpydefault:7,cudamemcpydevicetohost:7,cudamemcpyhosttodevic:7,cudamemsetasync:7,cudasetdevic:7,cudastream_t:[2,7],cudastreamsynchron:7,cuh:[1,2,4,8,9,10,11,12],current:[2,7],custom:[1,2,7,8],customiz:[1,10],d_count:7,d_counter:[2,7],d_dst:7,d_dst_ptr:7,d_evicted_count:[2,7],d_kei:7,d_mask:7,d_offset:7,d_score:7,d_src_offset:7,d_src_offset_ptr:7,d_table_:7,d_table_value_addr:7,d_valu:7,data:[2,7],dcmake_build_typ:1,default_allocator_:7,defaultalloc:7,defer_lock:7,defin:[1,2,8,9,10,12],definit:[1,11],delet:7,delta:[1,2,7],denot:2,dep:7,descript:1,design:[0,1],destroi:2,destroy_t:7,detail:1,dev_mem_pool_:7,dev_w:7,dev_ws_siz:7,develop:13,devic:[1,2,7,8,9],device_clock:[1,8],device_id:[1,7,9],device_memory_pool:[7,9],device_ptr:7,device_vector:[3,7],devicealloc:7,devicememorypool:7,deviceprop:7,differ:[1,8],difficult:1,dim:[1,2,7,9],dimens:[1,2,9],directli:[1,2],discuss:0,distribut:7,divid:2,dlrm:1,doc:1,docker:1,document:[0,7,13],doe:2,doesn:2,don:1,doubl:2,double_capac:7,dsm:1,dst:7,dst_offset:7,dst_offset_ptr:7,dst_ptr:7,dump:[2,7],dump_kernel:7,dump_kernel_shared_memory_s:7,each:[0,1,2,8,9],effici:1,either:7,element:2,els:7,embed:[0,1],empti:[2,7],empty_kei:7,encount:1,end:[0,1],end_i:7,endif:7,engin:1,enough:7,enumer:8,environ:1,epoch:[1,7,8],epochlfu:1,epochlru:1,equal:[1,2,7,8],equival:2,eras:[2,7,10],erase_if:[2,7,10],eraseifpredfunctor:[2,10],eraseifpredict:[2,3,4,6,7],error:2,evalu:1,evcted_scor:2,even:2,evict:[2,7,8],evict_strategi:[2,7],evicted_kei:[2,7],evicted_scor:[2,7],evicted_valu:[2,7],evictstrategi:[1,2,3,4,6,7],evictstrategyenum:[7,8],evictstrategyparam:7,exampl:[2,10],exceed:2,except:[2,7],exclus:7,execut:2,execute_kernel:7,execution_polici:[3,7],exist:2,expect:2,export_batch:[1,2,7],export_batch_if:[1,2,7,10],exportifpredfunctor:[2,10],express:7,extern:1,face:1,factor:[1,2,9],fals:[1,2,7,9],fast_load_factor:7,featur:[0,1],file:[1,2,8,9,10,12],filesystem:2,filter_condit:7,find:[1,2,7],find_or_insert:[1,2,7],find_or_insert_kernel:7,find_or_insert_kernel_lock_key_hybrid:7,find_or_insert_ptr_kernel_lock_kei:7,find_or_insert_ptr_kernel_unlock_kei:7,first:[2,7,8],firstli:1,fix:[0,1],flag:[1,9],flexible_buff:[3,7],float32:1,follow:[0,1,2],format:2,found:[1,2,7],fourth:2,free:[2,7],frequenc:[1,2,8],from:[1,2,8,10],full:[1,2,8],fulli:[1,8],functor:2,futur:2,gcc:1,gener:[0,1],get:[1,7],get_workspac:7,git:1,github:[0,1,13],global:[1,8],global_epoch:[1,7,8],govern:7,gpu:[0,1,2,7,13],gpu_boolean_mask:7,grab:7,granular:[1,8],grate:[0,1],greater:2,grid_siz:7,group_lock:[3,7],group_shared_mutex:7,growth:1,guarante:2,guid:0,h_dst:7,h_evicted_count:7,h_found:7,h_kei:7,h_param_key_index:7,h_param_valu:7,h_score:7,h_size:7,h_src_offset:7,h_table_value_addr:7,h_valu:7,handl:[1,9],happen:1,has:[1,2],hash:[1,2,9,10],hashtabl:[1,3,4,6,7],hashtableopt:[1,2,3,4,6,7],have:[1,7],hbm:[0,2,7,9,13],header:1,help:1,hierarch:[0,1,2,13],hierarchicalkv:[2,7,9,13],high:[0,1,2,8,13],higher:2,highli:1,hkvtabl:1,hold:7,host:[0,1,2,7,8,9,13],host_mem_pool_:7,host_memory_pool:[7,9],host_w:7,host_ws_siz:7,hostalloc:7,hostmemorypool:7,hot:1,how:0,http:[0,1,7,13],ignor:2,ignore_evict_strategi:[2,7],ignored_global_epoch:7,imag:1,implement:1,impli:7,improv:1,includ:[0,1,7,11],increas:8,increment:[1,8],indic:[1,2,9,10],industri:1,inform:13,init:[1,2,7],init_capac:[1,7,9],initi:[1,2,9],initialized_:7,inlin:[2,7,8],input:[1,8],insert:[1,2,8],insert_and_evict:[1,2,7],insert_or_assign:[1,2,7],insert_unique_lock:7,int64_t:[1,7],integr:0,interest:0,intern:[1,2,8],introduc:[1,2,8],introduct:13,invalid:7,invalid_argu:7,io_block_s:[1,7,9],io_by_cpu:[1,7,9],is_fast_mod:7,is_pow:7,is_pure_hbm:7,is_sam:7,ispow2:7,issu:[0,1],item:[2,10],its:2,june:1,just:2,kcustom:[7,8],keep:[1,2,8],kei:[0,2,7,8,10],kepochlfu:[7,8],kepochlru:[7,8],kernel:[1,7,9],kernel_select_interval_:7,kernelparam:7,kernelselector_findorinsert:7,kernelselector_upd:7,kernelselector_updatescor:7,kernelselector_upsert:7,kernelselector_upsertandevict:7,key_typ:[1,2,7],keys_not_empti:7,keys_ptr:7,kind:7,klfu:[7,8],klru:[1,2,7,8],kvm_size:7,languag:7,larg:[1,2,7],larger:[1,2,7,8],later:1,law:7,lead:2,learn:1,least:[1,2,8],length:[1,2,9],less:[1,2,7,8],lfu:[1,7,8],librari:[0,1,13],licens:[0,7],lifan:1,like:[1,2,8],limit:[1,3,7],line:7,list:[3,11],load:[1,2,7,9],load_factor:[2,7],local:1,lock:7,lookup:7,lookup_kernel:7,lookupkernelparam:7,lookupparam:7,low:[1,8],lru:[1,2,7,8],machin:1,mai:[0,7],main:1,maintain:1,maintian:[0,1],make:[1,7],make_uniqu:[1,7],manag:1,match:[1,2],max:[1,7,8,9],max_bucket_s:[1,2,7,9],max_capac:[1,2,7,9],max_hbm_for_vector:[1,7,9],max_load_factor:[1,7,9],max_value_s:7,max_workspace_s:[2,7],maximum:[1,2,9],mean:1,meet:[0,1],member:9,memori:[0,1,2,3,7,9,13],memory_pool:[3,7],memorypool:7,memorypoolopt:[7,9],memorytyp:7,merlin:[0,1,2,3,4,5,7,8,9],merlin_check:7,merlin_hasht:[1,2,4,8,9,10,11,12],merlin_hashtable_benchmark:1,merlin_hashtable_test:1,method:2,might:2,million:1,min:7,minbucketcapacityfilt:7,minimum:[1,2,8],miss:[1,2],mkdir:1,mode:[7,8],model:1,modifi:[1,2],more:[1,2,8,13],most:1,move:1,must:[1,2,7],mutabl:7,mutex:[3,7],mutex_:7,mutipl:7,n_offset:7,name:1,namespac:[7,11],nanosecond:[1,8],necessari:[0,1],need:[0,1,2,7],need_lock:7,new_capac:[2,7],new_max_capac:[2,7],next:7,noexcept:[2,7],none:7,note:1,noth:2,notic:2,now:2,nullptr:[2,7,8],number:[1,2],numeric_limit:7,nvcr:1,nvidia:[0,7,13],object:2,obtain:7,occur:[2,8],occurr:2,offset:[2,7],old:2,onc:7,one:[1,7],onli:[1,2,7],open:[0,1,13],oper:[1,2,7,10],option:[2,7,9],options_:[2,7],order:1,org:7,origin:1,other:2,otherwis:2,our:13,out:0,output:2,overarch:13,overwrit:1,overwritten:2,pair:2,par:[7,12],par_nosync:7,param:[2,7],param_key_index:7,param_key_index_ptr:7,paramet:[1,2,8],part:[0,1],pattern:[2,7,10],pcie:1,pend:7,per:[1,2],perform:2,permiss:7,pipelin:7,pipeline_max_s:7,pleas:[1,7],plu:7,pointer:1,polici:8,pool:[7,9],posit:2,possibl:7,pow:7,power:[2,7],pragma:7,pred:[2,7],predfunctor:[2,7],predic:2,privat:7,process:[2,7],product:[0,1],program:[3,11],project:[0,13],propos:0,provid:[0,1,8,13],pull:[0,1],pure:7,put:2,py3:1,question:1,rais:2,ram:13,reach:[1,8],reach_max_capacity_:7,read:[1,7],read_kernel:7,read_or_write_by_cpu:7,read_or_write_kernel:7,read_or_write_kernel_unlock_kei:7,read_shared_lock:7,real:1,recent:8,recommend:[0,1,2],recsi:[0,1],recurs:1,reduc:[1,2,7],refer:[0,1],regular:1,rehash:[1,2,9],rehash_kernel_for_fast_mod:7,reinterpret_cast:7,releas:[1,2],remov:[2,10],remove_kernel:7,replac:2,repositori:13,request:[0,2,7],requir:[1,2,7],reserv:[1,2,7,9],reset:7,resolut:1,resourc:[1,2],respons:2,restraint:1,result:2,review:[0,1],run:[1,7],runtime_error:7,safe:2,safe_get_block_s:7,safe_get_grid_s:7,same:[1,2],satisfi:2,save:[2,7],scale:1,scenario:1,score:[1,2,7,8,10],score_s:7,score_typ:[1,2,7],scoredata:7,search:[1,2],second:1,see:[7,13],select_kernel:7,selectaccumorassignkernelwithio:7,selectcontainskernel:7,selectfindorinsertkernelwithio:7,selectfindorinsertptrkernel:7,selectlookupkernelwithio:7,selectlookupptrkernel:7,selector:7,selectpipelinecontainskernel:7,selectpipelinelookupkernelwithio:7,selectupdatekernelwithio:7,selectupdatescorekernel:7,selectupsertandevictkernelwithio:7,selectupsertkernelwithio:7,send:0,separ:1,seper:2,serv:1,set:[1,2,7,8],set_global_epoch:[7,8],set_max_capac:[2,7],sever:1,shape:2,share:2,shared_mem_size_:7,shared_mutex:[3,7],shared_s:7,sharedmemperblock:7,should:[1,2,7,8,10],signatur:2,signific:0,simplifi:1,singl:[1,7],situat:2,size:[1,2,7,9],size_ptr:7,size_t:[1,2,7,9],size_typ:[2,7],sizeof:7,slightli:[1,8],slot:2,sm80:[2,7],small:1,smaller:7,softwar:7,some:0,someth:1,sophist:1,sort:[3,7],sort_by_kei:7,sourc:[1,13],special:2,specif:[1,7],specifi:[1,2,7],src:7,src_offset:7,src_offset_ptr:7,src_ptr:7,ssd:2,standard:1,start_i:7,static_assert:7,static_cast:7,statu:[1,2],std:[1,7],step:7,step_count:7,storag:[0,1,2,7],store:[0,1],strategi:[2,7,8],stream:[2,7],struct:[1,2,3,6,7,10],submiss:0,submit:1,successfulli:2,suitabl:1,support:[2,7],sure:7,sync_table_configur:7,system:1,tabl:[1,2,7,9,10],table_:7,table_value_ptr:7,tablecor:7,tableopt:1,target:2,team:[0,1],templat:[3,4,6,7,10],temporari:[2,7],tensorflow:1,terabyt:1,test:[0,1],tf2:1,than:[2,7],thei:[1,2,8],them:1,thi:[0,2,7,10],third:2,thread:[1,2],thread_loc:7,threshold:[2,7,10],through:7,throughput:1,thrust:[3,7,12],thrust_par:[3,4,6,7],thrust_vers:7,tie:7,tile:7,tile_s:7,time:1,timestamp:[2,8],tlp_lookup_kernel_hybrid:7,tlp_lookup_ptr_kernel_with_filt:7,tlp_update_kernel_hybrid:7,todo:7,togeth:13,too:[1,2,7],total:2,total_count:7,total_s:7,train:1,travers:10,treat:2,tupl:[1,2,7],tuple_s:7,type:[1,2,3,7,8],type_trait:[3,7],typedef:11,typenam:[2,7],uint32_t:7,uint64_t:[1,2,7,8],uintptr_t:7,under:7,uniqu:2,unique_kei:[2,7],unique_ptr:[1,7],unit:[0,1],unless:[2,7],unsaf:[1,2],unsign:7,updat:[1,2],update_kernel:7,update_read_lock:7,update_shared_lock:7,upsert_kernel:7,upsert_kernel_lock_key_hybrid:7,use:[0,2,7],use_constant_memori:[7,9],used:2,user:[0,1,2],using:[1,2,7,10,13],util:[1,3,7],valid:1,valu:[0,1,2,7,8],value_or_delta:[2,7],value_s:7,value_typ:[2,7],variabl:[1,11],vecd_load:7,vector:[1,2,9],vectors_or_delta:2,veri:1,verifi:1,version:[1,7],via:[0,1,8],warmup:1,warranti:7,websit:13,welcom:0,well:1,when:[0,1,2,7,8],whether:2,which:[1,2,8,10],within:2,without:[2,7],won:[2,7],work:1,workload:1,workspac:7,world:1,would:8,write:7,write_by_cpu:7,write_kernel:7,write_kernel_unlock_kei:7,write_with_accum_kernel:7,ws_size:7,www:7,you:[0,1,2,7],your:[0,1],zero:7,zhangyafei:1},titles:["Contributing","NVIDIA HierarchicalKV(Beta)","Template Class HashTable","File merlin_hashtable.cuh","HierarchicalKV C++ API Documentation","Namespace nv","Namespace nv::merlin","Program Listing for File merlin_hashtable.cuh","Struct EvictStrategy","Struct HashTableOptions","Typedef nv::merlin::EraseIfPredict","Complete HierarchicalKV API","Variable nv::merlin::thrust_par","Merlin Key-Value Storage"],titleterms:{"class":[2,3,4,6],about:[0,1],acknowledg:1,addit:0,api:[1,4,11],bazel:1,benchmark:1,benefit:1,beta:1,build:1,cmake:1,code:0,commun:0,complet:[4,11],configur:1,content:[3,5,6],contribut:0,contributor:1,cuh:[3,7],definit:3,document:[1,2,4,8,9,10,12],eraseifpredict:10,evict:1,evictstrategi:8,feedback:1,file:[3,4,7,11],hashtabl:2,hashtableopt:9,hbm:1,hierarchi:4,hierarchicalkv:[0,1,4,11],hmem:1,how:1,hybrid:1,idea:1,includ:3,kei:[1,13],licenc:0,licens:1,list:7,maintainership:0,matrix:1,matur:1,merlin:[6,10,12,13],merlin_hasht:[3,7],mode:1,namespac:[3,4,5,6],nvidia:1,option:1,perform:1,program:7,pure:1,relat:13,requir:0,resourc:13,restrict:1,storag:13,strategi:1,struct:[4,8,9],style:0,support:1,templat:2,thrust_par:12,typedef:[3,4,6,10],usag:1,use:1,valu:13,variabl:[3,4,6,12]}}) \ No newline at end of file