PhD Dissertation Document

July 19th, 2013 admin

Here is the latest version of my PhD Dissertation document and slides for the defense talk. This way you can access the latest version of this document without me having to email it individually. I foresee these documents to change over the next few weeks (perhaps until August 6th for the slides and August 20th for the dissertation) as I refine them.

Click this link to download the dissertation – AnilKrishna-Dissertation-Document
Click this link to download the talk slides – AnilKrishnaPhDDefenseSlides

Posted in Information, Tutorials | No Comments »

A Song for Computer Architects

May 28th, 2013 admin

(Set to the tune of Billy Joel’s “We Didn’t Start the Fire”)

Von Neumann, Wire-delay, Context Switch, Tag Array,
Custom ASIC, Weighted Speedup, Continual Flow,
Issue, Reservation Station, SuperScalar, Speculation,
Load Queue, Store Queue, Instruction Window,
Rounding Error, IQ CAM, Non-volatile SRAM,
Byte Code, VLSI,  Dirty Bit per Cacheline,
Branch Predictor, TLB, Flush and Recovery,
Morris Mano, Forward Slice, Signal ACK or RETRY
We didn’t short the wire
It’s been getting hotter
We should cool it with water
And don’t call me a liar
Yes, while I did write it,
prior art was cited
Read the rest of this entry »

Posted in Poetry | No Comments »

New tool reduces space needed for data storage

September 15th, 2012 admin

(What follows is a guest blog entry)

The Microsoft Research Team have teamed-up with the Windows Azure Storage Group to create a tool to reduce the amount of space that stored data needs. There are many advantages of this new development, the main one being that it massively reduces the cost of storing data. With the growth of the cloud, which enables users to store data securely, there has been a growing need to find a better way of storing duplicates. This has become necessary because people who want to protect their data against serve failures are encouraged to have as many as three full copies stored, to eliminate the risk. Obviously, with so many people tripling the amount of data they want to store, this poses the question of how to maintain this effectively.

What the Microsoft team have done is to find a way to code data. The result of this is a shortened description that can be stored easily and then reassembled later on to be delivered to the user. This seems to be an effective solution, as it would free up space on users’ computers, so they can simply use them for entertainment purposes, playing on and communicating with family members. When they want to, they can then access all of their important information that is stored elsewhere, on the cloud.

While this process of coding data has been done before, it is the way that Microsoft are doing it that is so ground-breaking. What happens now, is that Windows Azure Storage takes the stored data and condenses it using a technique known as “lazy erasure coding”. This goes on in the background, taking chunks of data, opening them, filling them and storing them in three copies. The data is then sealed which leaves space for more.

Posted in Uncategorized | No Comments »

Tutorial on Cache Coherence and Scaling Issues

June 4th, 2012 admin

Cache coherence is a concept in Computer Architecture that deals with managing multiple copies of data in a computer system. This short tutorial is suitable for someone who is aware of the basic concept and is only trying to brush up on it. The focus of the tutorial is introducing the two classic approaches to Cache Coherence and identifying what happens as more and more caches must be kept coherent. Click this link – TutorialOnCacheCoherence

Posted in Information, Tidbits, Tutorials | 1 Comment »

Tutorial on the concept of Bloom Filters

June 4th, 2012 admin

Bloom Filters are used in many places in Computer Hardware design and elsewhere. I am sure we use it in day-to-day life without realizing it or giving it a fancy name. Here is a simple, lateral, introduction to this commonsensical concept via a concocted real-life, non-computer-architecture example. Click this link – TutorialOnBloomFilters

Posted in Information, Tidbits, Tutorials | No Comments »

A simple problem that led us to Ramanujan’s work on Integer Partitioning

September 12th, 2010 admin

Raghu, my cousin, sent me an email with the following problem a few months ago.


Manish was on his way to an interview. On the way, he encountered his long lost cousin, Vijay, whom he hadn’t met in more than a decade. They started catching up on lost time. Manish learned that Vijay had 3 sons. When he asked about their ages, Vijay replied, “You’re going for an interview, right? Consider this a trial question. Figure out their ages from this: The product of the ages of my three sons is 36.” To this, Manish grumbled that he needed more information. Vijay, then, pointed to a sign board across the street that displayed the address of the area and said that the sum of the ages of his three children was equal to the last two digits of the pin code (zip code) of that area. Manish demanded still more information. Finally, Vijay said, “My eldest son wore a black shirt today. This is all I can tell you.”

