3 ms·
> Instead of spending all that silicon on more CPU cores, perhaps we can add more coprocessors instead? Isn't it always a trade-off and some balance? You can a
by shmerl 6y ago
> Instead of spending all that silicon on more CPU cores, perhaps we can add more coprocessors instead?
Isn't it always a trade-off and some balance? You can add more specialized processors (ASICs) but that also takes away space from general purpose processing units on your die. So depending on the workload your co-processors might be useful or simply dead weight that's not utilized but takes away from the general purpose units that could be useful.
- chrisseaton 6y ago> or simply dead weight What's wrong with dead weight? Is unpowered silicon a problem? Can't it sit there unused until the rare occasion it is used and still be practical?
- shmerl 6y agoYou have less general purpose cores to use, so you have less processing power in that sense.
- chrisseaton 6y agoWhy do you have to have less general purpose cores? If they're not powered up at the same time they're not competing for power or heat. They're competing for space but does that matter much when you're packaging chiplets?
- shmerl 6y agoBecause your space on the die is not infinite? More ASICs - less general purpose cores. Unless you expect die size to grow more and more.
- chrisseaton 6y agoDie size is limited but package size can get pretty large without causing problems can't it? It obviously doesn't need to be infinite.
- wmf 6y agoSilicon is cheap but it isn't that cheap.
- User23 6y agoYields are inverse to the die size.
- chrisseaton 6y agoEven across modern chiplet designs?
- GoOnThenDoTell 6y agoChiplets help you hack around the problem, but you still have the chiplets themselves following the rule
- ClumsyPilot 6y agoVaruous co-processers have been usually hamstrung in development time, stable APIs, SDKs and developer support. They basically never had the issue of chio yield. Even video transcoding by the GPU and SIMD instructions in CPUs, that have been around for decades, remain poorly supported by most programming languages.
- chongli 6y agodead weight that's not utilized Dead weight, maybe, but unpowered dead weight. That’s the real tradeoff here. If you devote all of your silicon to one big general purpose machine, you need to use it for everything and so it’s always powered. If your general purpose machine can do every task but nothing well then it’s essentially always wasting a lot of energy. A collection of special purpose cores, on the other hand, might power on and off at different times, depending on the need. Each one could perform its task with a great deal of speed and energy efficiency. The whole system would then be much more energy efficient because it would only use the resources it needs to perform its tasks. It’s like choosing to own either: a) a Ferrari super car or b) a minivan and a super sport bike. In the former case, you can go really fast if you want, but you’re going to be wasting a lot of fuel getting groceries or picking the kids up at school. In the latter case, you have one vehicle for mundane tasks and another for high speed fun. Your fuel costs will be way lower and you’ll be much more energy efficient!
- shmerl 6y agoMay be more energy efficient but likely less powerful overall in general case.
- chongli 6y agoIf you want a computer with maximum general purpose power, you can buy a Threadripper today. For the rest of us who use laptops, we want energy efficiency without throttling the machine to death. Special purpose cores are a great alternative to heavy throttling of a general purpose machine.
- shmerl 6y agoThat depends. I'm fine with using Ryzen 9 with 12 cores without the need to go to a Threadripper. I doubt it would work in a laptop well. It does need a good cooler.
- FpUser 6y ago>"For the rest of us who use laptops, we want energy efficiency without throttling the machine to death" I am not sure about worldwide ratio of "us" vs them. Personally I have desktop and laptop. Laptop is not as powerful as desktop but it is still a little monster soon to be replaced with the big monster of laptop. Laptop is being used for going to client, general development when staying out of the main office for extended time in summer etc. I am not using it in a settings where the external power is not available so I do not really care about the efficiency. Rather I care about performance, especially during builds.
- deleted 6y ago[deleted]
- socialdemocrat 6y agoFor typical desktop workloads you are not going to have much advantage over 8-cores. More cores are very useful for servers, but Apple's primary concern is to demonstrate good performance under desktop workloads. The 4 high performance cores and 4 low performance cores of the M1 should give more than enough performance for regular desktop tasks, writing emails, browsing, desktop publishing etc. But as a desktop user you have special use cases where you really need performance. A lot of people who use Macs use them for video editing or image editing. These are demanding tasks and it makes sense that Apple has made special hardware to deal with these tasks. A MacBook Air with M1 e.g. can now encode video at less than half the time of the most expensive high end iMac ($4000). That means that specialized hardware really pays for itself. General purpose cores are no different than ASICs most to the time, as neither one will be needed for most common workloads. In a regular day to day usage you are never going to need say 32 cores working constantly. As a software developer I can see a benefit for more cores to do compilations, but most people are not developers and anyway Apple is planning 32-core M chips. Anyway for the kind of work I do now my 2013 model Mac Pro is still more than fast enough. But I do do video and audio work at times. Here those special coprocessors would really benefit me as well.
- shmerl 6y agoMy workloads include running VMs and compiling something like Linux kernel so I do benefit from more cores. But I don't want to run a server for such tasks. Desktop CPUs like modern Ryzens work pretty well for it. Also, single core performance benefits gaming, especially when you run things in Wine where there is more overhead. Hardware accelerated video encoding is already handled by discreet GPUs, so the benefit of putting that also in a CPU/APU is moot in the desktop use case. What so far is missing are cards that support AV1 encoding in hardware. I doubt Apple will be much of help here too.
- socialdemocrat 6y agoBy integrating everything rather than having a discrete GPU, you get performance benefits. With discrete GPU you can have beefer GPUs because you are given a bigger thermal budget. However you also loose performance from having to move data between CPU and GPU over a slow bus.