Q&A with Sandhya Dwarkadas, New Chair of UVA’s Department of Computer Science

The Department of Computer Science at the University of Virginia School of Engineering and Applied Science welcomed its newest chair, Sandhya Dwarkadas, on June 27.

The excitement for Dwarkadas’ arrival had been building since UVA Engineering Dean Jennifer L. West announced her appointment last October.

“Sandhya is a world-class researcher with excellent leadership skills and experiences,” West said.

“She has a demonstrated record of fostering interdisciplinary collaboration and supporting diversity, equity and inclusion, with an emphasis on increasing the participation of women and students from other backgrounds traditionally underrepresented in computer science.”

Dwarkadas is focused on bringing that interdisciplinary approach to research and education in UVA computer science, and fostering a sense of welcome and community.

Sandhya Dwarkadas closeup

Sandhya Dwarkadas, Walter N. Munster Professor and Chair of the UVA Department of Computer Science

“I look forward to immersing in all things UVA and C’ville,” she said. “I am excited to find out more about how UVA integrates with the community and how we can make connections to attract diverse talent to the University at both the undergraduate and graduate level.”

Dwarkadas joins a department that has made strides in inclusivity, particularly across gender lines. She is the fourth woman to serve as chair since the department was established in 1970. The Chronicle of Higher Education identified UVA as having the sixth-highest percentage of women earning computer science degrees among public universities in the country.

The department also has earned national and regional attention for opportunities for students, such as three consecutive national championships in a collegiate cyber security challenge; a strong showing in the first Indy Autonomous Challenge; and recent reports that UVA computer science graduates perform exceptionally well on an industry software test and in their starting salaries compared to graduates from other programs.

Dwarkadas brings her own significant accomplishments. She comes from the University of Rochester Hajim School of Engineering and Applied Sciences, where she was interim associate vice president for research and the Albert Arendt Hopeman Professor of Engineering. She held a primary faculty appointment in the Department of Computer Science and a secondary appointment in the Department of Electrical and Computer Engineering. She was chair of the computer science department from 2014 to 2020.

Dwarkadas received her bachelor’s degree from the Indian Institute of Technology Madras, and her master’s and Ph.D. from Rice University.

She is co-chair of the Computing Research Association’s committee on widening participation in computing research. In 2017, she was named a fellow of the Institute of Electrical and Electronics Engineers, and the following year, she was named a fellow of the Association for Computing Machinery.

Dwarkadas has made extensive contributions to the design and implementation of shared memory in hardware and software. For work on energy-aware configurable architectures, she received a test-of-time award earlier this year recognizing the most influential papers published in past sessions of the International Symposium on Microarchitecture.

We talked to Dwarkadas about what drew her to engineering and computer science; making the move to UVA; her research areas in hardware and software design; increasing diversity and inclusion in computer science; and her vision for computer science at UVA.

Q: Tell us a little bit about your background – where you grew up and went to school, and how you became interested in computer science and computer engineering.

A: I was born in Mumbai but grew up mostly in Bangalore in the south of India after my father retired from the army when I was 5 or 6. I got into the Indian Institute of Technology Madras, one of the IIT schools, which are the most prestigious engineering schools in the country. Growing up, I was attracted to physics, but it was all the rage then to be practical, especially in India and especially in the ’80s. You wanted a degree where you could have a livelihood – at least everybody around you wanted that. I studied electrical engineering because, in some senses, it combined physics and practicality. I had a choice to do computer science at the time - it was a brand-new undergraduate degree at the university - but I chose not to. And then slowly I got attracted to the digital side of things and that’s how I gravitated from physics to electronics to computer engineering.

To give you some idea of my experiences as an undergraduate, in any one of these elite IIT institutions you had about 1,000 students at the time, so each class year consisted of 250 to 300 students across all the engineering departments. In my class of 1986, we were six women in a class of 300, every one of the six in a different field. We had our own dorm that was not close to the other dorms, so it was a pretty isolating experience because you were separated from the rest of your classmates.

But ultimately, it is what you make of it. It was isolating in the sense that it was not easy to walk next door and find a classmate to quickly ask a question, or to spend the night studying together for an exam, but there were enough of your classmates who were willing to interact. We could make arrangements to study together in the library, and there were seniors who might be able to help you with certain courses because they had taken the course before.

What is your particular area of research, and what big challenge are you trying to address? How did you get involved in that area of research?

My research is in the areas of computer architecture and experimental systems, primarily focused on parallel and distributed systems. Parallel systems mean there are multiple processors using shared memory. Distributed systems use independent components with their own memory resources, but they’re connected by a network, for instance, a cellular network. Your laptop and cell phone today are examples of parallel architectures.

I work at the interface of hardware and software, sometimes looking at technology influences on the architecture, and other times at how to design the software layers that interact with the hardware to improve performance, scale and usability. I have made fundamental contributions to the design and implementation of shared memory both in hardware and in software, and to hardware and software energy- and resource-aware configurability. I got drawn to this area by my interest in addressing the challenges of coordination and communication in concurrent computation. Despite decades of research in this area, new challenges continue to arise, driven by new applications and usage patterns at the software levels, as well as new technologies with vastly different properties at the hardware level.