What were the ages of the three children? Read the rest of this entry »

Posted in Family, Tidbits, Tutorials | 2 Comments »


September 1st, 2010 admin

“Ammamma…Boost…”, I would ask her for a hot malt beverage, as she would get busy in her tiny kitchen after her short afternoon nap on the hard concrete floor, with a strategically placed pillow for her head. Ammamma means maternal grandmother in my mother tongue, Telugu. Amma is mom, and ammamma is, literally, momom. She would then get busy preparing the late afternoon coffees for the elders, starting with the eldest – Tatagaru, and Boost for the kids. Although I mostly saw her only over summer holidays, this particular aspect of her routine was probably eternal. In fact, all her routines were seemingly eternal yet inexplicably fresh every time. She would hunker down at the old, grime-laden, two-burner gas stove sitting on the floor of her tiny kitchen and with what seemed like an impossibly tiny collection of utensils, groceries and gadgets, came up with the most exquisite of dishes. Simple fare it always was, and she was not a great cook, but the taste of her cooking was earthy and heavenly. Vegetables of all manner were shallow fried. Coffee and Boost was not served before being poured several times, alternating between two tumblers to generate froth (steamed milk). “Boost tagutawa, Kishtappa, aain?”, she would ask. The “aain?” was kind of like Amitabh Bachchan’s pan-laden mouth confirming something – “aain?”.

Read the rest of this entry »

Posted in Events, Family | 13 Comments »

Discovering Hamming Codes

July 18th, 2010 admin

Digital data, transmitted over a communication medium (wireless, optical fiber, copper wire), or stored in some storage medium (such as computer memory or hard disk), is prone to bit-flips and errors. For example, if the message “10110101000101010″ means “BILL JOHN” and communication channel noise flips a bit, the message received may be “10010101000101010″, meaning, “KILL JOHN”. Now, that could create a problem. The problem also exists in data that is sitting untouched on a digital storage medium. Have you ever noticed that if you open some photo file on your computer, after years of storage, they develop strange colors and often do not display fully? This could be due to some bit errors in the stored 1s and 0s that represent the image file data. Read the rest of this entry »

Posted in Information, Tidbits, Tutorials | No Comments »

Badal – a call for change

July 18th, 2010 admin


भीडों के धक्कों में खुश रहने वाले,
तमाशों के रंगों को सच कहने वाले,
औरों की बातों को अपना बता कर,
चुराये खयालात अकड से जता कर,
जो डरते हैं पर डर जताते नहीं हैं,
शर्मिन्दा हैं, सर झुकाते नहीं हैं ।
न जाने के उनमे वो खुद ही कहां हैं ।
ढूंढें तो औरों कि परछाइयां हैं ।
जो खुद से, खुदी से, खुदा से ख़फा हैं,
बेखबर, बेहुनर, बेकस, बेवफा हैं ।
बदल दो ये मक्सद, ये मंज़र, ये मंज़िल ।
कफस से कदम पर कफन ही कज़ा है ।

Read the rest of this entry »

Posted in Poetry | 2 Comments »

Fascinating course on Justice by Michael Sandel

June 20th, 2010 admin

Here is a link to video lectures from Harvard University’s course on Justice, taught by Professor Michael Sandel. (Watch the introductory video which should start automatically, and then look for the Episode list to the bottom right of the page. 12 hour long lectures – but worth the time.)

It contains some fascinating discussions on morals, philosophy, rights and justice. Professor Sandel has a very interesting teaching style, where he almost helps the students discover right vs. wrong, rather than just teaching it to them. Also, he has an extraordinary delivery style – careful and sincere. It is clear that he is actively participating in the discussion himself; he tailors the material such that it conveys all the crucial points while at the same time allowing the journey to these crucial points to be shaped by the students in the classroom. The class itself is comprised of over a thousand students, hanging on to every word from the teacher, and is a sight to behold.

A must watch. More accurately, a must think.

Posted in Information, Philosophy, Tidbits | No Comments »