Virtualizing Software for Remote Classes During COVID19

Written by
Bennett McIntosh
Aug. 24, 2020

Some classes are easier to move online than others. When Princeton University decided in early March that the coronavirus pandemic would empty every lecture hall, seminar room, and teaching lab, it wasn’t easy for lectures and precepts to move online, but they made do. The ubiquity of video conferencing, email, and online teaching tools meant that the path to virtual classes—while difficult and disruptive—was relatively clear for these traditional teaching formats. But for MAE 321: Mechanical Design, an important course in the Mechanical and Aerospace Engineering Department’s core curriculum, the path was much less obvious.

That’s where Irene Kopaliani came in. Over the course of two weeks at the beginning of the pandemic, Kopaliani—the Research Cloud Computing Architect at Princeton Research Computing—worked with a team of OIT and MAE staff to virtualize the software that the Mechanical Design students were using, working to make it available to any student in the class with a laptop and an internet connection. This was no mean feat: “Virtualizing highly specialized educational software is a challenging task,” says Kopaliani. The software itself - designed to run on a single processor, on the same machine as all the files and resources it needs - must be repackaged to run virtually, with the most challenging computational tasks parallelized for faster computation. And the virtual system must remain connected to everything - from individualized settings to user profiles - that it would normally access locally.  

“In all my time at Princeton, I’ve never seen something get up and running that quickly,” recalls Axel Haenssen, Research Computing Departmental Computer Systems Analyst, who worked with Kopaliani and others on the project.

When she was hired, Kopaliani didn’t expect her job description to include pandemic response. Just seven months before the COVID-19 hit Princeton, Kopaliani joined Princeton Research Computing -- a consortium of campus groups led by PICSciE and OIT Research Computing --  to help researchers find the best way to run any research computing program they wanted in the cloud.

Irene Kopaliani with the PICSciE/RC group.

Irene Kopaliani, (front row, fourth from left) with the PICSciE/Research Computing staff in 2019.

“Most researchers are not interested in becoming systems engineers,” just to run a few simulations on a computer, she says. “They just want their computing environment to be there for them, seamlessly.” Until the pandemic hit, she spent most of her time investigating and implementing the best cloud architectures for different Princeton researchers, balancing their cost constraints with the need to keep intellectual property — or even confidential information — safe and secure, and other technical needs.

That changed in March, when the MAE department sought a way to put the software needed for Mechanical Design online, so students could truly access it from anywhere. “This project was sprung upon us when we went into a pandemic situation,” recalls Kopaliani.

Mechanical Design is among the MAE courses that depend on a small handful of on-campus computer labs. Students learning how to design new mechanical systems use specialized software for computer-aided design (CAD) and other programs to carry out their assignments — but when Princeton emptied out these computers, like every other classroom on campus, became inaccessible. As a stopgap solution, students who needed to access the lab turned to Windows’ Remote Desktop, which allowed them to log into one of four workstations from wherever they had gone when campus shut down. But Remote Desktop was a poor substitute: for one thing, only four computers were available for remote access, and sharing them among the dozens of students who needed them for Mechanical Design and other classes was vexing.

Jeff Addo, the Technical Support Specialist in the MAE department, brought up the difficulty students in the mechanical design class were having accessing their software, and Kopaliani and others immediately started working on a solution. “This was a week before spring break,” says Kopaliani, “and the goal was to have a working solution when students returned from break”—even if “returning” meant logging on from a laptop in Denver or Shanghai.

Addo, Kopaliani, Haenssen, and the rest of the team had their work cut out for them. “This is a set of tools that one cannot run from one’s laptop,” says Kopaliani. Rendering a design can take hours or days of computing time. “It needed to be accessible from anywhere in the world, with all the tools and configurations that a student would need loaded into the laptop.”

Meeting almost every day, Kopaliani, Haenssen, Addo, and others chose to use Apporto, a service that would not only run the needed software on the cloud but “virtualize” it for them, saving the team the dicey work of adapting specialized software to run on the cloud instead of on a desktop. The team faced a few other challenges: adding Princeton’s single sign-on service to the cloud app, and letting the app make requests through Princeton’s firewall to get licenses for the software. But they handled it all within two weeks, letting the urgency of their task carry them forward. “We had to streamline our usual processes quite a bit to meet our deadline,” says Haenssen. “We applied Agile Methods, running things in parallel, instead of traditional project management processes. For many decisions, it was just Irene and myself saying ‘yeah, that’s going to work.’” And it did.

Using laser illumination to visualize the flow behavior over a panel in motion

Daniel Floryan and Rodrigo Lisazo using laser illumination to visualize the flow behavior over a panel in motion. The mechanism that holds the panel was designed to move in ways that mimic fish swimming behaviors. From these experiments we can gain a better understanding of how fish swim and how we can use that knowledge in the design of future underwater vehicles. Photo by  Tyler VanBuren  

Though they were thrown together on the project by circumstance, the chemistry of the group was key to their success. “It’s the friendliest group of people I’ve ever worked with,” says Kopaliani.

“Irene is great,” says Haenssen, “She’s always willing to talk and listen about how things fit into Princeton’s way of doing things. She brought this wealth of knowledge about cloud infrastructure to Princeton, and being willing to learn about Princeton culture made her able to get this up and running very quickly.

By the time students returned (virtually) to classes after spring break, a working prototype was up and running. “OIT were on the ball with this one,” says Addo. “At the beginning there was a lot we didn’t know about the virus. I think this project went above and beyond what we needed just to get through the semester.”

Now that Princeton has decided at least half of its undergrads will be studying remotely each semester for the next year, Haenssen, Kopaliani, and the rest are now looking toward the next semester, preparing virtual desktops for whatever mode education takes in the fall. “The spring was a good proof of concept, and now we’re scaling it up to allow potentially hundreds of students to use it,” says Kopaliani. 

With the help of new team members Jesse Barron, Brandon Kennedy, and Harris Otubu, the team will launch a new deployment of Apporto before the fall semester starts. This expanded suite will be able to serve hundreds of users, with more than twenty programs for research in fields from public affairs to architecture and engineering. 

Even when all students are able to return fully to campus—whenever that may be—having the option to use a virtual desktop could be much more convenient for both students and the University, says Haenssen. Students can access powerful software from their dorm rooms, or from home, and the University won’t have to manage—and dispose of— as many expensive desktop computers. “We don’t want to have machines sitting around idle and taking up space, when we can do something virtual.”

As Princeton looks to use cloud systems more and more in its research and teaching, Kopaliani says she’s proud to be there to enable it. At Princeton, she says, “You work for a goal that’s larger than you. You don’t just worry about the bottom line, you worry about the next generation of researchers and students, who are going to make the world better.”