Date: Thu, 9 Apr 2020 02:43:47 -0700 From: Luigi Rizzo <rizzo@iet.unipi.it> To: =?UTF-8?B?w5Z6a2FuIEtJUklL?= <ozkan.kirik@gmail.com> Cc: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, freebsd-ipfw <freebsd-ipfw@freebsd.org>, "Andrey V. Elsukov" <bu7cher@yandex.ru> Subject: Re: dummynet performance Message-ID: <CA%2BhQ2%2BiFTwvug9TrRme%2BCY0J%2B29yyPhwNrqqEf2hHTeXPehgAA@mail.gmail.com> In-Reply-To: <CAAcX-AEamLFbAucFXYJ0k3FePddYC7M-OtQRsTgQ3UWz_z%2BBBA@mail.gmail.com> References: <CAAcX-AEamLFbAucFXYJ0k3FePddYC7M-OtQRsTgQ3UWz_z%2BBBA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Apr 9, 2020 at 2:18 AM =C3=96zkan KIRIK <ozkan.kirik@gmail.com> wro= te: > > Hello, > > I wonder if it is possible to update dummynet code multi-threading capabl= e > practically? > My idea is below: > - A new sysctl tunable will be defined as > "net.inet.ip.dummynet.thread_count" (default 1) > - To distribute tasks along threads, each sched instance can be assigned = to > different thread. > ... What are you trying to achieve ? In general, the scheduler needs to know the state of all flows to perform correct scheduling of traffic. You could in principle split the load on multiple threads under specific, very restrictive conditions (each thread runs a different scheduler, they cannot share the excess bandwidth, and the total bw does not exceed the link's capacity, each scheduler has a different queue on the NIC). cheers luigi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2BhQ2%2BiFTwvug9TrRme%2BCY0J%2B29yyPhwNrqqEf2hHTeXPehgAA>