2 ms·
I think one thing that the linked article (which I think is great and I generally agree with!) misses is that libraries and abstraction can patch over the lack
by bri3d 2y ago
I think one thing that the linked article (which I think is great and I generally agree with!) misses is that libraries and abstraction can patch over the lack of composability created by heterogeneous systems. We see it everywhere - AI/ML libraries abstracting over some combination of TPU, vector processing, and GPU cores being one obvious modern place.
This happened on the PS3, too, later in its life: Sony released PlayStation Edge and middleware/engine vendors increasingly learned how to use SPU to patch over RSX being slow. At this point developers stopped needing to care so much about the composability issues introduced by heterogeneous computing, since they could use the SPUs as another function processor to offload, for example, geometry processing, without caring about the implementation details so much.