Lars Nyland's first experience with programming was in high school, when his physics teacher introduced him to a Monroe Digital Calculator which was programmable with 128 instructions. Soon after, in his senior year he was invited with five other classmates to the US Naval Academy for a chance to work with the Dartmouth Time-Sharing system, programming in BASIC, on 110 baud teletypes. "I started with graphics right away," says Nyland, "plotting math functions, using what we now call ASCII art, on endless rolls of yellow paper!"
He went on to complete his undergraduate studies at the Pratt Institute in Brooklyn, NY, and was one of the five Computer Science majors in his graduating class of 1,000 students. He then entered graduate school at Duke, completing his doctoral degree in Computer Science in 1990. He is currently a senior architect at NVIDIA where he works on designing and enhancing the computing capabilities of Graphics Processing Units (GPUs).
"Our goal is to build the fastest computer on the planet to solve as many different kinds of computational problems as possible," says Nyland. Right now, GPUs provide great results for typical high performance computing (HPC) applications - lots of data and lots of analyses. However, outside this very specific area, GPUs are not very popular. "We would like to broaden the scope of applications that run on our future chips and we would like to obtain the most amazing results with as little power consumption as possible."
A key part of Nyland's job at NVIDIA is to find and repair anomalies within a chip. Nyland recalls dealing with the issue of an underutilized cache in a chip by comparing it to that of a competitor's and tracing the problem back to a faulty architectural decision. He used simulations to figure out that reorganizing the architecture pipeline and moving some computation to a later stage eliminated the problem. He modestly adds, "We were lucky with that one, not all anomalies are so easily overcome."
In May 2012, Nyland with his colleague Stephen Jones, introduced the Kepler GK110 GPU at the GPU Technology Conference (GTC), in San Jose, California. They proudly announced that the latest processor was all about "performance, efficiency and programmability." The GK110 is the most advanced GPU built by NVIDIA, and is claimed to have the fastest and most efficient HPC architecture. Comprised of 7.1 billion transistors, it is also the most architecturally complex microprocessor ever built.
When asked about what makes him excited about getting up and going to work every morning, Nyland jokes that "Building the fastest computer in the world is a pretty good reason to go to work, but building the computer that beats it is even better." About his experience at NVIDIA Nyland says, "I am continually amazed by not only how smart everyone is, but also how helpful and genuinely nice they are."
Before joining NVIDIA Nyland worked as Associate Research Professor at the University of North Carolina Chapel Hill and as Associate Professor at the Colorado School of Mines. "I missed living in North Carolina", says Nyland citing his reason for coming back to work in the Triangle. Nyland believes it was pure luck that right at the time that he called, NVIDIA was ramping up their computer architecture group to add features that made GPUs more generally programmable. "I had gone looking for a good job and was offered a great one designing parallel computers - exactly what I had been trained for during my PhD. Plus I would get to live in NC," he adds.
Going back to his PhD training, Nyland attributes a lot of his success to the guidance of Professor Robert Wagner. "He spanned my entire graduate student life, from the classes I took with him during my first semester to the day he put his signature on my dissertation." Nyland was captivated by Professor Wagner's breadth of knowledge and still admires him for designing and building his own parallel computer, creating fast string-difference algorithms and last but not the least, teaching him to pay attention in class.
In the late eighties Nyland was a member of the first Duke CS teams to participate in the ACM International Programming Contests under the captainship of Owen Astrachan. Inspired by their experience at the programming contests, Nyland and fellow team members decided to ride the wave of the growing Internet to run the first International Internet Programming contest, complete with automatic grading programs that completed the grading of all contest submissions within an hour of the end of the competition.
At the suggestion of the department chair, Nyland was the first CS graduate student to apply for and win a two-part fellowship offered by the university covering teaching and research for graduate students in their final year of studies. Given the opportunity to name the grant, Nyland chose "Da Vinci," having been an ardent admirer of his great engineering and artistic achievments.
"Another strong memory of grad school during the 1980's was the commitment towards creating software for the CS community." Inspired by Dana Nau's "e" editor that ran pervasively across Duke campus on all unix machines, in his third year Nyland wrote a program called slide-maker (sm), followed by interactive-sm, that created overhead slides with high-quality lettering, layout and figures, using the HP pen plotter. "The program didn't really make it beyond the department, but many students went to conferences with the best looking slides of the time, thanks to that program," recalls Nyland fondly.
Revisiting his days as a graduate student at Duke CS, Nyland recollects that "the most memorable experiences from graduate school are the relationships that were formed during that time with my classmates and teachers." He is still in touch with many of his classmates from graduate school and often falls back on his broad network of friends for professional advice.
This profile appeared in the Fall 2012 issue of Threads