By John Soat
Rick Hetherington, Oracle's Vice President of Hardware Development, discusses the M7 breakthrough technology and features.
For many years, information technology has promised—and mostly delivered—performance advantages for business, helped along by timely, fundamental improvements in the technology itself. Take note: This is one of those times.
Oracle’s most recent SPARC microprocessor, the M7, isn’t only the most powerful version of SPARC technology to date (32 cores, 10 billion-plus transistors), it’s also one of the most sophisticated processors on the market. The M7 incorporates advanced software techniques that not only speed system performance in several ways but also guard against programming errors that can result in serious security breaches.
The M7’s an engineering marvel, for sure. But its hardwired functions, known strategically as Software in Silicon, will positively affect the performance of two of the most important technology trends in business today: data analytics and cloud computing.
But before we get to these new advanced capabilities, it’s helpful to take a step back.
When Oracle acquired Sun Microsystems in 2010, it inherited the SPARC microprocessor technology, which many observers considered mostly an afterthought to the deal. It wasn’t. “From day one, Oracle software engineers and Sun hardware experts started working together to coordinate and converge their efforts,” says Rick Hetherington, Oracle's vice president of hardware development, who joined Oracle from Sun.
In a bit of serendipity that helped build synergies between the two technology groups, Oracle’s database development team and the Sun SPARC engineers were both relatively early on in their five-year plans for the next major versions of their respective technologies. It provided a strategic starting point.
History helped, too. In 2002, Sun’s Niagara SPARC project featured a radical design—multicore multithreading—with a specific objective. “Truth be known, that processor technology was targeted fundamentally at databases,” says Hetherington.
So, it’s no accident that SPARC engineers were able to rise to the challenge Oracle presented, which Hetherington characterizes like this: “Can we understand what’s important about the database? Can we understand the direction you’re taking? And can we take advantage of that with specialized functions in our hardware?”
The answer was yes.
Juan Loaiza, Oracle's Senior Vice President of Technology, discusses Software in Silicon innovations for database performance and applications.
One of the key features of the most recent version of Oracle’s flagship database, Oracle Database 12c, is its ability to load a complete database into memory and handle it efficiently. By overcoming the need to swap data in and out of memory, a traditional drag on application response times, Oracle Database 12c boosts database-processing speeds significantly.
The M7 builds on that database performance innovation by hardwiring data query accelerator software directly into the processor. A query accelerator engine performs specific lookup functions that are part of the data query process, jacking its performance by a factor of up to 10x.
Related to that is the ability of data analytics accelerator (DAX) units to decompress compressed data. By loading data into processor memory, the database runs faster. However, that data must first be compressed to fit into memory, and then decompressed for every database query, creating another drag on performance.
The SPARC engineers came up with an ingenious solution, which was to run two functions simultaneously. “We can fuse decompression and the scan function,” Hetherington says. “And there’s a huge leap in performance using that technique.”
Most processors today are limited by memory bandwidth. The M7, however, provides 160 gigabytes of usable memory bandwidth, just about top speed in today’s market. The DAX units use 160 gigabytes of peak bandwidth; each DAX unit has four query pipelines, and each M7 can incorporate up to eight DAX units. “We can run at full memory bandwidth using those DAX units, supplying all 32 of those query pipelines,” Hetherington says. “That was the goal,” he says. “If we can peg memory bandwidth, that’s about as fast as you can go.”
It’s the close coordination of the two innovations—the in-memory database feature and the data query acceleration engine—that makes for the profound effect. “This notion of having row and column representation in your database in memory, and then technology that can scan the columnar format at full bandwidth—this is the significant game changer,” Hetherington says.
You can test your application code today.
Software engineers also worked closely with the hardware experts to make software programming less prone to errors. Oracle’s software architects lobbied for such technology to be included in the processor. "They were asking for hardware capabilities to detect memory reference errors," Hetherington says.
Memory reference problems, such as dangling pointers and buffer overflows, result from programming errors that allow applications to access memory locations not allocated to them. "These are insidious problems that occur when you have very complex multithreaded software sharing large memory spaces," Hetherington says.
The M7's engineers addressed the problem by creating unique markers that designate, or “color," memory locations. "We put in hardware features that are allowed to essentially color all of memory," Hetherington says. During memory allocation the new (SSM) function assigns a particular four-bit field to memory and to the pointers that point to that memory, he explains. When a pointer attempts to access a certain memory location, the hardware checks to make sure the two markers match. If they don’t, “a trap will occur alerting the operating system that there’s been an illegal memory reference," Hetherington says. "We detect an illegal load or store and prevent corruption of the database.”
The silicon secured memory function goes wide and deep. "SSM has an impact on the entire memory hierarchy, all the way down to the lowest-level caches," Hetherington says. At the same time, "there is a near-zero performance impact, so customers can enable SSM in production" he says.
The SSM function also provides an extra measure of security. Buffer overflows are a common means of system attack these days, Hetherington notes. For instance, the Heartbleed attack that wreaked so much havoc last year exploited buffer overflows. Fortunately, SSM can spot and trap those types of memory problems, essentially safeguarding internal data stores made vulnerable by buggy applications, whether internal or third party.
Additional features that are hardwired into the M7 processor help improve performance in more specific areas.
For example, a capability called virtual address masking lets programs track information about objects by embedding metadata in the upper unused bits of virtual address pointers. It’s intended to help speed up the process by which the Java programming language frees up memory space from old and unused objects, known as garbage collection.
Another M7-embedded performance feature helps speed data passing through a system of clustered servers. M7 incorporates “message pipes” that were developed for just such intersystem communication, in particular in conjunction with Oracle Real Application Clusters (Oracle RAC). “We have coherent fabric interconnecting our larger symmetric multiprocessing systems,” Hetherington explains. “These large SMP systems can be configured as a cluster and we use the low latent coherent fabric as an intersystem transport,” he adds.
Because several of M7’s Software in Silicon features improve database performance fundamentally and significantly, they address an area of business that’s become an increasingly important competitive weapon: data analysis and business intelligence. Hetherington says big data, streaming data, structured data, and unstructured data all revolve around one business imperative: more accurate information delivered in real time. And that’s where M7 will play a major role. “We’re accelerating the columnar in-memory database, so this is a real breakthrough,” he says.
The other area of business technology that’s increasingly looked to as an innovation enabler and competitive differentiator is the cloud. And the cloud “is a great opportunity for SPARC,” says Hetherington.
He notes that Oracle’s expertise is in IT, which will make its public cloud services, in particular PaaS (platform as a service) and SaaS (software as a service), increasingly attractive to cost-conscious, risk-averse businesses, not only in terms of performance, but also in regard to security. “The tipping point for the cloud is security,” he says. “And we can assure customers that we have the highest levels of security, given our hardware support for encryption and application data integrity, plus the holistic security architecture in Oracle Solaris 11.”
So the cloud will be something of a proving ground for M7’s performance-enhancing, security-enabling Software in Silicon features. And vice versa. “As our cloud deployment increases, we will see enterprise-level platforms migrate from on-premises to our public cloud. It's an excellent opportunity for SPARC,” he adds.
Oracle has set up a website where developers can test-drive the new processor, including its ADI function to debug their code.
Now that they’ve unleashed M7, what do the Oracle engineers have on the drawing board for the next major release of SPARC technology? Hetherington would speak only in general terms.
“We can begin to see a plateau of core count,” he says. Which means, instead of ongoing power-of-two gains in core development, look for improvements in the basic strengths of the cores. “We’re doing a lot more work in making sure that we’re building better cores, not just simply more cores,” he says.
And, of course, there’s the database. “I’m sure there’ll be another version of the Oracle Database,” he says, which makes his strategy obvious: “Where can we apply accelerators to enhance the performance of this next version of the database?” To that end, his group is in regular communication with the database architects “weekly, if not daily,” he says.
As for next steps, Hetherington is up for a challenge not fundamentally different from the one he faced five years ago, which he characterizes like this: “Where’s the next major release going, and how can we work together to create even better alignment with hardware development in our future software products?”