I have held the following professional appointments:
-
Co-op Engineer, AMD Research, Austin, TX. (Summer 2014).
I was part of the extensive R&D effort geared towards enabling high-performance computing at exascale. Specifically I worked in the areas of software and hardware modifications to improve the performance of scientific message-passing programs (using the MPI library) on distributed heterogeneous computing systems. I implemented OpenMPI collective and one-sided communication plugins in order to effectively utilize the novel distributed heterogeneous architecture being investigated by the research group in AMD. I was also involved in building an emulation framework to functionally emulate the proposed architecture on existing hardware.
-
Visiting Researcher, Information Sciences Institute, Arlington, VA (Summer 2012).
In ISI, I worked in the areas of cloud computing and software package building. The primary focus of my work was to find out how to effectively integrate a high performance file system in a cloud platform so as to provide the file system as a service to users running high performance computing applications in the cloud. I was involved in setting up a working Lustre File System installation on custom RHEL kernels, building prototypes for different HPFS access methods for KVM instances, and evaluating and analyzing the performance using the IOR benchmark.
I also worked in building and testing ISI’s release of the Essex edition of the OpenStack cloud management software. To facilitate package-building, I helped set-up a workflow for automated rpm building from source code repository using package building tools such as Gear and Mock. I gained a lot of familiarity with the OpenStack software suite by performing detailed installation and functional testing of ISI’s OpenStack release.
-
Summer Intern, Advanced Micro Devices, Bangalore, India (Summer 2010).
I designed and implemented an interface between the timing and functional simulators in order to enable dynamic program phase identification, so that detailed timing simulation can be employed selectively, thereby reducing the total benchmark simulation time significantly. The modifications to the simulators and the algorithms were implemented using C++.
-
Technical Consultant, PricewaterhouseCoopers, India (2005-2007).
Before joining graduate school, I worked as a software developer and team leader in SAP implementation projects with clients like Ranbaxy Fine Chemicals Limited, Indian Tobacco Corporation, and Adhunik Steel Limited. Besides performing the primary roles of custom software design & implementation, I was actively involved in managing teams of programmers, reviewing peer-codes, and training & mentoring colleagues and client personnel.