Properties such as time, energy, accuracy, reliability, security and persistence require re-architecting to adapt to technology changes. Although not exclusively, in large part, my research focuses on coordination, communication and sharing – the design of scalable (in terms of data size and core/accelerator count) coherence protocols and data movement mechanisms at the architecture level; the interaction of hardware and software, for example, through the development of policies to use the hardware mechanisms at the software level and the use of hardware performance counters for resource allocation at the operating system level; and the design of scalable runtime systems that allow parallel applications to scale to larger core counts and data sizes.

What are you most proud of accomplishing during your six years as chair of the Department of Computer Science at Rochester?

During my tenure as chair, I oversaw an almost three-fold increase in our undergraduate student population while increasing the percentage of women to a sustained (roughly) 30% in each graduating class; an expansion of our master’s program, and  significant growth in our Ph.D. program and in our research funding; an increase in both instructional and tenure-track faculty with eight new faculty hired, including two women; and strategic expansion via departmental participation in interdisciplinary education programs, including data science, computational biology, computational linguistics and the business school’s information systems track. I also oversaw the design process for our department’s new building from its inception, working to ensure that the space needs of our diverse areas of research were met. 

Foremost in my mind through all these expansions was being able to sustain a cohesive community despite growing enrollments. Building community and preserving the collegial environment that was already there, in which both students and faculty can thrive, was important to me. I think that is a large part of why we were also successful in increasing the percentage of undergraduate women and other groups underrepresented in computer science.

I believe my experience as chair at University of Rochester Computer Science has prepared me well to work across schools, departments and centers in order to help increase the impact and visibility of computer science at UVA.

What drew you here?

Having been on the 2019 external advisory board for the UVA computer science department, I was impressed with its trajectory as well as the collegiality of the department, and was attracted by the opportunity to help shape its growth. With a program in computer engineering, several interdisciplinary research centers, the Biocomplexity Institute, a newly formed School of Data Science, and roughly 50% of its undergraduate majors from UVA’s College of Arts and Sciences, computer science has a broad educational and research reach within the University, requiring appropriate resourcing and nurturing. I particularly look forward to increasing the visibility of the computer engineering program, jointly managed with the Department of Electrical and Computer Engineering. Computer engineering draws participation by faculty from several departments within engineering, many of whom are also participants in the research centers. There is also great potential to leverage collaborations with the School of Data Science and the Biocomplexity Institute to expand our efforts in data analytics at scale.

You had success increasing diversity in your department at Rochester, especially among women. What lessons can you apply here at UVA to increase enrollment and retention of underrepresented groups?

One of the takeaways from my activities to broaden participation is that community building is a key component to increasing a sense of belonging and improving the retention of groups traditionally underrepresented in computing. At Rochester, this has had a multiplicative effect on increasing our reach and impact, as students self-organized to conduct activities to support each other, as well as to connect with the next generation via outreach programs for high school students to encourage them to consider computer science. I hope to enable such activities at UVA as well.

The pandemic has had the unfortunate effect of eroding that sense of community due to the necessity for isolation. Rebuilding will take concerted effort on all our parts, and I will be looking for creative ways to engage our faculty, students and staff.

Can you talk a little about how you see your research fitting into UVA computer science’s strength areas?

There is a revival of parallel and distributed computing at an unprecedented scale. I believe going forward many of the challenges will require an increasingly interdisciplinary approach – knowledge of both application domains and underlying technology. I strive to keep abreast of both – via collaborations with users of parallel computing (e.g., biologists, physicists, biostatisticians, radiologists and algorithmicists) and via collaborations with industry (DEC/Compaq, IBM, Intel, Facebook/Meta, Google, Qualcomm and Huawei).

You can look at research centers at UVA like the Link Lab and Center for Research in Intelligent Storage and Processing in Memory, and the partnerships across the University, including the Biocomplexity Institute and the School of Data Science, to see how the computer science department and School of Engineering value multidisciplinary research and capitalize on diverse backgrounds and talents. Whether it’s engineering for health, cybersecurity or leveraging smart technologies, I see potential for collaborations and contributions that build on these local strengths.

UVA’s computer science department has experienced explosive growth in the last few years, and is rolling out a new curriculum. What do you see as the key challenges and opportunities for the department over the next three to five years?

The increase of interest in computer science provides both challenges and opportunities for the department. The challenges involve ensuring that the department is resourced and equipped to meet the needs of its growing educational and research charter. The opportunities lie in tapping the diverse talent pool through our interactions with multiple schools – engineering, arts and sciences, data science, and the medical school. Our new curriculum reflects our goal of expanding the pathways into a computing career. Computing touches almost every human endeavor, and this is also reflected in our expanded research mission to encompass interdisciplinary research across multiple domains. I look forward to forging collaborations across the schools in order to facilitate this research, and to raising the visibility and impact of computer science research at the University of Virginia.