Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Channels ▼


Economic Models for Many-Core Processors

Rakesh Kumar is an Assistant Professor in the Electrical and Computer Engineering Department at the University of Illinois at Urbana Champaign. He can be contacted at passat.crhc.uiuc.edu/rakeshk/.

Imagine working on your computer and suddenly realizing that you need more processing power than you currently have. Now consider the ability to simply go online to the computer or processor vendor's website, submit your credit-card information, specify how much more processing power you need, and for how long, hit a button, and, bam!—there appears a pop-up that says, "Congratulations, your hardware has been upgraded." Similarly, imagine the ability to downgrade at will or, for that matter, pay for processing power just like electricity or cell phone service—only for what you have used.

We believe that such economic models may indeed become feasible for many-core processors. Current economic models for processors require customers to estimate their average-case or worst-case computational requirements beforehand, and then buy a processor or system that meets those needs. This causes computational resources on chips to often not match computational requirements of customers and their applications. So processors are often under- or over-utilized, both resulting in "wasted" dollars. And the problem gets exacerbated as the number of cores on a processor increase.

Joseph Sloan and I have published a technical report (www.crhc.uiuc.edu/~rakeshk/techrep_economic.pdf) that presents four alternative economic models for many-core computing. The proposed models recognize that when a many-core chip is bought, the customer may often wish to pay for fewer cores than what is present on a chip. The models provide the customer the flexibility to change the available peak computational capability of the chip (or effective number of cores) during the lifetime of the chip.

  • The Upgrades Only model lets users adapt to increased average computation needs by scaling up any time postfabrication and postpurchase.
  • The Limited Up/Downgrade model lets users adapt to changes in computational need by upgrading/downgrading the chip on demand.
  • The Cores On Rent model lets users rent access to cores as long as the hardware has a valid lease. Access to cores is revoked upon lease expiration.
  • Finally, the Pay Per Use model measures and records hardware usage and the billing happens over a specified lease period.

The last two models let users treat processing as a service by decoupling payment from ownership. These models are in addition to an Intelligent Baseline model, where users make one-time decisions about the number of cores they need, and vendors appropriately enable a subset of cores on the chip before shipping.

There is also a strong economic motive to look at alternative economic models. Currently, each chip has exactly one peak computational capability. Because the number of unique chips is decreasing due to prohibitive manufacturing costs and diminishing profit margins, there is an increasing disparity between the computational power that a customer needs and the capability that a chip can provide. This again results in wasted dollars and reduced efficiency. The problem gets worse with increasing number of cores on a die.

Economic models such as this are not new.

Large-scale server systems (or mainframes) also use a Capacity-On-Demand (COD) system where the economic models are similar—the IBM COD systems being just one example. The primary difference is the nature of customers. For the COD systems, the customers are typically a relatively small number of trustworthy, visible companies that can be tracked and made accountable if they do not subscribe fairly to the economic model. With many-core processors, authentication becomes a concern due sheer volume and anonymity of customers. Similarly, security and robustness become a concern as anonymity may encourage malicious users/customers to unlock the processing power. Also, reversibility (or downgrades) needs to be enforced more stringently as there are fewer ways to force the customer to give up resources. This difference in the nature of customers translates into unique support and enforcement mechanisms. In fact, the bulk of our work in this area is devoted to looking at the hardware and system-level mechanisms that are needed to enable the economic models. Mechanisms range from techniques to uniquely identify a chip, to securely authenticating a user, to locking access to unauthorized cores. Most policing mechanisms need to be implemented in hardware and made inaccessible to the user to ensure the integrity of the models.

Several other issues need to be worked out to make these models a reality, the biggest being the concern about the licensing model for software. Conventional software licensing models tie licensing to a peak computational capability. The proposed models allow changes in the available peak computational capability of a chip and may, therefore, require unconventional software licensing models.

But then again, imagine...

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.