Daniel Lemire's blog

My Science and Technology review for 2020

, 1 min read

The original PlayStation game console (1994) was revolution thanks in part to its CD drive that could read data at an astonishing 0.3 MB/s. In 2020, the PlayStation 5 came out with 5 GB/s of disk bandwidth, so over 15,000 more bandwidth than the original PlayStation. The Samsung S10+ phone can be…

Science and Technology links (December 26th 2020)

, 1 min read

Researchers used a viral vector to manipulate eye cells genetically to improve the vision of human beings. Seemingly independently, researchers have reported significant progress regarding the solution of the Schrödinger equation using deep learning: Puppin et al., Hermann et al. The…

In 2011, I predicted that the iPhone would have 1TB of storage in 2020

, 1 min read

Someone reminded me of a prediction I made in 2011: Your iPhone will have 1TB of storage by 2020, assuming exponential growth, see my plot: [http://t.co/iDiT1J7y](http://t.co/iDiT1J7y) — Daniel Lemire (@lemire) November 18, 2011 At the time, an iPhone could hold at most 32 GB of data, so 1 TB…

Science and Technology links (December 19th 2020)

, 1 min read

The Flynn effect is the idea that people get smarter over time (generation after generation). The negative effect is the recent observations that people are getting dumber. It seems that there is no negative Flynn effect after all. We are not getting dumber. Year 536 was one of the worse years to…

Cognitive biases

, 1 min read

One-sided bet: People commonly assume implicitly that their actions may only have good outcomes. For example, increasing the minimum wage in a country may only benefit the poor. Taking a lottery ticket only has the upside of possibly winning a lot of money. Believing in God can only have benefits.…

Virtual reality… millions but not tens of millions… yet

, 4 min read

In February 2016, I placed a bet against Greg Linden in these terms: within the next three years, starting in March of this year, we would sell at least 10 million VR units a year (12 continuous months) worldwide. According to some sources, around 5 million units have been sold each year in 2019…

Converting floating-point numbers to integers while preserving order

, 2 min read

Many programming languages have a number type corresponding to the IEEE binary64. In many languages such as Java or C++, it is called a double. A double value uses 64 bits and it represents a significand (or mantissa) multiplied by a power of two: m * 2p. There is also a sign bit. A simpler data…

ARM MacBook vs Intel MacBook: a SIMD benchmark

, 3 min read

In my previous blog post, I compared the performance of my new ARM-based MacBook Pro with my 2017 Intel-based MacBook Pro. I used a number parsing benchmark. In some cases, the ARM-based MacBook Pro was nearly twice as fast as the older Intel-based MacBook Pro. I think that the Apple M1 processor…

ARM MacBook vs Intel MacBook

, 2 min read

Up to yesterday, my laptop was a large 15-inch MacBook Pro. It contains an Intel Kaby Lake processor (3.8 GHz). I just got a brand-new 13-inch 2020 MacBook Pro with Apple’s M1 ARM chip (3.2 GHz). How do they compare? I like precise data points. Recently, I have been busy benchmarking number…

Science and Technology (December 5th 2020)

, 2 min read

Researchers find that older people can lose weight just as easily as younger people. Google DeepMind claims to have solved the protein folding problem, an important problem in medicine. This breakthrough could greatly accelerate drug development and lead to new cures. Yet,not everyone is convinced…

Interview by Adam Gordon Bell

, 1 min read

A few weeks ago, Adam Gordon Bell had me on his podcast. You can listen to it. Here is the abstract: Did you ever meet somebody who seemed a little bit different than the rest of the world? Maybe they question things that others wouldn’t question or said things that others would never say.…

Java Buffer types versus native arrays: which is faster?

, 2 min read

When programming in C, one has to allocate and de-allocate memory by hand. It is an error prone process. In contrast, newer languages like Java often manage their memory automatically. Java relies on garbage collection. In effect, memory is allocated as needed by the programmer, and then Java…

Science and Technology links (November 28th 2020)

, 3 min read

Homework favours kids with wealthier and better educated parents. My own kids have access to two parents with a college education, including a father who is publishing mathematically-intensive research papers. Do you think for a minute that it is fair to expect kids who have poorly educated…

How fast does interpolation search converge?

, 2 min read

When searching in a sorted array, the standard approach is to rely on a binary search. If the input array contains N elements, after log(N) + 1 random queries in the sorted array, you will find the value you are looking for. The algorithm is well known, even by kids. You first guess that the value…

The disagreeable scientist conjecture

, 3 min read

If you are a nerd, the Internet is a candy store… if only you stay away from mainstream sites. Some of the best scientists have blogs, YouTube channels, they post their papers online. When they review a paper, they speak frankly, openly. Is the work good or irrelevant? You can agree or disagree,…

Double-blind peer review is a bad idea

, 11 min read

When you submit a manuscript to a journal or to a conference, you do not know who reviews your manuscript. Increasingly, due to concerns with biases and homophily, journals and conferences are moving to a double-blind peer review where you have to submit your paper without disclosing your identity.…

Programming is social

, 2 min read

Software programming looks at a glance like work done best done in isolation. Nothing could be further from the truth in my experience. Though you may be working on your little program alone, you should not dismiss the social component of the work. I often say that “programming is social” to…