ARM exec: Open standards will make us all rich

ARM and AMD sittin' in a tree, heterogeneous-ily


Fusion Summit ARM has joined forcing with AMD to promote what they call "heterogeneous computing".

ARM Fellow and vice president of technology Jem Davies took the stage on Tuesday at AMD's Fusion Developer Summit, insisting that the two chip designers share a vision of the computing future.

"It may seem strange that AMD have invited someone from ARM to come along and talk to you today about this...And, indeed, in some ways it is," Davies told his keynote audience on Tuesday at the Summit in Bellevue, Washington. "[But] there is great agreement between ARM and AMD. Much of what we believe in terms of the technology directions where the industry is going – in terms of heterogeneous computing – there's huge agreement between us."

What is heterogeneous computing? In a nutshell, a heterogeneous computing system has all of its processing components – CPU, GPU, video and audio processors, and the like – tightly bound and working in concert, aware of one another, sharing workloads and memory space in the most efficient ways. What's more – to borrow a term from AMD corporate fellow Phil Rogers – these components can "slosh" system power amongst each other as needed.

Heterogeneous computing is also the buzzterm du jour at AMD's developer event. We first heard it when AMD, announcing its Fusion dev kit this January (now at version 2.4), called for submissions from "heterogeneous computing pioneers" who wanted to participate in the Summit. And Davies happily picked up the baton.

He noted that although shrinking process sizes allow for more transistors per chip, and that those additional transistors allow chip designers to add special-purpose – "domain-specific" – cores and circuitry, there's a crying need for new ways of getting those specialized units to cooperate efficiently, thus minimizing power needs.

"It's all about hetereogeneous processing," said Davies. "It's the only game in town. It's the only way we can use all these transistors effectively to provide you, the developer community, with systems that will execute your code in a better way."

To allow heterogeous computing to spread out of the rarified aeries of expert programmers, Davies believes, high-level abstractions are required. As an example, he said that high-level abstractions have worked quite well in traditional CPU-based programming.

CPUs may be complex, Davies said, but programming tools and languages have managed to hide a good amount of that complexity. But on some level, this is changing. "When we move to multi-core CPU and multi-core GPUs, we're introducing a bit more complexity. That complexity is due to things like the memory-consistency models, the threading models – but there's much more."

In the brave new world that ARM and AMD envision, things will get tougher. "Heterogeneous computing, where we start moving code from one device to another, makes it more complex," Davies said. "There's no doubt about it."

Giving GPUs and other domain-specific circuits an equal role in a heterogeneous system requires new ways of thinking. "A lot of graphics developers, they got into the business to create stunning visuals. They didn't get in the business to argue with computer scientists about memory-consistency models," he said.

"So we need to abstract away from this complexity and present a simpler world to the developer...And if we don't do it, then developers simply won't use these new systems, they won't use the new capabilities we're giving them – or they'll use them badly and get it wrong."

But if coders don't use new capabilities or use them inefficiently, they're not to blame. "Either way, it's our fault, and you'll hate us for it – which is not a comfortable position for me to be in, so I'm going to try really hard to avoid that."

But efficient high-level abstractions are not enough. "If all providers of computer systems provide different abstractions," Davies said, "you'll hate us for it again. So we need standards, and we need a very small number of them."

Reminding his audience of a famous, wry quote from computer scientist and teacher Andrew Tannenbaum – "The nice thing about standards is that there are so many of them to choose from" – Davies admonished: "We've got to stop this."

The reason behind the need for standards is simple: money. "We have an economic imperative to enable you guys to reuse code. If you can't reuse your code across multiple platforms, then it's not going to work for you," Davies said. "And if it's not going to work for you, it doesn't work for us."

Davies is not a engineering-is-all purist. "I make no hesitation – as a geek, as a technologist – to stand here in front of you and talk about economics. I'm not embarrassed about this at all."

"You need to understand the costs and who pays them," he said. "Because if we come up with some clever stuff and move the costs all onto your side of the plate, you're going to be really unhappy."

The standards model, he said, "only works if everybody in the system is making money: the CPU designers, the GPU designers, the people making silicon chips, the people who make consumer electronics devices, the people who make the tools, and you guys making applications to run on those systems."

That's the type of thinking that underlies everything that ARM does, Davies said. "AMD is very much the same. This is very much an understanding that we share."

Whether a technological solution is correct or not is almost beside the point. In Davies' view. "Being right is easy. As technologists, as engineers, it's pretty easy for us to be right. You argue your case, and the facts will prove or disprove whether your right," he said. "Making money is the tricky bit."

Energy-efficient heterogeneous computing is the key to success. If IP designers and developers can solve that problem, he said, "everything else is easy, we all get rich, and I foresee a world of sunshine and drinks with little parasols in them." ®

Bootnote

Despite all his talk of standards, Davies didn't mention the one standard that's top-of-mind at the Summit: OpenCL. When this omission was pointed out to him in a post-keynote Q&A session, he said: "I don't talk about OpenCL because it's a given. It's an obvious. The world of open standards will win in the end."

Narrower topics


Other stories you might like

  • AI tool finds hundreds of genes related to human motor neuron disease

    Breakthrough could lead to development of drugs to target illness

    A machine-learning algorithm has helped scientists find 690 human genes associated with a higher risk of developing motor neuron disease, according to research published in Cell this week.

    Neuronal cells in the central nervous system and brain break down and die in people with motor neuron disease, like amyotrophic lateral sclerosis (ALS) more commonly known as Lou Gehrig's disease, named after the baseball player who developed it. They lose control over their bodies, and as the disease progresses patients become completely paralyzed. There is no currently no verified cure for ALS.

    Motor neuron disease typically affects people in old age and its causes are unknown. Johnathan Cooper-Knock, a clinical lecturer at the University of Sheffield in England and leader of Project MinE, an ambitious effort to perform whole genome sequencing of ALS, believes that understanding how genes affect cellular function could help scientists develop new drugs to treat the disease.

    Continue reading
  • Need to prioritize security bug patches? Don't forget to scan Twitter as well as use CVSS scores

    Exploit, vulnerability discussion online can offer useful signals

    Organizations looking to minimize exposure to exploitable software should scan Twitter for mentions of security bugs as well as use the Common Vulnerability Scoring System or CVSS, Kenna Security argues.

    Better still is prioritizing the repair of vulnerabilities for which exploit code is available, if that information is known.

    CVSS is a framework for rating the severity of software vulnerabilities (identified using CVE, or Common Vulnerability Enumeration, numbers), on a scale from 1 (least severe) to 10 (most severe). It's overseen by First.org, a US-based, non-profit computer security organization.

    Continue reading
  • Sniff those Ukrainian emails a little more carefully, advises Uncle Sam in wake of Belarusian digital vandalism

    NotPetya started over there, don't forget

    US companies should be on the lookout for security nasties from Ukrainian partners following the digital graffiti and malware attack launched against Ukraine by Belarus, the CISA has warned.

    In a statement issued on Tuesday, the Cybersecurity and Infrastructure Security Agency said it "strongly urges leaders and network defenders to be on alert for malicious cyber activity," having issued a checklist [PDF] of recommended actions to take.

    "If working with Ukrainian organizations, take extra care to monitor, inspect, and isolate traffic from those organizations; closely review access controls for that traffic," added CISA, which also advised reviewing backups and disaster recovery drills.

    Continue reading

Biting the hand that feeds IT © 1998–2022