acm-header
Sign In

Communications of the ACM

Blogroll


bg-corner

How fast can you sort arrays of integers in Java?
From Daniel Lemire's Blog

How fast can you sort arrays of integers in Java?

Programming languages come with sorting functions by default. We can often do much better. For example, Downs has showed that radix sort can greatly surpass default...

My programming setup
From Daniel Lemire's Blog

My programming setup

As my GitHub profile indicates, I program almost every single working day of the year. I program in C++, C, Go, Java, JavaScript, Python, R, Swift, Rust, C#; even...

Science and Technology links (March 27th 2021)
From Daniel Lemire's Blog

Science and Technology links (March 27th 2021)

Scientists, including climate-science researchers, often travel to faraway places for conferences. Attending a live conference is time consuming and expensive.Continue...

Counting cycles and instructions on the Apple M1 processor
From Daniel Lemire's Blog

Counting cycles and instructions on the Apple M1 processor

When benchmarking software, we often start by measuring the time elapsed. If you are benchmarking data bandwidth or latency, it is right measure. However, if you...

Apple’s M1 processor and the full 128-bit integer product
From Daniel Lemire's Blog

Apple’s M1 processor and the full 128-bit integer product

If I multiply two 64-bit integers (having values in [0, 264)), the product requires 128 bits. Intel and AMD processors (x64) can compute the full (128-bit) product...

Science and Technology links (March 6th 2021)
From Daniel Lemire's Blog

Science and Technology links (March 6th 2021)

Increasing schooling does not improve social outcomes at a population level. Venitian glass was made near Venice as early as 450 BC. It spread worldwide through...

How does your programming language handle “minus zero” (-0.0)?
From Daniel Lemire's Blog

How does your programming language handle “minus zero” (-0.0)?

The ubiquitous IEEE floating-point standard defines two numbers to represent zero, the positive and the negative zeros. You also have the positive and negativeContinue...

Parsing Floating-point Numbers Really Fast in C#
From Daniel Lemire's Blog

Parsing Floating-point Numbers Really Fast in C#

Programmers often write out numbers as strings (e.g., 3.1416) and they want to read back the numbers from the string. If you read and write JSON or CSV files, you...

Science and Technology links (February 13th 2021)
From Daniel Lemire's Blog

Science and Technology links (February 13th 2021)

Researchers make inexpensive transparent wood. Our cells produce energy using their mitochondria. Researchers show that you can efficiently enrich cells with mitochondria...

On the cost of converting ASCII to UTF-16
From Daniel Lemire's Blog

On the cost of converting ASCII to UTF-16

Many programming languages like Java, JavaScript and C# represent strings using UTF-16 by default. In UTF-16, each ‘character’ uses 16 bits. To represent all 1Continue...

Science and Technology links (February 6th 2021)
From Daniel Lemire's Blog

Science and Technology links (February 6th 2021)

You can use artificial intelligence and satellite images to count the number of elphants found in the wild. It appears that a billion people on Earth now use an...

Number Parsing at a Gigabyte per Second
From Daniel Lemire's Blog

Number Parsing at a Gigabyte per Second

Computers typically rely on binary floating-point numbers. Most often they span 64 bits or 32 bits. Many programming languages call them double and float. JavaScript...

Science and Technology links (January 24th 2021)
From Daniel Lemire's Blog

Science and Technology links (January 24th 2021)

Year 2020 was great for PC makers. We are selling more and more PCs. Reportedly, Sony sold 3.4 million PlayStation 5 in only four weeks, a record. The demand for...

Science and Technology links (January 16th 2021)
From Daniel Lemire's Blog

Science and Technology links (January 16th 2021)

You can tell people’s political affiliation by image recognition technology. There are far fewer stars and galaxies than we thought. The universe is relativelyContinue...

Science and Technologie links (January 9th 2021)
From Daniel Lemire's Blog

Science and Technologie links (January 9th 2021)

The Earth is spinning faster and faster: The 28 fastest days on record (since 1960) all occurred in 2020, with Earth completing its revolutions around its axisContinue...

Memory access on the Apple M1 processor
From Daniel Lemire's Blog

Memory access on the Apple M1 processor

When a program is mostly just accessing memory randomly, a standard cost model is to count the number of distinct random accesses. The general idea is that memory...

Peer-reviewed papers are getting increasingly boring
From Daniel Lemire's Blog

Peer-reviewed papers are getting increasingly boring

The number of researchers and peer-review publications is growing exponentially.  It has been estimated that the number of researchers in the world doubles every...

My Science and Technology review for 2020
From Daniel Lemire's Blog

My Science and Technology review for 2020

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...

Science and Technology links (December 26th 2020)
From Daniel Lemire's Blog

Science and Technology links (December 26th 2020)

Researchers used a viral vector to manipulate eye cells genetically to improve the vision of human beings. Seemingly independently, researchers have reported significant...

In 2011, I predicted that the iPhone would have 1TB of storage in 2020
From Daniel Lemire's Blog

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

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...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account