Breaking News
Comments
Newest First | Oldest First | Threaded View
DougInRB
User Rank
Manager
Re: Great idea, but...
DougInRB   2/13/2014 6:09:17 PM
NO RATINGS
I may have spent too much time reading between the lines, but it appeared to me that they were promoting a pool of heterogeneous processors where apps would be directed to the processor that best fit its profile.  If this is the case, then there are going to be resource conflicts, thus the queueing.  The queueing can be internal, but may require a lot of memory if the bottlenecks are significant.  In the case of cell phones, etc. the interconnections are very application specific.  To make them general purpose as I surmised from the article, a whole new programming model would be required that includes scheduling and other conflict management functions built into the HW.

If we want an array of homogeneous processors, then the GPUs and Xeon Phi are already doing this - and they are very power hungry.

About the pix, I chose this avatar because I love this Yosemite hike and most people haven't seen Half Dome from this side :-).

rick merritt
User Rank
Author
Re: Great idea, but...
rick merritt   2/13/2014 4:52:53 PM
NO RATINGS
@DouginRB (love that pix BTW)

I suspect Horowitz was pointing to work at parallel research labs at Stanford and Berkeley that concluded instrad of one big monolithic general processor, we want a host of task specific blocks to have best p/r and p/w.

That's what we are already seeing in smartphone chips with their grpahics, audio, image, baseband and general processors. So most data movement is on chip. Is the penalty still big?

krisi
User Rank
CEO
Re: Multiple Cores, Energy Optimization, and Performance
krisi   2/12/2014 6:32:41 PM
NO RATINGS
Great observation DrQuine...in this case special typeof parallelism is at play: hierarchy...I would imagine this should be possible to reproduce in software but it clearly isn't today...Kris

DrQuine
User Rank
CEO
Re: Multiple Cores, Energy Optimization, and Performance
DrQuine   2/12/2014 6:15:01 PM
NO RATINGS
One of the under appreciated features of the human brain is the ability to prioritize.  If I ask you a complex math problem and you're attacked by a lion at the same time, you'll ignore my question (and provide a random answer) while you run for safety. Computers will always deliver the "correct" answer to the math problem even if in the process the combined delay proves fatal to the greater objective. I suppose it is one of the advantages of our highly parallel processing system with a sophisticated overarching control system. Every once in a while we find ourselves slightly conflicted - but considering the quantity of processing that we're doing these events are trivial and quite infrequent. Imagine if once a day we got into gridlock and our hearts, lungs, and brains stopped pending a reboot. We would have been extinct millions of years ago. Perhaps there is a lesson in that for computers.

krisi
User Rank
CEO
Re: Multiple Cores, Energy Optimization, and Performance
krisi   2/12/2014 12:12:46 PM
I am not sure I agree Zewde...people keep talking about using brain as an example, and perhaps multiple cores is a small example in this direction...but the basic computation and communication we use in electronics is digital while brain uses analog...very different approaches...also we insist on perfection (we test all chips so they don't "fail" by trying as many vectors as possible), brain is fine with rough calculations and coasional errors...but look at the power dissipation, brain 20W, Watson from IBM 20kW, 1000x difference...Kris

zewde yeraswork
User Rank
Blogger
Re: Multiple Cores, Energy Optimization, and Performance
zewde yeraswork   2/12/2014 11:03:54 AM
NO RATINGS
We are essentially trying to design machines that look increasingly like the human brain...parallel processing devices with the ability to compute multiple tasks at the same time...this explains the recent fascination with DeepMind and a number of other AI companies.

NiKoMatsu
User Rank
Rookie
Re: Multiple Cores, Energy Optimization, and Performance
NiKoMatsu   2/11/2014 9:28:04 PM
NO RATINGS
Those "background" tasks you refer take over the user responsiveness because the bottleneck it is in your input/output (IO) operations. Spinning Hard drives have and extremely non-linear performance regarding multiple access. It is very difficult to predict that performance hit because it depends on so many factors (data positiion, number of disk resources been accessed "simultaneously", disk internal algorithm, energy class, etc).  The solution is to get a more predictable IO device like an SSD. I have a couple of them (SATA and PCIe based) and there is no turning back. 

And being extremely conservative about using disk resources from background processes it is not going to help because reading two 4KB chunk of data which are far apart kills disk performance in a way the final user notices. Perhaps if applicactions could have access to latency or command queue depth metrics they would know better when the system is really idling.

Just my two cents.

krisi
User Rank
CEO
Re: Multiple Cores, Energy Optimization, and Performance
krisi   2/11/2014 4:45:49 PM
NO RATINGS
The problem lies in software, e.g our inability to program multi-core operation efficiently...if you llook at the human brain it is highly parallel...although I am not sure how many cores do I have under my skull ;-)...Kris

