5 ms·
It’s a lot more nuanced than that. Being in a data center doesn’t imply heavy network utilization. The caveat is clearly outlined in the article being workload
by fnordpiglet 2y ago
It’s a lot more nuanced than that. Being in a data center doesn’t imply heavy network utilization. The caveat is clearly outlined in the article being workload based not deployment based. If you have a home machine doing network routing it would absolutely benefit from this. In fact I would say probably the vast majority of Linux installs are home network devices, just people don’t know it. Embedded Linux machines doing network routing or switching or IPS or NAS or whatever would benefit a lot from this. “Energy savings” can be seen as a green washing statement but on embedded budgets it’s a primary requirement.
- taeric 2y agoI was curious how much this would be applicable to home routers. I confess I'm dubious on major savings for most home users, though? At least, at an absolute level. 30% of less than five percent is still not that big of a deal. No reason not to do it, but don't expect to really see the results there.
- fnordpiglet 2y agoFor embedded it’s not about saving cost it’s about saving limited on board power. The lower the power demand of the device, the smaller and the more you can dedicate to other things.
- taeric 2y agoAgain, no reason not to do this change. I'm not clear it helps in this case, though? The savings is in low use time. During high use time, it is the same, right?
- tuetuopay 2y agoPractically none of it would be applicable (if using a commercial router). They all use hardware offloading, and traffic seldom touches the CPU. Only "logical" tasks are raised to the CPU, like ARP resolution and the likes (what’s called "trap to cpu"). If you’re doing custom routing with a NUC or a basic Linux box, however, this would gain massive power savings because that box pretty much only does networking.
- ori_b 2y agoOnly if you're using busy polling. Very little software uses it, because it's only a good fit if you think pegging a CPU to reduce latency responding to packets is a good trade.
- tuetuopay 2y agoYup, you’re right. I always forget this patch only applies to opted-in polling and not automatic polling for interrupt moderation.
- mrheosuper 2y agoif you run a VPN server, i assume all the traffic will come to CPU to decrypt, right?
- jeffbee 2y agoWhat home router would be busy polling?
- sandworm101 2y agoSomeone who decided to turn their old PC into a router because a youtube video daid "recycling" an old PC is more green despite the massive power suck.
- jeffbee 2y agoI feel like I'm repeating myself, but there are no people out there running Linux and unintentionally busy polling their network interface. This is something almost nobody does.
- Denvercoder9 2y ago> If you have a home machine doing network routing it would absolutely benefit from this. It most likely won't. This patch set only affects applications that enable epoll busy poll using the EPIOCSPARAMS ioctl. It's a very specialized option that's not commonly used by applications. Furthermore, network routing in Linux happens in the kernel, not in user space, so this patch set doesn't apply to it at all.
- p_l 2y agoNAPI is not busy poll, though, and the way the article is worded suggests it's about NAPI. Now, NAPI already was supposed to have some adaptiveness involved, so I guess it's possibly a matter of optimizing it. But my system is compiling for now so will look at article more in depth later :V
- Denvercoder9 2y agoThe article is terrible, this doesn't affect the default NAPI behaviour. See the LWN link posted elsewhere for a more detailed, technical discussion. From the patch set itself: > If this [new] parameter is set to a non-zero value and a user application has enabled preferred busy poll on a busy poll context (via the EPIOCSPARAMS ioctl introduced in commit 18e2bf0edf4d ("eventpoll: Add epoll ioctl for epoll_params")), then application calls to epoll_wait for that context will cause device IRQs and softirq processing to be suspended as long as epoll_wait successfully retrieves data from the NAPI. Each time data is retrieved, the irq_suspend_timeout is deferred.
- deleted 2y ago[deleted]
- wkat4242 2y agoThere should have been an off switch from the beginning though IMO, though perhaps there already is? But the number of corporates messing with the kernel for their own purposes greatly outnumbers the number of independent developers. That gives big tech a big influence. And the Linux Foundation is there to cement that influence. I much prefer grassroots projects. Made by and for people like me <3 That's why I moved to BSD (well there were other reasons too of course)
- varjag 2y agoUh Linux is a grassroots project, quite unlike Berkley Software Distribution. Also no you are entirely unaffected by this unless you use a very specific and uncommon syscall.
- Gud 2y agoLinux has been a corporate project for at least 20 years.
- varjag 2y agoThat roots part in grassroots means something.
- Gud 2y agoYes, but I don't think it means what you think it means? Just because Linux was developed by basement dwelling hackers 20+ years ago, doesn't make it a grassroots project. Arguably, the only somewhat mainstream operating systems today that deserve that label are the *BSDs. Haiku OS gets an honorable mention but I wouldn't consider Haiku OS to be mainstream.
- varjag 2y agoIt quite literally makes it a grassroots project. > Arguably, the only somewhat mainstream operating systems today that deserve that label are the *BSDs. I think the word you're looking for is 'sidelined'.
- mmooss 2y ago> I would say probably the vast majority of Linux installs are home network devices I'm expect there are many, but the vast majority are likely massive datacenters with hundreds of thousands of machines each running multiple instances, and also Android phones are probably more common than home equipment. Edit: Also IoT, as someone else points out.
- ryao 2y ago> It’s a lot more nuanced than that. Being in a data center doesn’t imply heavy network utilization. I suggest you reread “software used in datacenters (e.g. by CDNs) that does use it”. This is not a reference to software in a datacenter. It is a reference to software in a datacenter that uses it, which is a subset of the former.