Anirudh Badam
Ph.D. candidate
Computer Science
Princeton University
Email: abadam AT cs DOT princeton DOT edu
About Me |
Application Material |
Research |
Projects |
Publications |
Courses |
T.A. |
Contact Me
I am currently a final year PhD student in
the Department of
Computer Science at Princeton
University working
with Vivek
Pai. I previously obtained a B.Tech
in Computer Science and
Engineering from IIT
Madras in 2006. I will be graduating this year and I am actively looking for jobs.
I am interested broadly in the areas of Distributed Systems,
Computer Networks and Operating Systems.
At Princeton, I work
with Vivek
Pai. We are working towards bridging the gap between the memory and
the storage layer of today's systems. The ever increasing amount of data
and the need to access more of it quickly has magnified the gap
between the main memory and the traditional secondary storage
devices. The limited memory capacity of servers coupled with the
limits of RAM density imposes a large premium on obtaining high
in-memory hit-rates that are vital for today's servers. Our techniques
not only explore new
approaches
to increase indexing efficiency of secondary storage but also explore
new and effective
ways
to incorporate non-volatile memories like Flash and PCM into virtual
memory hierarchy of an operating system. Both the techniques help
greatly improve the effective memory capacity of servers in a cost
efficient manner.
I was an intern
at FusionIO from Feb-Aug
2011. Over there, I was working on revamping the swap sub-system
of operating systems to be more friendly with new non-volatile
memory technologies.
During summer 09, I was
at Intel
Labs Pittsburgh for a
summer internship. I was working
with Michael
Kaminsky, Dina
Papagiannaki, Dave
Andersen and Shrini
Seshan on
the Neighborhood
Aware Networks project.
During summer 08, I was at HP
Labs, Princeton, for a summer internship. I was working
with Jack
Brassil towards developing a transport protocol in the presence of
a mechanism to guarantee explicit band width to a link between 2
hosts. Anangran is a company which manufactures routers which provide
such bandwidth guarantees for end-to-end links involving these
routers.
Previously, I worked
with Prof. C. Siva Ram
Murthy at HPCN Lab for
my undergraduate thesis work (fall 05, spring 06). The work was about developing new
protocols for video multicast in ad hoc wireless networks.
Before that, I interned at IBM
during the summer after the 3rd year at IIT Madras (summer 05). There I worked on
developing a middleware for applications that can utilize parallel
processing. I was working
with Jagir
Hussan, who is now at University of Auckland, New Zealand.
- SSDAlloc
- SSDAlloc is an easy to use hybrid SSD/RAM slab based memory
allocation tool. It helps programmers build high-performance SSD
applications (comparable to that of application rewrite) while
requiring very few modifications to application code. It exposes a
slab based memory allocation interface to the programmer and manages
the data flow in and out of an SSD in a transparent manner using a
backend runtime system. It also stores frequently used application
data in a compact manner in RAM. The only modifications needed for a
new application involve migrating to this slab allocator from
traditional malloc/calloc memory allocation tools. SSDAlloc is
currently under an exclusive license agreement (including IP)
with Fusion-io.
- Neighborhood-Aware Networks
- Home 802.11 networks have a significantly higher bandwidth compared
to broadband connections. This bandwidth can be exploited to provide
alternative, high-speed connectivity between homes in a
neighborhood. In this project, we explore how such existing (and
growing) wireless connectivity between homes can be used to provide
"neighborhood-aware" application-level protocols and services. As part
of the wider neighborhood-aware networks project, we have created a
"neighborhood-aware" wireless transport protocol that boosts the
bandwidth of the lossy but potentially high bandwidth neighborhood
wireless links by exploiting the reliabile, but expensive broadband
links between homes. Such a transport protocol can be used for
implementing a high speed mesh-type neighborhood-wide cache to share
popular multimedia content, thereby reducing the pressure on the
broadband links.
- HashCache
- An efficient indexing mechanism for building many types of caches
including web proxy caches, WAN accelerators/network packet caches and
caches for inline data deduplicators. HashCache uses extremely low
amount of memory per index entry and can index upto 20 times more data
for the same amount of DRAM when compared to previous techniques. In
the past, we used a HashCache based web proxy cache and WAN
accelerator using inexpensive hardware to provide a high-bandwidth
Internet experience over low-bandwidth and high-latency satellite
links in Ghana, Nigeria and Uganda. Each
year, MIT's Technology
Review publishes a list of 10 emerging technologies. They had
included HashCache in the list of
the 10
emerging technologies of 2009. HashCache is currently under an
exclusive license agreement (including IP)
with Verivue. It *could*
go Sleepycat
later this year (2011).
Conferences and Journals
- 'The Hare and the Tortoise: Tackling Wireless Losses by Exploiting Wired Reliability'
Anirudh Badam,
Dongsu Han,
Dave Andersen,
Michael Kaminsky,
Dina Papagiannaki,
Srinivasan Seshan
In Proc. 12th ACM International Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc '11). [Paper] [Slides]
- 'SSDAlloc: Hybrid SSD/RAM Memory Management Made Easy'
Anirudh Badam,
Vivek S. Pai
In Proc. 8th USENIX Symposium on Networked Systems Design and Implementation (NSDI '11). [Paper] [Slides]
- 'First-Class Access For Developing-World Environments'
Vivek S. Pai,
Anirudh Badam,
Sunghwan Ihm,
KyoungSoo Park
In Proc. 5th International Conference on Future Internet Technologies (CFI 2010).
- 'K-Tree: A Multiple Tree Video Multicast Protocol for Ad Hoc Wireless Networks' (extended version of the HiPC '06 publication)
Tamma Bheemarjuna Reddy,
Anirudh Badam,
C. Siva Ram Murthy,
Ramesh R. Rao
In Computer Networks 54(11): 1864-1884 (2010).
- 'HashCache: Cache Storage for the Next Billion'
Anirudh Badam, KyoungSoo Park,
Vivek S. Pai, Larry L. Peterson
In Proc. 6th USENIX Symposium on Networked Systems Design and Implementation (NSDI '09). [Paper] [Slides]
- 'K-Tree: A Multiple Tree Video Multicast Protocol for Ad Hoc Wireless Networks'
Anirudh Badam,
Tamma Bheemarjuna Reddy,
C. Siva Ram Murthy
In Proc. 13th IEEE International Conference On High Performance Computing (HiPC '06).
Workshops
E-mail : abadam AT cs DOT
princeton DOT edu
Phone : 609 - 258 5330
Address : 315 Dept. of Computer Science
35 Olden
Street
Princeton
NJ 08540