A discussion about various types of compiler and hardware dependencies and the hazards they generate.
Continue readingHidden Markov Models Decoding – The Viterbi Algorithm
This article discusses the problem of decoding – finding the most probable sequence of states that produced a sequence of observations. A dynamic programming approach is presented. Derivations and diagrams are sketched out and time complexity is analyzed.
Continue readingBranch Prediction
An exploration of various static and dynamic Branch Prediction related concepts.
Continue readingLoop Unrolling
Loop unrolling is a compiler optimization technique to increase instruction level parallelism. The decisions behind this technique and its limitations are discussed.
Continue readingProving a Language is not Regular using the Pumping Lemma
This article explores, with the help of figures, a step by step approach to prove that a language is not regular by contradicting the Pumping Lemma for Regular languages.
Continue readingSpeculation – Hardware vs Software
A brief explanation of Speculation and how to handle exceptions both from the hardware and software side.
Continue readingShort Primer on Probability
A primer on probability explaining the concepts of random variables, joint probabilities, marginalization, conditional probabilities, Bayes Rule, probabilistic inference and conditional independence. Examples and formulae included.
Continue readingPipelining/Parallelism related Terminology
A list of definitions of Pipelining/Parallelism related terminology.
Continue readingVisualizing the Pumping Lemma for Regular Languages – Splitting into Substrings
This article explains how to read the Pumping Lemma conditions by visualizing the breaking of a string into three substrings. A blueprint to use this Lemma to prove a language is not regular is discussed.
Continue readingCache Optimizations that reduce Miss Penalty
This article lists various simple and advanced Cache Optimizations to reduce Miss Penalty. Both hardware and software based optimizations are discussed.
Continue reading