This is such an excellent excellent thing! The sample use cases are so direct & simple: we can send a webcam over a stream! Nice! Its so ridiculously easy with a little gstreamer! Excellent!
I do wonder if the stream interface is the ultimate incarnation, how cpu-efficient this will be versus perhaps some more radical approach with more obvious memory mapping / RDMA sort of feels.
This is really wandering a bit afar, but this somewhat recalls the recently reposted The World in which IPv6 was a good design (2017), in thinking: maybe here is a place where we could do IPv6 but not atop ethernet. Of course the kernel is not set-up for that. But the idea of protocol acceleration is in general interesting here, generally. Maybe we go higher up the stack: what would it be like if we had a really nice QUIC in the kernel, and could have some kind of super fast QUIC transport over a USB4 connection? https://news.ycombinator.com/item?id=47821429https://apenwarr.ca/log/20170810
I'll also note that CXL is finally sort of starting to have it's day, especially with memory prices being what they are & the hyperscalers needing massive KV caches & being able to use their old DDR4 in CXL memory expanders. CXL is primarily being used for memory expanders right now it seems like, but I hope we see interesting accelerators and other storage too. More generally though: CXL 3.1 completed a move from a host-based architecture, to CXL as a multi-host fabric. And notable here: also allows for host-to-host connectivity. I love seeing stuff like that so much! A very high speed fabric that computers already speak, no NIC required, that computers and peripherals can plug in to! I hope so much this grows beyond the High Data Keep ultrascalers & shows up for mortals too, some day!
It's lovely to me anytime I see a computer I own able to start offering interesting suites of services to other computers, acting like a very capable device to other computers: that's exudes such a malleable systems wonderment to me.
I remember showing a friend NoHands a decade and a half ago: oh, you want your Linux computer to act like a Bluetooth headset? No Problem! And the look of awe that these things could be possible! The directions of these protocol relationships aren't cast in stone, it's such a delight when we gain flexibility & freedom over our devices & how they connect, when we are free do more, connect as we please. The top down hierarchical relationships growing fuzzy & flexible & becoming free-flowing graph relationships brings such creativity & possibility.
It sounds like we are inventing the DSSD D5 again? But why would one use volatile DDR5 if the bandwidth constraints it? Better to rely on cheaper nonvolatile flash.
This is such an excellent excellent thing! The sample use cases are so direct & simple: we can send a webcam over a stream! Nice! Its so ridiculously easy with a little gstreamer! Excellent!
I do wonder if the stream interface is the ultimate incarnation, how cpu-efficient this will be versus perhaps some more radical approach with more obvious memory mapping / RDMA sort of feels.
This is really wandering a bit afar, but this somewhat recalls the recently reposted The World in which IPv6 was a good design (2017), in thinking: maybe here is a place where we could do IPv6 but not atop ethernet. Of course the kernel is not set-up for that. But the idea of protocol acceleration is in general interesting here, generally. Maybe we go higher up the stack: what would it be like if we had a really nice QUIC in the kernel, and could have some kind of super fast QUIC transport over a USB4 connection? https://news.ycombinator.com/item?id=47821429 https://apenwarr.ca/log/20170810
I'll also note that CXL is finally sort of starting to have it's day, especially with memory prices being what they are & the hyperscalers needing massive KV caches & being able to use their old DDR4 in CXL memory expanders. CXL is primarily being used for memory expanders right now it seems like, but I hope we see interesting accelerators and other storage too. More generally though: CXL 3.1 completed a move from a host-based architecture, to CXL as a multi-host fabric. And notable here: also allows for host-to-host connectivity. I love seeing stuff like that so much! A very high speed fabric that computers already speak, no NIC required, that computers and peripherals can plug in to! I hope so much this grows beyond the High Data Keep ultrascalers & shows up for mortals too, some day!
It's lovely to me anytime I see a computer I own able to start offering interesting suites of services to other computers, acting like a very capable device to other computers: that's exudes such a malleable systems wonderment to me.
I remember showing a friend NoHands a decade and a half ago: oh, you want your Linux computer to act like a Bluetooth headset? No Problem! And the look of awe that these things could be possible! The directions of these protocol relationships aren't cast in stone, it's such a delight when we gain flexibility & freedom over our devices & how they connect, when we are free do more, connect as we please. The top down hierarchical relationships growing fuzzy & flexible & becoming free-flowing graph relationships brings such creativity & possibility.
If we could have a 12 channel raid 0 of ddr5 in a cxl/pcie expansion slot, that would be amazing
It sounds like we are inventing the DSSD D5 again? But why would one use volatile DDR5 if the bandwidth constraints it? Better to rely on cheaper nonvolatile flash.