acm-header
Sign In

Communications of the ACM

Blogroll


bg-corner

How far can you scale interleaved binary searches?
From Daniel Lemire's Blog

How far can you scale interleaved binary searches?

The binary search is the standard, textbook, approach when searching through sorted arrays. In a previous post, I showed how you can do multiple binary searches...

Science and Technology links (September 14th 2019)
From Daniel Lemire's Blog

Science and Technology links (September 14th 2019)

Streaming music makes up 80% of the revenue of the music industry. Revenue is up 18% for the first six months of 2019. This follows a record year in 2018 when the...

Speeding up independent binary searches by interleaving them
From Daniel Lemire's Blog

Speeding up independent binary searches by interleaving them

Given a long list of sorted values, how do you find the location of a particular value? A simple strategy is to first look at the middle of the list. If your value...

Science and Technology links (September 7th 2019)
From Daniel Lemire's Blog

Science and Technology links (September 7th 2019)

In a small clinical trial, scientists administered some “anti-aging” therapies to people between their fifties and sixties. They used growth hormone to regenerate...

Passing integers by reference can be expensive…
From Daniel Lemire's Blog

Passing integers by reference can be expensive…

In languages like C++, you can pass values to functions in two ways. You can pass by value: the value is semantically “copied” before being passed to the function...

Science and Technology links (August 31st 2019)
From Daniel Lemire's Blog

Science and Technology links (August 31st 2019)

The Conboy laboratory in Berkeley is responsible for some of the best work in aging research. In 2005, they showed that by connecting the blood vessels of an old...

How fast can scancount be?
From Daniel Lemire's Blog

How fast can scancount be?

In an earlier post, I described the following problem. Suppose that you have tens of arrays of integers. You wish to find all integer that are in more than 3 (say)...

Science and Technology links (August 24th 2019)
From Daniel Lemire's Blog

Science and Technology links (August 24th 2019)

The net contribution of the Amazon ecosystem to the world’s oxygen is effectively zero. Furthermore, there is a lot of oxygen in the air and it would be excessively...

Science and Technology links (August 17th 2019)
From Daniel Lemire's Blog

Science and Technology links (August 17th 2019)

Google may soon release an augmented-reality version of Google Maps for mobile phones. I have always found it difficult to identify the streets I see in an unfamiliar...

Faster threshold queries with cache-sensitive scancount
From Daniel Lemire's Blog

Faster threshold queries with cache-sensitive scancount

Suppose that you are given 100 sorted arrays of integers. You can compute their union or their intersection. It is a common setup in data indexing: the integers...

Science and Technology links (August 10th 2019
From Daniel Lemire's Blog

Science and Technology links (August 10th 2019

A short (less than one hour) online lesson improved grades among weaker students. The lesson taught the growth mindset: that intellectual abilities can be developed...

Science and Technology links (August 3rd 2019)
From Daniel Lemire's Blog

Science and Technology links (August 3rd 2019)

Reportedly, researchers in China are creating embryos that are part human and part monkey. Sickle cell disease is a genetic disease with no cure. In an attemptContinue...

JSON parsing: simdjson vs. JSON for Modern C++
From Daniel Lemire's Blog

JSON parsing: simdjson vs. JSON for Modern C++

JSON is the ubiquitous data format on the Internet. There is a lot of JSON that needs to be parsed and validated. As we just released the latest version of ourContinue...

A new release of simdjson: runtime dispatching, 64-bit ARM support and more
From Daniel Lemire's Blog

A new release of simdjson: runtime dispatching, 64-bit ARM support and more

JSON is a ubiquitous data exchange format. It is found everywhere on the Internet. To consume JSON, software uses tools called JSON parsers. Earlier this year,Continue...

Science and Technology links (July 27th 2019)
From Daniel Lemire's Blog

Science and Technology links (July 27th 2019)

There are thick ice deposits on the Moon. Water in space is important as it can be used to create fuel and to sustain life. Most animals do not suffer heart attacks...

How fast can a BufferedReader read lines in Java?
From Daniel Lemire's Blog

How fast can a BufferedReader read lines in Java?

In an earlier post, I asked how fast the getline function in C++ could run through the lines in a text file. The answer was about 2 GB/s. That is slower than some...

Programming competition with $1000 in prizes: make my code readable!
From Daniel Lemire's Blog

Programming competition with $1000 in prizes: make my code readable!

Colm MacCárthaigh is organizing a programming competition with three 3 prizes: $500, $300, $200. The objective? Produce the most readable, easy to follow, and well...

Arbitrary byte-to-byte maps using ARM NEON?
From Daniel Lemire's Blog

Arbitrary byte-to-byte maps using ARM NEON?

Modern processors have fast instructions that can operate on wide registers (e.g., 128-bit). ARM processors, the kind of processors found in your phone, have such...

Science and Technology links (July 20th 2019)
From Daniel Lemire's Blog

Science and Technology links (July 20th 2019)

Researchers solve the Rubik’s cube puzzle using machine learning (deep learning). There has been a rise in the popularity of “deep learning” following some major...

Science and Technology links (July 13th 2019)
From Daniel Lemire's Blog

Science and Technology links (July 13th 2019)

Drinking juice increases your risk of having cancer. College completion rates are increasing and this may have to do with lower standards. Australia is going to...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account