Monthly Archives: March 2013

Producer Consumer inter-thread communication using condition variables in C++

In this example we show inter-thread communication between producer and consumer threads using condition_variable.  In the end two threads will ping-pong passing control to each other. Code can be modified in such a way that producer will read and queue chunks of data from some source while consumer thread will process data from the queue. For example, […]

Producer Consumer inter-thread communication using Monitor in C#

In this example we show inter-thread communication between producer and consumer threads using Monitor Wait and Pulse functions.  In the end two threads will ping-pong passing control to each other. Code can be modified in such a way that producer will read and queue chunks of data from some source while consumer thread will process data from […]

powercfg command to show what is waking your computer

If you are curious to see why your computer wakes up, the following command will tell you. powercfg /waketimers Watch Channel 9 defrag show to learn more about timers on Windows. Following screenshot shows a timer that will wakeup in the year 2100 1 millisecond after midnight! Here’s a link to TechNet to learn more.

Software Development Process Diagram

Came across a very good albeit old (but not aged) diagram describing development process, found in Patterns of Software Architecture (POSA) book. Compare that to Microsoft’s vision of a modern cloud-based application from today:

HDR Tone Mapping with CUDA 5

Note that the code for the article is available here. In this example, for the sake of learning, we are going to butcher some great images. Let’s describe the problem first. We are going to take some HDR images and modify their luminosity to lighten them. We could also darken the images, or apply changes only […]