Like this article? Buy me a coffee. Here’s a problem. I have a set of keys and values. I also have some servers for a key-value store. This could be memcached, Redis, MySQL, whatever. I want to distribute the keys across the servers so I can find them again. And I want to do this without having to store a global directory. One solution is called mod-N hashing. First, choose a hash function to map
2016-03-16 (detailed results from Westmere, Haswell & Skylake), 2016-03-13 (AVX2 implementation, results from Westmere and Skylake, wording), 2015-03-04 (link to github repo), 2011-10-22 (link to paper, unrolled loops), 2010-06-28 (link to Peter's site), 2010-03-27 (SSE2 procedures), Introduction Population count is a procedure of counting number of ones in a bit string. Intel introduced instructi
Brain dumps. Reports about experiments, ideas, and various stuff that's more useful on the net than written on paper stacked on my desk. Administrivia This article was initially posted on Wikipedia in 2008, which explains why it's written at the 3rd person and looks familiar to articles on binary trees. A few moderators decided that the article was only self-promotion and removed it without notifi
New benchmarks for approximate nearest neighbors 2018-02-15 UPDATE(2018-06-17): There are is a later blog post with newer benchmarks! One of my super nerdy interests include approximate algorithms for nearest neighbors in high-dimensional spaces. The problem is simple. You have say 1M points in some high-dimensional space. Now given a query point, can you find the nearest points out of the 1M set?
Bitonic mergesort is a parallel algorithm for sorting. It is also used as a construction method for building a sorting network. The algorithm was devised by Ken Batcher. The resulting sorting networks consist of comparators and have a delay of , where is the number of items to be sorted.[1] This makes it a popular choice for sorting large numbers of elements on an architecture which itself contain
はてなアプリケーションエンジニアの id:takuya-a です。 この記事では、Microsoft の検索エンジン Bing で採用された BitFunnel アルゴリズムを紹介します。 昨年のエンジニアアドベントカレンダーでは、文字列検索のアルゴリズム全般について紹介しました(文字列アルゴリズムの学びかた - Hatena Developer Blog)。今年はそのなかでも、インデックス(索引)を使った全文検索アルゴリズムについてのお話になります。 この記事の前半は全文検索の入門にもなっていますので、検索技術になじみがない方にも楽しんでいただけるのではないでしょうか。 逆に、「そんなのもう知ってるよ!」という方は、本題である「BitFunnel アルゴリズムの詳細」から目を通していただければと思います。 この記事は、はてなエンジニア Advent Calendar 2017の21日目の
Daniel Golovin (Google, Inc.);Benjamin Solnik (Google, Inc.);Subhodeep Moitra (Google, Inc.);Greg Kochanski (Google, Inc.);John Karro (Google, Inc.);D. Sculley (Google, Inc.) Abstract Any sufficiently complex system acts as a black box when it becomes easier to experiment with than to understand. Hence, black-box optimization has become increasingly important as systems have become more complex. I
Daniel Hill (Amazon.com);Houssam Nassif (Amazon.com);Yi Liu (Amazon.com);Anand Iyer (Amazon.com);S. V. N. Vishwanathan (vishy@amazon.com) Abstract Optimization is commonly employed to determine the content of web pages, such as to maximize conversions on landing pages or click-through rates on search engine result pages. Often the layout of these pages can be decoupled into several separate decisi
the morning paper a random walk through Computer Science research, by Adrian Colyer Made delightfully fast by strattic A general purpose counting filter: making every bit count Pandey et al., SIGMOD’17 It’s been a while since we looked at a full on algorithms and data structures paper, but this one was certainly worth waiting for. We’re in the world of Approximate Membership Query (AMQ) data struc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く