DrQuine
User Rank
CEO
Multiple Cores, Energy Optimization, and Performance
DrQuine   2/11/2014 1:06:27 PM
NO RATINGS
Other than marketing bragging rights, what is the optimal number of CPU cores to maximize performance and minimize energy use? Other than image processing (where parallel processing has obvious benefits), most computer tasks consist of many interacting threads. Parallel multi-processor algorithms are still in their infancy and grid-lock conditions are becoming increasing familiar to computer users. Can certain tasks be dedicated to an available core to distribute the work? Could a core be reserved for the user so there is some level of responsiveness in the computer? It seems to me that today "background" tasks like scanning disks and file backup have a way of completely taking over the computer and blocking the most basic user operations. Obviously the task prioritization algorithms are failing miserably. That said, the prospects for multiple cores to be coordinated effectively are not encouraging.

DougInRB
User Rank
Manager
Great idea, but...
DougInRB   2/11/2014 12:53:46 PM
NO RATINGS
Having been in the hardware acceleration business for over a decade, I completely understand the concept of moving data from one algorithm processor to the next one in a programmable way.  There are some huge problems with this concept that have to be considered - and will take many years to resolve...

First, many of the scheduling operations that are currently done within the OS will need to move to hardware.  For example, if one algorithm processor is busy and 3 others want to feed their results to it, then the resource needs to scheduled.  Priorities need to be considered, and queues need to be created to prevent the processors vying for the downstream resource from being stalled.  Figuring how to do this in an efficient way will take a lot of R&D.  Otherwise, all the memory accesses we are trying to reduce will be spent dumping and retrieving data from these queues. 

While it is great in concept to have a bunch of hardware legos that we can connect in any fashion, the reality is that connecting two legos in a unique way means doing a new silicon spin, which takes months to complete.  If we use FPGAs to shorten the turn-around time, then we've defeated the goal of reducing power.

Finally, there are a lot more software engineers than hardware architects.  Training up a new breed of developers is going to take a long time.

So, while I embrace the idea, I'm a bit skeptical about the economics of actually making it happen.  We've been trying to get rid of the basic Von Neumann machine for a long time, and I've seen very little headway toward making this happen...

 

 



Flash Poll
EE Life
Frankenstein's Fix, Teardowns, Sideshows, Design Contests, Reader Content & More
Max Maxfield

Fist Bumps & the Zombie Apocalypse
Max Maxfield
25 comments
Are you concerned about the possibility of a Zombie Apocalypse or do you scoff at the thought of such an eventuality? If the latter, would you be surprised to hear that the US military has ...

Rishabh N. Mahajani, High School Senior and Future Engineer

Future Engineers: Don’t 'Trip Up' on Your College Road Trip
Rishabh N. Mahajani, High School Senior and Future Engineer
8 comments
A future engineer shares his impressions of a recent tour of top schools and offers advice on making the most of the time-honored tradition of the college road trip.

Larry Desjardin

Engineers Should Study Finance: 5 Reasons Why
Larry Desjardin
41 comments
I'm a big proponent of engineers learning financial basics. Why? Because engineers are making decisions all the time, in multiple ways. Having a good financial understanding guides these ...

Karen Field

July Cartoon Caption Contest: Let's Talk Some Trash
Karen Field
151 comments
Steve Jobs allegedly got his start by dumpster diving with the Computer Club at Homestead High in the early 1970s.

Top Comments of the Week
Like Us on Facebook
EE Times on Twitter
EE Times Twitter Feed

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)