lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250405120039.15953-1-dirk@gouders.net>
Date: Sat,  5 Apr 2025 14:00:05 +0200
From: Dirk Gouders <dirk@...ders.net>
To: Namhyung Kim <namhyung@...nel.org>,
        Arnaldo Carvalho de Melo <acme@...nel.org>,
        Ingo Molnar <mingo@...hat.com>, Peter Zijlstra <peterz@...radead.org>
Cc: Dirk Gouders <dirk@...ders.net>, Ian Rogers <irogers@...gle.com>,
        Adrian Hunter <adrian.hunter@...el.com>,
        LKML <linux-kernel@...r.kernel.org>, linux-perf-users@...r.kernel.org
Subject: [PATCH v2 0/3] perf bench sched pipe: more processes, additional worker, multipliers for -p

I'm very sorry for the missing cover letter in v1; it was me giving
git send-email one wrong answer.
That cover letter explained that I want to share some changes I was
experimenting with, maybe something of that will be considered useful:

1) The possibility to run more than two processes (new option
   -p/--nprocs).
2) An additional worker function that sends tokens in a complete graph
   in contrast to the original worker that simulates a ring.
3) Multipliers for -p so that a machine-specific multiplier 'p'
   meaning "number of online processors" can easily be specified.

I'm sending the v2 with fixes for issues that I noticed myself, so
that something more correct is out in case somebody finds the time to
look at this...

Regards,

Dirk

Changes since v1:

* In v1, I completely missed to finish the handling of the new option
  -p together with cgroups (-G).  I now kept the restriction of two
  cgroups and just put every process with an even index in the first
  one, the others in the second one.

* Don't explicitely cast u32 to unsigned int (a parallel discussion
  in another huge series was about something different -- not such a
  case).

* Don't put the start of the thread_data array inside it; all workers
  know their indexes and can thus access all other data.

* Merge create_pipes() and create_thread_data().
  The result isn't that complicated, no need to split those.


Dirk Gouders (3):
  perf bench sched pipe: add -p/--nprocs to run more than 2 workers
  perf bench sched pipe: add complete graph simulation
  perf bench sched pipe: introduce multipliers for number of processes

 tools/perf/Documentation/perf-bench.txt |  46 ++++-
 tools/perf/bench/sched-pipe.c           | 244 ++++++++++++++++++------
 tools/perf/util/string.c                |  58 ++++++
 tools/perf/util/string2.h               |   1 +
 4 files changed, 286 insertions(+), 63 deletions(-)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