Apple is Working on Multi-Core Processor Snoop Filtering for Macs
This is one of those patents that are for the super techno-geeks amongst us who love to get under the hood of their machines and tinker with everything. With that said – Apple's patent generally relates to cache memory management and, more particularly, to cache memory management in multi-core central processing units. Apple's patent steps into the area of bus snooping, a technique used in distributed shared memory systems and multiprocessors to achieve cache coherence. Apple's patent is about reducing snoop traffic which will provide Apple's entire line-up of Macs with better power efficiency for quad core systems and future Sandy Bridge configurations and beyond.
Patent Background
Electronic devices of all types frequently rely on processors to perform computing tasks, which may process instructions or data stored in one or more memory devices. To improve processor efficiency, cache memory may store frequently- or recently-accessed memory in a form more rapidly accessible to the processor. When more than one processor has access to main memory, as may frequently occur in multi-core or other multiprocessor systems, a portion of the main memory may be simultaneously stored as cache memory associated with two or more processors. To maintain the integrity of memory used in multi-core or other multiprocessor systems, various cache coherence techniques have been devised.
One common cache coherence technique involves bus snooping, in which processors broadcast memory references to each other on a dedicated bus so that data can be transferred between caches rather than accessing main memory. While bus snooping may enable cache coherence, bus snooping may also consume resources, such as power and time, and thus may reduce processor efficiency. Moreover, as the number of processors in a multi-core or multiprocessor system increases, the amount of snooping and broadcasting may increase exponentially, reducing the efficiency of such systems accordingly.
Patent Summary
The present disclosure relates to techniques for reducing snoop traffic in a central processing unit. In accordance with one embodiment, an electronic device includes a central processing unit having a plurality of cores. A cache memory management system may be associated with each core that includes a cache memory device configured to store a plurality of cache lines, a page status table configured to track pages of memory stored in the cache memory device and to indicate a status of each of the tracked pages of memory, and a cache controller configured to determine, upon a cache miss, whether to broadcast a snoop request based at least in part on the status of one of the tracked pages in the page status table.
Relates to All Multi-Core Macs
According to Apple's patent, electronic device 8 noted above in patent FIG. 1 may take the form of a computer or other type of electronic device. Such computers may include computers that are generally portable (such as laptop, notebook, and tablet computers) as well as computers that are generally used in one place (such as conventional desktop computers, workstations and/or servers). In certain embodiments, electronic device 8 in the form of a computer may be a model of a MacBook, MacBook Pro, MacBook Air, iMac, Mac mini, or Mac Pro available from Apple Inc.
Apple credits Jeffry Gonion as the sole inventor of patent application 20100235586, originally filed in Q1 2009. For the super-geeks who would like to see this patent immediately, here's a temporary link that should be good for 48 hours. For consumers, beware: beyond this point you're brain is likely to melt (ha!).
Notice: Patently Apple presents only a brief summary of patents with associated graphic(s) for journalistic news purposes as each such patent application is revealed by the U.S. Patent & Trade Office. Readers are cautioned that the full text of any patent application should be read in its entirety for further details. For additional information on any patent reviewed here today, simply feed the individual patent number(s) noted in this report into this search engine. About Comments: Patently Apple reserves the right to post, dismiss or edit comments.
Apple clearly lists the computers by name that this patent pertains to. Systems like the Mac Pro uses an Intel Processor and I can't see it running thing else (x86) in the short term. Apple is only taken seriously in the workplace today because they play nice with Window/x86 environments.
You state Marc that the "ARM schematic that Apple has lifted in this patent for presentational intention..." Sorry, I don't see the resemblence of the ARM schematic (via your link) to what Apple presents in the patent - at all. Just because it shows the word "Snoop" means nothing.
I don't know the relationship that Apple has with Intel in respect to what they are or are not allowed to control. We will likely never know the answer to that Marc. But Apple adding the name of the computers that this patent pertains to, tells me that it's not ARM.
Like you said, we'll agree to disagree on this one.
Cheers!
Posted by: Jack Purcher | September 17, 2010 at 03:56 PM
We'll agree to disagree on Sandy-Bridge as it's design doesn't remotely resemble the ARM schematic that Apple has lifted in this patent for presentational intentions, not to mention Apple won't be designing custom controllers and patenting them to use within the Intel IP vicinity, nor with AMD for that matter.
This is a mirror of the ARM Cortex-A9 Multicore 4CPU design.
http://www.arm.com/images/Cortex-A9-MP-core_Big.gif
Apple has access to this Hardware IP, because they paid heavily to license it [Intel did as well which probably explains why their Atom is trying to match the ARM] and it's reasonable this patent is w/ regards to Darwin leveraging this design for the iOS Platform and their future numbered revisions of the A# Processor that includes their own GPU integrated via IMGTech.
I like how they've generalized the patent for future desktop, laptop or other general purpose systems, but it seems rather clear it's immediate impact is for the A# [A5, A6 or whatever they call it] Apple Processor of the future with 4 Cores; hence the ARM A-9 Cortex as baseline to draw upon.
Posted by: Marc J. Driftmeyer | September 17, 2010 at 03:36 PM