mbox series

[net-next,0/2] net/smc: introduce ringbufs usage statistics

Message ID 20240805090551.80786-1-guwen@linux.alibaba.com (mailing list archive)
Headers show
Series net/smc: introduce ringbufs usage statistics | expand

Message

Wen Gu Aug. 5, 2024, 9:05 a.m. UTC
Currently, we have histograms that show the sizes of ringbufs that ever
used by SMC connections. However, they are always incremental and since
SMC allows the reuse of ringbufs, we cannot know the actual amount of
ringbufs being allocated or actively used.

So this patch set introduces statistics for the amount of ringbufs that
actually allocated by link group and actively used by connections of a
certain net namespace, so that we can react based on these memory usage
information, e.g. active fallback to TCP.

With appropriate adaptations of smc-tools, we can obtain these ringbufs
usage information:

$ smcr -d linkgroup
LG-ID    : 00000500
LG-Role  : SERV
LG-Type  : ASYML
VLAN     : 0
PNET-ID  :
Version  : 1
Conns    : 0
Sndbuf   : 12910592 B    <-
RMB      : 12910592 B    <-

or

$ smcr -d stats
[...]
RX Stats
  Data transmitted (Bytes)      869225943 (869.2M)
  Total requests                 18494479
  Buffer usage  (Bytes)          12910592 (12.31M)  <-
  [...]

TX Stats
  Data transmitted (Bytes)    12760884405 (12.76G)
  Total requests                 36988338
  Buffer usage  (Bytes)          12910592 (12.31M)  <-
  [...]
[...]

Wen Gu (2):
  net/smc: introduce statistics for allocated ringbufs of link group
  net/smc: introduce statistics for ringbufs usage of net namespace

 include/uapi/linux/smc.h |  6 ++++
 net/smc/smc_core.c       | 74 ++++++++++++++++++++++++++++++++++------
 net/smc/smc_core.h       |  2 ++
 net/smc/smc_stats.c      |  8 +++++
 net/smc/smc_stats.h      | 27 ++++++++++-----
 5 files changed, 97 insertions(+), 20 deletions(-)

Comments

shaozhengchao Aug. 6, 2024, 3:52 a.m. UTC | #1
Hi Wen Gu:
    Your patchset looks fine. However, the current smc-tools tool is not
supported, so will you update the smc-tools tool?

Thank you

Zhengchao Shao

On 2024/8/5 17:05, Wen Gu wrote:
> Currently, we have histograms that show the sizes of ringbufs that ever
> used by SMC connections. However, they are always incremental and since
> SMC allows the reuse of ringbufs, we cannot know the actual amount of
> ringbufs being allocated or actively used.
> 
> So this patch set introduces statistics for the amount of ringbufs that
> actually allocated by link group and actively used by connections of a
> certain net namespace, so that we can react based on these memory usage
> information, e.g. active fallback to TCP.
> 
> With appropriate adaptations of smc-tools, we can obtain these ringbufs
> usage information:
> 
> $ smcr -d linkgroup
> LG-ID    : 00000500
> LG-Role  : SERV
> LG-Type  : ASYML
> VLAN     : 0
> PNET-ID  :
> Version  : 1
> Conns    : 0
> Sndbuf   : 12910592 B    <-
> RMB      : 12910592 B    <-
> 
> or
> 
> $ smcr -d stats
> [...]
> RX Stats
>    Data transmitted (Bytes)      869225943 (869.2M)
>    Total requests                 18494479
>    Buffer usage  (Bytes)          12910592 (12.31M)  <-
>    [...]
> 
> TX Stats
>    Data transmitted (Bytes)    12760884405 (12.76G)
>    Total requests                 36988338
>    Buffer usage  (Bytes)          12910592 (12.31M)  <-
>    [...]
> [...]
> 
> Wen Gu (2):
>    net/smc: introduce statistics for allocated ringbufs of link group
>    net/smc: introduce statistics for ringbufs usage of net namespace
> 
>   include/uapi/linux/smc.h |  6 ++++
>   net/smc/smc_core.c       | 74 ++++++++++++++++++++++++++++++++++------
>   net/smc/smc_core.h       |  2 ++
>   net/smc/smc_stats.c      |  8 +++++
>   net/smc/smc_stats.h      | 27 ++++++++++-----
>   5 files changed, 97 insertions(+), 20 deletions(-)
>
Wen Gu Aug. 6, 2024, 11:54 a.m. UTC | #2
On 2024/8/6 11:52, shaozhengchao wrote:
> Hi Wen Gu:
>     Your patchset looks fine. However, the current smc-tools tool is not
> supported, so will you update the smc-tools tool?
> 
> Thank you
> 
> Zhengchao Shao
> 

Hi, Zhengchao.

Yes, after these kernel patches are merged, I will submit the corresponding
modification to smc-tools.

Thanks!

> On 2024/8/5 17:05, Wen Gu wrote:
>> Currently, we have histograms that show the sizes of ringbufs that ever
>> used by SMC connections. However, they are always incremental and since
>> SMC allows the reuse of ringbufs, we cannot know the actual amount of
>> ringbufs being allocated or actively used.
>>
>> So this patch set introduces statistics for the amount of ringbufs that
>> actually allocated by link group and actively used by connections of a
>> certain net namespace, so that we can react based on these memory usage
>> information, e.g. active fallback to TCP.
>>
>> With appropriate adaptations of smc-tools, we can obtain these ringbufs
>> usage information:
>>
>> $ smcr -d linkgroup
>> LG-ID    : 00000500
>> LG-Role  : SERV
>> LG-Type  : ASYML
>> VLAN     : 0
>> PNET-ID  :
>> Version  : 1
>> Conns    : 0
>> Sndbuf   : 12910592 B    <-
>> RMB      : 12910592 B    <-
>>
>> or
>>
>> $ smcr -d stats
>> [...]
>> RX Stats
>>    Data transmitted (Bytes)      869225943 (869.2M)
>>    Total requests                 18494479
>>    Buffer usage  (Bytes)          12910592 (12.31M)  <-
>>    [...]
>>
>> TX Stats
>>    Data transmitted (Bytes)    12760884405 (12.76G)
>>    Total requests                 36988338
>>    Buffer usage  (Bytes)          12910592 (12.31M)  <-
>>    [...]
>> [...]
>>
>> Wen Gu (2):
>>    net/smc: introduce statistics for allocated ringbufs of link group
>>    net/smc: introduce statistics for ringbufs usage of net namespace
>>
>>   include/uapi/linux/smc.h |  6 ++++
>>   net/smc/smc_core.c       | 74 ++++++++++++++++++++++++++++++++++------
>>   net/smc/smc_core.h       |  2 ++
>>   net/smc/smc_stats.c      |  8 +++++
>>   net/smc/smc_stats.h      | 27 ++++++++++-----
>>   5 files changed, 97 insertions(+), 20 deletions(-)
>>