Performance Limiters

Every computer system whether a laptop, a mobile device, a souped up desktop gaming system, or a distributed system in the cloud or on-premises, has many factors which limit performance. Limits such as memory bandwidth, cache bandwidth, number of cores, clock frequency of each core, network bandwidth, parallel instructions availability and capability, graphics processor computational […]

Read more "Performance Limiters"

Sorting Speed of Several Languages

Most computer programming languages provide built-in standard sorting algorithms. Let’s compare performance of these. C++ Sorting The above graph shows performance of the standard C++ STL sort algorithm. The vertical axis is time measured in seconds. The horizontal axis is array size of integers (32-bits each). Signed 32-bit integer values in the array are random […]

Read more "Sorting Speed of Several Languages"

Random Number Generator

Every programming language provides methods for generating random numbers, because random numbers are useful in so many situations. For years the C programming language only provided the rand() function, which generates 15 random bits per function call. To generate a 32-bit integer, it takes 3 calls to rand() to accumulate 32 bits. On my quad-core […]

Read more "Random Number Generator"