If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
Announcement
Collapse
No announcement yet.
FreeBSD's Network Bridge Code Scores A 500% Performance Improvement
Epoch is essentially FreeBSD's version of Linux's RCU.
Indeed. Most of the RCU patents have now expired, so FreeBSD developers could start using it (and work around the couple of related implementation techniques that are still patented).
Indeed. Most of the RCU patents have now expired, so FreeBSD developers could start using it (and work around the couple of related implementation techniques that are still patented).
Indeed. Most of the RCU patents have now expired, so FreeBSD developers could start using it (and work around the couple of related implementation techniques that are still patented).
"most" is not suficient for any lawyer. Luckily for the BSDs, epoch is better and RCU was not the end.
"most" is not suficient for any lawyer. Luckily for the BSDs, epoch is better and RCU was not the end.
"most" in the sense that it is now possible to implement a variation of it ("epoch") without infringing on the ones that remain. Epoch *IS* a form of RCU, the difference between it and the Linux version(s) is in object reclamation rules. It makes no sense to say that epoch is better than RCU any more than that a synchronized{} block in Java is better than a mutex: it *is* a mutex. The Epoch implementation in FreeBSD is better in some ways than the one in Linux as it doesn't have nearly as many weird special cases and doesn't rely on too many "clever" tricks, on the other hand Linux is more efficient in scenarios with many readers and few writers. Besides both are constantly evolving.
"most" is not suficient for any lawyer. Luckily for the BSDs, epoch is better and RCU was not the end.
FreeBSD was always years behind Linux when comes to locking and SMP, so I doubt their implementation is in half as good as Linux RCU. I also doubt epoch is better:
Our analysis helped us to identify the main source of overhead in EBR (epoch based reclaim) and decrease it, resulting in our new epoch based reclamation (NEBR) scheme. Furthermore, understanding the impact of reclamation schemes on algorithm performance enables fair comparison of different algorithms—in our case,lock-free and concurrently readable lists and hash tables.The results of our analysis indicate that QSBR is, in fact,the scheme best suited to an OS kernel environment. Our performance data from the Linux kernel shows that lockless aproaches using QSBR are practical and can outperform locking approaches by a large margin.
"most" in the sense that it is now possible to implement a variation of it ("epoch") without infringing on the ones that remain.....
"most in any sense is exactly what lawyers don't want. There is uncertainty of how far RCU can be implemented and IBM's lawyers are not going to make statements that clarify the situation. Epoch is a clean room alternative and while it is clearly more modern, there is no easy way to compare, as in benchmark, one above the other without taking many other implementation issues into account. Still, tests are welcome.
FreeBSD was always years behind Linux when comes to locking and SMP, so I doubt their implementation is in half as good as Linux RCU. I also doubt epoch is better:
I will agree with the first part of the claim. Linux has many more developers and SMP has always been ahead. However, FreeBSD has the benefit of remiplementation: it can always avoid making the errors linux made. And linux is far from perfect.
Comment