Rishi Agarwal - I-Acoma - University of Illinois at Urbana

advertisement
Rishi Agarwal
Graduate Student
Computer Science Department,
UIUC, USA
Residence: 1010 W Clark St, Urbana, IL, USA
Phone
: 1-217-419-3046
Email
: iitk.rishi@gmail.com
EDUCATION

PhD: 2009 onwards
Computer Science, University of Illinois at
Urbana-Champaign
CGPA : 4.0/4.0

Bachelor of Technology : 2004-2008
Computer Science, IIT Kanpur, India
CGPA: 3.9/4.0
RESEARCH PROJECTS


Ubiquitous High Performance Computing Architectures
Authors: Rishi Agarwal, Josep Torrellas , and Intel Collaborators
 Working with Intel researchers on a DARPA project to design very energy-efficient extreme-scale
computer architectures. Currently examining issues related to memory hierarchy design, interconnection
network, and memory consistency.
 Implemented support for software managed cache, scratchpad, switching caches on/off and Mesh
interconnect in SESC simulator.
Refresh: Scalable Checkpointing for Coherent Shared Memory, ISCA 2011
Authors: Rishi Agarwal, Pranav Garg and Josep Torrellas
 The hardware-based global checkpointing schemes proposed for small shared-memory machines do
not scale well due to global operations (syncs and writebacks), work lost to recovery, and inefficiencies in
imbalanced or I/O-intensive loads.
 We introduce Refresh, a novel hardware-based scheme for coordinated local checkpointing in
multiprocessors with directory-based coherence. Refresh leverages the transactions of a directory
protocol to track inter-thread dependences. It also introduces distributed algorithms for
checkpointing and rollback sets of processors.
 Refresh improves checkpointing efficiency with architectures to (i) delay the write back of data to
safe memory in checkpoints, (ii) support operation with multiple checkpoints, and (iii) hide checkpoint
overhead under barrier synchronization.
 Simulations of programs with up to 64 threads show that Refresh is scalable and has very low
overhead. Its average execution overhead is 2%, compared to 15% for global checkpointing.

Minimizing Squashes in Block-Based Multiprocessors by Intelligently Slicing Code into
Atomic Block, ISCA 2011
Authors: Rishi Agarwal and Josep Torrellas
 Performances of Multiprocessor architectures that continuously operate on atomic blocks are
limited by data collisions between threads leading to block squashes — especially if, to
enable more compiler optimization, blocks are large.
 We present techniques for automatically minimizing the cycles lost to squashes in these
architectures. We identify and characterize locations in the code that often cause
squashes. We call them Squash Hazards. For each of them, we propose a tailored squashremoving algorithm. We also describe a software only framework that profiles the code and
transforms it according to these algorithms.
 We test our framework on several PARSEC and SPLASH -2 codes for a 16-processor simulated
machine. Our results show that our approach removes, on average, 92% of the squash
cycles of the applications. As a result, on average, the applications are sped-up by 1.9x.



Jose A. Joao, Onur Multu, Hyesoon Kim, Rishi Agarwal and Yale N. Patt, “Improving the
Performance of Object-Oriented Languages with Dynamic Predication of Indirect Jumps”,
Published in ASPLOS 2008.
Rishi Agarwal and Mainak Chaudhary, “Enhancing Memory Performance for Multi -Core
Architecture”, B.Tech report, IIT Kanpur, 2008.
Rishi Agarwal and Nikunj Bahagat, “Partition Clustering Algorithm for Biometric Databases,
Tech. Report, IIT Kanpur, 2007.
JOB AND INTERNSHIP EXPERIENCE
 Job: Microsoft Bing Search, Canada, Full Time Employee, August-2008 to July-2009
Core Relevance Team: Sambavi Muthukrishnan and Andrey Proskurin, Microsoft
 Implemented the support for multiple on-flight queries in the search engine infrastructure.
 Designed and implemented the “training and validating” infrastructure for query alteration s.
 Designed and experimented with several algorithms which improved the quality of query
alterations.
 Internship: Microsoft Research Redmond, USA, Summer-2007
Improving the Performance of Object-Oriented Languages with Dynamic Predication of Indirect
Jumps
Supervisor: Onur Mutlu, MSR and Jose A. Joan, UT Austin
 Analyzed the source codes and generated traces for more than 20 programs/applications
