Posse of undergrads tackle a computing bottleneck

Last summer, Hannah Simons and Noah Bertram worked one on one with faculty members at the University of Rochester.

chen dingSimons ’20, who is majoring in computer science and gender studies, looked at how bills affecting women are edited during the legislative process in order to become laws. Bertram ’21, a math, physics and economics major, did independent study in math. 

This summer, Simons and Bertram are part a veritable posse of eager young researchers helping another University faculty member ease the bottleneck that occurs when data must be moved from a computer’s memory to its processor. They are among eight undergraduates working in the research group of Chen Ding (at left), professor of computer science.

“It’s really helpful when I’m stuck on something to be able to ask other people, and to be able to ask for more perspective,” Simons says.

“We will shoot ideas at each other and correct each other’s mistakes. Or sometimes I’ll just ask what someone is working on independently,” Bertram says. “I like it. It’s very social.”

Collaboration is key 

Ding encourages the collaboration. The very nature of conducting research in computer science depends on it, he says.

“There are so many (computing) resources available now,” Ding says. “Any single person has only a limited scope of how many tools they can use, and how much information they can look at. So, having a group like this is really beneficial.”

 Most of the students, with the help of two graduate students, are working on various aspects of Ding’s research on optimizing the use of “caches” to temporarily hold small amounts of data from a computer’s memory. Caches can ease the bottleneck that occurs when data must be located and then transferred from memory to a processor. But a cache can hold only a fraction of all the data stored in a system’s memory. How do you make sure the right data is in the right place when it’s needed? Ding has received a $499,816 National Science Foundation grant to address this problem with a process called “lease caching,” an interface that directly integrates software with hardware to determine, based on the capacity of the cache and the type of program being used, which data should be kept in the cache and for how long.

“It’s a challenging problem that has elements of math, algorithm, implementation, experimentation, program design and computer architecture,” says Ding. So, there are plenty of opportunities for students – no matter how many courses they have taken -- to find specific parts of the project that interest them and that they can contribute to. 

Michael Chavrimootoo ’20, a dual computer science and political science major, is working with another student on a different project that also bears on the problem. They are doing further research and development of advanced memory allocator software developed by the Ding group for more efficient management of memory in a computer system.

An accessible mentor

This is the largest number of undergraduates that Ding has had in his research group during a summer – reflecting the success he has had in obtaining outside funding. Five of the students this summer, for example, are being supported with supplement funding Ding has obtained through two of the three current NSF grants he is working on.

He is happy to give undergraduates the opportunity to work in his group. “It is totally new for them,” he says. “In the courses we teach them, we know the problem, we know the answer. We are training the students how to solve the problem with the solution that we teach them. In the lab, doing research, we don’t know the answer and often not even how to phrase the question.  So, it’s a very good experience for them.”

Beginning immediately after commencement, Ding conducts an orientation for his incoming summer researchers, introducing the overall problem they’ll be working on. Students read recent papers on the topic, then, with Ding’s help, start to narrow the focus of what they will work on. Students then present their ideas to the entire group.

To further build team cohesion, Ding took the students rock climbing, and celebrated a notable achievement with a group luncheon.

The undergrads also participated in Zoom meetings with leading scientists in the area they work on, including Peter Denning, a distinguished professor at the Naval Postgraduate School (on locality research) and Doug Lea, professor and chair of computer science at SUNY-Oswego (on memory allocation).

Students say they enjoy working with Ding. 

“He gives us a lot of control and ownership over what we do, and encourages us to bring our ideas forward,” says Chavrimootoo.

They especially appreciate his accessibility—and his concern that they find ways to enjoy life outside of work.

“He’s always coming in, talking to us not only about what we’re doing, but what’s going on in our lives,” says Bertram. “So, he’s like a friend. If we don’t understand something, he’s very patient.”

About the students

 Noah Betram

Noah Bertram ’21, from Jackson, Michigan, makes a point of going to bed early and “never procrastinating.” That helps him pursue three demanding degrees at once, in math, physics, and economics.

However, the main reason he is able to tackle these three majors is his “huge amount of passion and interest” in each of them, he says.  “I am therefore motivated, which ties into all three sharing a theory component.”

One of the things he finds most fascinating is “using mathematical tools and arguments to predict things in the economy,” he says. It’s not surprising, then, that he would be interested in helping Prof. Chen Ding’s research group optimize the use of “caches” to speed up the transfer of data in computer systems. “You can’t put everything you want in a cache. So, to me it is an economics problem,” Bertram says. “You’re trying to maximize the performance by figuring out what should go in the cache, and what shouldn’t.”

Bertram would like to pursue a PhD, and then a career in academia, but is still debating which field.

Michael Chavrimootoo 

Michael Chavrimootoo ’20, who is from the island nation of Mauritius, spent two gap years after high school running his own company designing web sites. He also tutored children “how to think like programmers” at a non-profit NGO in that country.

He chose to attend the University of Rochester because of its open curriculum and strong entrepreneurial programs; he is pursuing degrees in both computer science and political science.

Prior to being a teaching assistant, Chavrimootoo says, he had “absolutely no interest” in going to grad school. “But I enjoyed my TA experience with Prof. Ding so much, it reminded me how much I like teaching and want to do that in the long run.”

He now plans to pursue a PhD in computer science. Eventually he would like to return to Mauritius, teach computer science at a university there, and join efforts to make the island’s government more open. “It’s a democracy, but it’s always the same people in power,” he says.

 Hannah Simons

Hannah Simons’ 20, from Westport, CT, was more interested in the humanities in high school – until she took an AP computer science course her senior year to fulfill a science requirement.

There were only two other girls in the class of 25, but “I loved it,” Simons says.  “I had the greatest teacher.” She took additional tutoring on the side to further hone her coding skills.

She is majoring in both computer science and gender studies. Simons says it’s still “a little weird” to be a woman in male-dominated field like computer science, but she’s looking forward to attending the Grace Hopper Conference, the world's largest gathering of women technologists, this October in Orlando. 

After graduating she would like to do IT work for a tech company “that does good for the world,” preferably with initiatives to help women. “So I can continue to code, but have it matter,” she says.