christopher@baus.net

Does C match modern computation models?

Some interesting notes on performance and language making the rounds on Reddit. I agree that parallelization is paramount to scaling applications going forward. It is obvious even to casual users that the PC performance curve has flattened in recent years. Adding cores hasn't magically doubled system performance for most users, primarily because it is difficult for developers to make effective use of multiple cores.

I also agree that C's programming model is breaking down on modern hardware and operating systems. My biggest pet peeve is that neither C or C++ accurately model modern virtual memory systems, such as Linux's overcommitted memory model, and Window's VirtualAlloc model. The result is confusion among programmers which potentially leads to slow and unreliable systems.

Show Comments