acm-header
Sign In

Communications of the ACM

Blogroll


bg-corner

Science and Technology links (August 4th, 2018)
From Daniel Lemire's Blog

Science and Technology links (August 4th, 2018)

About 80% of the ocean remains unmapped and unexplored. Even a mild concussion (a fall on your head) can double your risk of dementia (e.g., Alzheimer’s). Apple...

Getting 4 bytes or a full cache line: same speed or not?
From Daniel Lemire's Blog

Getting 4 bytes or a full cache line: same speed or not?

Many software operations are believed to be “memory bound”, meaning that the processor spins empty while waiting for data to come from memory. To compensate, our...

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

Science and Technology links (July 27th, 2018)

It is frequently argued that intelligence requires great complexity. But complex compared to what? To put things in perspective, my friend Leonid points out that...

Writing about software and building software are different jobs
From Daniel Lemire's Blog

Writing about software and building software are different jobs

Code taken from a blog post is meant to illustrate an idea. Blogging is literature, not engineering. Don’t build production systems by copying and pasting random...

It is more complicated than I thought: -mtune, -march in GCC
From Daniel Lemire's Blog

It is more complicated than I thought: -mtune, -march in GCC

My favourite C compilers are GNU GCC and LLVM’s Clang. In C, you compile for some architecture. Thus you have to tell the compiler what kind of machine you have...

Are vectorized random number generators actually useful?
From Daniel Lemire's Blog

Are vectorized random number generators actually useful?

Our processors benefit from “SIMD” instructions. These instructions can operate on several values at once, thus greatly accelerating some algorithms. Earlier, I...

Science and Technology links (July 21st, 2018)
From Daniel Lemire's Blog

Science and Technology links (July 21st, 2018)

It seems that something called “Cartesian Genetic Programming” could be a match for Deep Learning. If you look at the best paid individuals in most fields, most...

Accelerating Conway’s Game of Life with SIMD instructions
From Daniel Lemire's Blog

Accelerating Conway’s Game of Life with SIMD instructions

Conway’s Game of Life is one of the simplest non-trivial simulation one can program. It simulates the emergence of life from chaos. Though the rules are simple,...

Science and Technology links (July 15th, 2018)
From Daniel Lemire's Blog

Science and Technology links (July 15th, 2018)

The majority of people dying are 80 years old or older. A heart-disease drug can partially reverse type 1 diabetes. We can at least partially reverse age-related...

Are fungi making us sick?
From Daniel Lemire's Blog

Are fungi making us sick?

Fungi are everywhere. Yeasts, molds, mushrooms. We eat them. They live on our skin. But are they making us sick? That’s a theory strongly held by Martin Laurence...

Science and Technology links (July 6th, 2018)
From Daniel Lemire's Blog

Science and Technology links (July 6th, 2018)

In the United Kingdom, only a tiny minority of high school female students take computer science (0.4% in 2017). Physics is ten times more popular. Russians once...

How quickly can you compute the dot product between two large vectors?
From Daniel Lemire's Blog

How quickly can you compute the dot product between two large vectors?

A dot (or scalar) product is a fairly simple operation that simply sums the many products: float sum = 0; for (size_t i = 0; i < len; i++) { sum += x1[i] * x2[i]...

Income, wealth, intelligence and the fall of the American empire
From Daniel Lemire's Blog

Income, wealth, intelligence and the fall of the American empire

Arcand‘s latest movie (the Fall of the American Empire) depicts a young man (Pierre-Paul Daoust) who is supposedly very intelligent, but not very wealthy. The movie...

Predicting the truncated xorshift32* random number generator
From Daniel Lemire's Blog

Predicting the truncated xorshift32* random number generator

Software programmers need random number generators. For this purpose, the often use functions with outputs that appear random. Gerstmann has a nice post about Better...

Science and Technology links (June 29th, 2018)
From Daniel Lemire's Blog

Science and Technology links (June 29th, 2018)

Hogarth imagines that artificial intelligence (AI) could progress much faster than we might anticipate due to what he calls “AI nationalism”: I believe that the...

Data processing on modern hardware
From Daniel Lemire's Blog

Data processing on modern hardware

If you had to design a new database system optimized for the hardware we have today, how would you do it? And what is the new hardware you should care about? This...

Science and Technology links (June 24th, 2018)
From Daniel Lemire's Blog

Science and Technology links (June 24th, 2018)

Video gamers may soon be paid more than top pro athletes. Meanwhile, if you want to stand out in a crowd of university professors, point out that you are a fanContinue...

Roaring Bitmaps in JavaScript
From Daniel Lemire's Blog

Roaring Bitmaps in JavaScript

Roaring bitmaps are a popular data structure to represents sets of integers. Given such sets, you can quickly compute unions, intersections, and so forth. It is...

Science and Technology links (June 15th, 2018)
From Daniel Lemire's Blog

Science and Technology links (June 15th, 2018)

The market for artificial-intelligence chips could reach $30bn by 2022. My guess is that NVIDIA (a graphics card maker) is the big winner, their tag line is now...

Emojis, Java and Strings
From Daniel Lemire's Blog

Emojis, Java and Strings

Emojis are funny characters that are becoming increasingly popular. However, they are probably not as simple as you might thing when you are a programmer. For a...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account