Previous | Next --- Slide 60 of 63
Back to Lecture Thumbnails
derrick

This is interesting that there are so many different cores in this phone chip, but how exactly does a manufacturer essentially tailor the actual design of the cores to fit the specific task? And what makes these better than "vanilla" cores that aren't used for specialized purposes.

subscalar

To respond to part of derrick's question, the CPU core that you would normally program is very general in its capabilities. This is good for flexibility, since you can feed as many instructions as needed to do any type of computation, but the more instructions that are required, the slower each instance of that computation becomes.

Sometimes, we know ahead of time certain operations that we'll need to perform often. If these operations would require several instructions on the CPU, it may be better (more power efficient, faster/fewer cycles) to design and dedicate separate hardware for those operations. 3D graphics, for example, heavily use linear algebra and calculations on triangles. GPUs are designed with these computations in mind, and this has consequences for other parts of the design, such as how the memory for geometric vs texture data is handled. This makes the GPU, and programming it, very different from the CPU.

Perhaps somebody with more familiarity could provide real numbers or comparisons for graphics or other domains that benefit from such dedicated hardware.

Kecleon

Following up on derrick's question, I wonder if apple's closed phone ecosystem takes advantage of specializing different tasks, just because they would know better about use cases.

laimagineCS149

On mobile phones, ARM seems to be taking a dominating lead in the mobile processor market. I was wondering why x86 is less favorable than ARM on mobile, and found this interesting article on it. Worth a read to gain some brief insight into this question: https://www.techspot.com/article/1989-arm-inside/

Please log in to leave a comment.