Re: How multithreaded is networking in FreeBSD 15.1?
David Christensen <[email protected]>
| Newsgroups | gmane.os.freebsd.questions |
|---|---|
| Message-ID | <[email protected]> |
On 8/16/26 18:23, Brett Glass wrote: > At 03:00 PM 8/16/2026, David Christensen wrote: > >> My theory for running mixed sequential/ parallel programs is that >> there is a speedup vs. efficiency sweet spot when the number of >> threads is numerically equal to Amdahl's maximum speedup value. If I >> run the program with more threads, I will get more speedup but less >> efficiency. If I run the program with less threads, I will get less >> speedup but more efficiency. > > David, thank you for the ideas. However, what I am asking is which > choice of processors (more simple cores, lower clock speed vs. fewer > fast cores, higher clock speed) will maximize the networking and routing > performance of FreeBSD 15.1, given that we will be using lagg(4) heavily > and IPFW as the firewall. The choice of hardware will depend on, among > other things, how well multithreading works within the network stack and > whether the threads are likely to get in one another's way. In older > versions of FreeBSD it paid to use fewer, faster CPUs to avoid > contention; I'm not sure if that's still the case with the latest kernel. > >> All that said, have you considered FreeNAS (now TrueNAS)? > > We're not interested in a "canned" solution. We want to handcraft these > routers for the purpose, building them from the ground up on standard > releases of FreeBSD. > > --Brett I lack the detailed knowledge required to answer your processor question with any degree of certainty. I agree that a network appliance processor should not need advanced technologies; unless there is a BSD networking library that can make use of such. I seem to recall seeing barebones NAS appliances with 8 core Celeron processors with AES-NI. If this is a one-off project, I would buy the biggest, fastest processor I could afford. If this is a low volume internal product development project, I would buy/ build a few example systems per what you have outlined, install FreeBSD, and devise benchmarks to guide selection. AIUI manufacturers have been putting custom ASIC's into networking equipment for many years. The results are better, faster, and cheaper than general-purpose computers with network interfaces. But, volume must be large to amortize the engineering and capital costs. Even if you do not choose a FreeBSD-based FOSS OS network appliance distribution, I suggest reading their web sites and message boards to get ideas. David