(PhysOrg.com) -- While today's top-line personal computers boast of dual- or quad-core processors to handle complex workloads, experts predict hundreds or even thousands of core processors may be commonplace within the next decade.
That will enable computers to simultaneously perform a vast range of functions only dreamed about today.
But that poses a daunting task for the engineers who must design memory systems to work with these multi-core processors in a quick, energy-efficient and thermally cool manner.
Zhichun Zhu, University of Illinois at Chicago assistant professor of electrical and computer engineering, has been awarded a five-year, $400,000 National Science Foundation CAREER Award to investigate the architecture for building this next generation of computers.
"We have a lot of challenges facing us," she said. "If each core is running an independent application, each will need a piece of memory to store its data and instructions for the computation."
That is going to require a lot of memory, she said. While today's home computers typically have at least a gigabyte of DRAM -- dynamic random access memory -- to do the job, tomorrow's computers may need a terabyte -- that is a thousand gigabytes -- or more. And the memory will not just be DRAM, but an assortment of types.
Keeping this assortment of memory functioning in a way that doesn't consume vast amounts of power, doesn't overheat, and comes in a compact package as consumers demand will require what Zhu calls universal and scalable memory systems.
"We'll need a new memory architecture that can support diverse memory devices that when put together will work as a whole," said Zhu.
The UIC computer engineer will develop software programs to run simulations that test and validate ways to link diverse memory components that work seamlessly together.
Zhu's grant will support a graduate assistant and will involve undergraduate students who will learn of the problems and potential of the upcoming multi-core era, including the need to write complicated parallel computer programs.
Zhu said parallel computing has been around a long time, but was used mainly by computational scientists at large national laboratories.
"In the future, to get the most performance from personal computers, we'll need to go from sequential to parallel applications," she said. "Maybe all undergraduates will need to learn how to write parallel programming instead of just sequential code."
Explore further: Communication-optimal algorithms for contracting distributed tensors