Re: [PATCH v6 0/8] Additional kmsg devices

From: Kazimierz Krosman
Date: Fri Feb 26 2016 - 08:23:04 EST

On 02/25/2016 10:47 PM, Tejun Heo wrote:
I'm not sure this is the right layer to implement generic logging
In general this patches add only one feature- possibility of adding and deleting
new kmsg devices, so I think that it can be treated as kmsg upgrade.
2. Using kmsg can cause lower CPU utilisation in the real-word use case than
>userspace logging mechanisms.
>We created 2 tests: (1) 100 writer processes write to created kmsg buffer and
>(2) 100 writers write to socket (stream)- there is one reader to protect
>socket buffer against overflow. Tests show that cpu utilisation in case of first
>test is about 2.3 times lower (39.1%) than it is in second case (87.7%) (measured
>with top program; tests code is attached below). Tested on Odroid XU4.
This sounds like a generic IPC problem than anything else.

For the test purpose I've written two tests (attached in cover letter). I think that tests
show that in this use case (multiple writers) system with additional kmsg devices
consumes less CPU time than system which use sockets for logging. Logging system
based on sockets needs read process, that continuously reads socket and protects
against socket buffers overflow and messages drop. It is one of advantages of this
solution: no maintenance.

Could you explain in more detail what did you mean by IPC problems?


Kazimierz Krosman

Samsung R&D Institute Poland
Samsung Electronics