Evolution of SPARC Technology
Recently, Sun signed a three-year agreement with the People's Republic of China to promote OpenSPARC technology at top Chinese universities. That exciting news prompted me to seek out Sun principal engineer Dave Weaver, a colleague-cum-friend who deserves to be called Mr. SPARC, given his intimate knowledge and long involvement with that technology. We chatted about its past, present, and future plans as they relate to his 23-year-long career at Sun.Early SPARC History
Dave joined Sun in 1985 as a software engineering lead for Sunrise, later renamed SPARC. He coordinated the development of compilers, third-party software ports, and the SunOS (later renamed Solaris OS) port to SPARC, and served on the SPARC Architecture Committee. Dave wrote the original SPARC assembler and most of the peephole optimizer.
In 1986-87, Dave took over the SPARC architecture specification version 7 and oversaw its transition to version 8. Simultaneously, he led the Cross-Compiler Project, his first foray into the x86 architecture. "Not only could we cross-compile to 680x0, SPARC, and x86, but also to an IBM mainframe target processor," Dave discloses with a smile.
Subsequently, Dave remained involved in SPARC technology as he took on other engineering assignments. In 1994, the SPARC architecture specification version 9 (edited by Dave) was released by the SPARC Architecture Committee through SPARC International.
Evolution in the 2000s
In 1999, Dave developed the specification for Microprocessor Architecture for Java Computing (MAJC) before rejoining the Architecture group in Sun's Microelectronics division. "It was like coming home," he reminisces. He immediately participated in the collaboration effort between Sun and Fujitsu through a five-year contract to develop a common programmer's reference specification for both companies' SPARC processors. "We met frequently: in Japan, California, and Hawaii. It was fun!" says Dave.
"In the eight years since then, I've been teaming up with implementation engineers to create a common UltraSPARC architecture for the processors designed at Sun," Dave continues. "Before, problems abounded, for example, the instruction-set documentation was scattered around and hard to pinpoint. Through the years, we've added many architectural features, which are now all documented in one spot. The UltraSPARC Architecture specification now offers a `one-stop shop' for our processor designers. We've also developed a process for smoothly evolving the architecture over time."
In early 2006, Sun made SPARC technology open source in the form of the OpenSPARC Project. "OpenSPARC is simultaneously the only open-source 64-bit processor and the only open-source multithreaded processor in the world today," beams Dave. The T2 processor"the world's fastest commodity processor with eight cores and eight threads per core," as spelled out on the OpenSPARC sitewas released in August 2007.
"The public can now access the UltraSPARC T1 and T2 processor source code in RTL [register transfer level] form in addition to the source of the simulation tools and verification suite. Some consider that suite to be the most valuable part of the technology. All that cost Sun hundreds of millions of dollars to develop, and it's now free for anyone to download and build upon," elaborates Dave.
Furthermore, OpenSPARC technology, a robust tool for research and class work, is now in use in classrooms at 27 universities worldwide, with many more to come. Sun has established OpenSPARC Centers of Excellence at a number of universities, including notable ones like University of Illinois at Urbana-Champaign, Carnegie Mellon University, and Stanford University. The company's recent agreement with China to promote chip design through OpenSPARC technology in education, research, and industry is another case in point.
"We occasionally hear that `SPARC is dead.' Well, it definitely isn't: Architectures for general-purpose computing have sorted down to x86, SPARC, and Powerand SPARC has been a major player for over 20 years! As an architecture with open-source implementations, SPARC can go where the others can't, such as being adopted in universities across the most populous country on earth," Dave adds.
"A Unique Position"
Dave sees OpenSPARC technology occupying a unique position in the chip-design arena. "I could see it becoming the hardware equivalent of Linux in software," he observes. "Time will tell. Meanwhile, we're taking a heckuva good shot at it and SPARC has already established itself as one of the three long-term instruction-set architectures for general-purpose computing."
That's quite an accomplishment to write home about.