which include Dacapo Benchmarks (Java), M5 (C++), MATLAB (Java), Image Processing Toolkit
(C#) etc.
 Used tools like Intel‟s Vtune, Truscan etc. to analyze overheads of high indirect branch
misprediction and L1, L2 cache stalls.
 Developed various tools and scripts to automate job submission to cluster, data collection,
parsing output files, and graph generation.
 Co-authored a research paper published in ASPLOS 2008 describing a novel solution to the
problem.
Parallelism Aware DRAM Scheduling Algorithm
Supervisor: Onur Mutlu, MSR and Thomas Moscibroda, MSR
 Contributed in developing a new DRAM scheduling algorithm which takes into account
the amount of parallelism present in outstanding memory requests.
Coded (C#) this algorithm in the simulation environment and tested it heavily with SPEC
benchmarks.
 Internship: National Instruments, India, Summer -2006
Software solution for converting NTSC signals into video (RGB Bitmaps) stream
Supervisor: Abhishek Nag and Satish Mohan Ram NI India
 Developed software that generates a RGB image from NTSC signals (acquired using NI
PXI-1411).
 Coded 15000 lines of C program which was fast enough to decode 20 frames/second.
 Project involved intensive Signal and Image Processing concepts.
 Deployed 12 different filters to decode incoming signals.
SCHOLASTIC ACHIEVEMENTS








Awarded with Andrew and Shana Laursen Fellowship, UIUC, 2009.
Awarded with the Academic Excellence Award of IIT Kanpur continuously for all the years.
Awarded with prestigious best Final year Computer Science Student at IIT Kanpur.
Highest Honor in Computer Science Department with perfect GPA till 7 th Semester.
Selected for prestigious Indian Oil Scholarship given to only 70 students in India, 2004 -2008.
Received Ram Rajendra Malhotra Scholarship, given to only one student in the institute,2005
Awarded with Simran Mandeep Scholarship, given to only one student in the institute,2006
A recipient of Dayanand Scholarship, given to two students in the institute, 2006 -2008.
TECHNICAL SKILLS






Programming language: C/C++ (6 year), Java (4 year), VC++ (3 year), C# (3 year)
Scripting and Functional Language: Perl, JScript, PHP, Ruby, ML, OZ, Compute Cluster.
Web: HTML/XHTML, Ajax, XML (DOM, SAX parsing), PHP/MySQL, JavaScript, ASP.net.
Environment: Dos, Windows 9x/NT/XP/Vista/7, Linux/Unix environment.
Hardware: Assembly Language, Intel 8086 Architecture, Virology/VHDL.
Others: MATLAB, LabVIEW, Flash, Lex, Yacc, CVS, Make, Bash, XML , UML, Gnuplot, Visual
Studio.
OTHER SELECTED PROJECTS










Clustering Algorithm for Biometric Databases (Java, 2000 lines, team of two)
Compiler for ML (C, 10000 lines, team of five)
Database for Biometric Applications (Php/MySql, 2000 lines, team of two)
Iris and Fingerprint Recognition System (Java, 6000 lines, team of five)
NetPerf, a network performance measurement tool (C, 1300 lines, team of two)
Extension of Nachos (C, 2000 lines, team of three)
Remote Sensing: Wind Reversal in Tsunami (J ava, 2000 lines, team of three)
Implementation of a functional processor on an FPGA (Ve rilog, 1500 lines, team of two)
Automated acquisition of image from microscope camera (LabView)
Autonomous White Line Follower Robot (8051 Microcontroller, team of two)
RELEVANT COURCES












Data Structures and Algorithms
Discrete Mathematics
Computer Organization
Principles of Databases
Operating Systems
Theory of Computation
Linear Programming
Principles of Numerical Computation
Theory of Bio-Computing
Programming Tools and Techniques
Computer Networks
Advanced Algorithms










Compiler Design
Advanced Computer Architecture
Principles of Programming Languages
Software Engineering
Complex Analytics Dynamics and
Fractals
Machine learning and Knowledge
Discovery( audited)
Randomized Algorithm (audited)
Parallel Computer Architecture
Advanced Compiler Construction
Fault-Tolerant Dig System Design
EXTRACURRICULAR ACTIVITIES






Student representative in DUGC (Departmental Undergraduate Committee) of CSE
department. Served as a member of decision panel for degree termination c ases of students
under „Academic Provision‟.
Served as Student Guide, under Counseling Service IITK, entrusted with the responsibility
of guiding and edifying 8 new entrants of 2005 batch.
Selected as Link Student for CSE department for two consecutive years. Dealt with 15 students
under „Academic Provision‟ (AP) and helped 13 of them to get out of AP.
Held the post of Website and Newsletter Coordinator, ACA (Association of Computer
Activities). Developed a new website and introduced a forum feature in the website for the first
time.
Held the post of Website Coordinator, SFS (Student Film Society). Developed two flash based
website for SFS and UMANG, Inter College film festival of IIT Kanpur.
Actively participated in various social activities.
 Involved in teaching poor students in villages.
 Active member of Ram Krishna Seva Sansthan, dedicated to help poor and needy people.
Download