On 4/15/22 04:47, Chris Hofstaedtler wrote:
Hi Axel, zhenwei,

* Axel Beckert <a...@debian.org> [220414 15:08]:
Since you're asking, I allow myself to cite my reply to your inquiry
with me back then (June 2021):

Thanks!

---------------------------------------------------------------------

Hmmm, do they do the same? Can I test that irqtop from util-linux
somewhere?

Since people seem to expect the irqtop tool from util-linux, I see
multiple options:

1) If the irqtop from util-linux is clearly superior: Drop building
    the irqtop package from src:iptables-netflow and let util-linux
    generate a transitional package. (Versions should be no problem
    with 2.6 < 2.36.)

    I more or less built that binary package, because that tool was in
    the upstream sources and no such feature was present in Debian so
    far and I didn't want to pull in ruby just for a DKMS kernel module.

2) If none of them is clearly superior and they have different feature
    sets, using the alternatives system might be an option.

    Since I expect both to be just TUI tools without having an API
    being used by other tools, different commandline options should not
    be an issue here.

3) Rename one of them, e.g. to irqtop-nf or irqtop-ul or so. (Renaming
    both of them will be needed for variant 2 anyways.)

In case you intend to add lsirq for bullseye, you could also add
irqtop as irqtop-ul or so (i.e. variant 3b), too. That shouldn't cause
any disturbance IMHO.

---------------------------------------------------------------------

As far as I can see, I didn't get a reply back from you on these
suggestions of mine. Maybe my mail fell through the cracks. But I
think we should take the discussion up again, probably in this bug
report.

Right. I think I forgot to reply back then - sorry.

Experimental should have util-linux-extra 2.38-4+exp1 very soon,
with irqtop installed. Obviously this can only be used for testing.

Personally I think we should have only one irqtop - from my point of
view it does not matter which one. Maybe the new version is
superior. In any case we should not confuse our users.

zhenwei, do you have input on the differences between the existing
irqtop and the new irqtop from util-linux?

Another point which comes to my mind now is that it might make sense
to rename the current irqtop package to irqtop-nf (or irqtop-ruby)
just to make clear that it does not contain the irqtop tool from
util-linux.

Might be an idea. But lets see what the differences are, first.


Thanks,
Chris

Hi, Chris & Axel

The main difference between the two versions:
- original irqtop shows separated interrupt information
- new irqtop shows aggregate interrupt information

Test env: Debian 10; 96 CPUs on a server, 230 characters per line in termial.

- irqtop (original version) shows uncompleted interrupts(31 / 96 CPUs).
n194-087-081 - irqtop - 2022-04-15 09:42:48 +0800
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7 CPU8 CPU9 CPU10 CPU11 CPU12 CPU13 CPU14 CPU15 CPU16 CPU17 CPU18 CPU19 CPU20 CPU21 CPU22 CPU23 CPU24 CPU25 CPU26 CPU27 CPU28 CPU29 CPU30 C cpuUtil: 0.0 0.0 0.4 0.0 1.3 0.0 0.0 0.2 0.0 0.0 0.0 0.0 0.0 0.0 0.2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.2 0.2 0.2 0.2 0.0 0.2 %irq: 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %sirq: 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 irqTotal: 32 293 477 5 34 7 5 1805 112 51 3 2 28 2 1901 1 13 16 0 6 1 19 2 2 67 29 51 51 42 9 34 i 9: . 2 0 0 0 . . . . . . . . . . . . . . . . . . . . . . . . . . i 48: . . . . . . 0 . . . . . . . . . . . . . . . . . . . . . . . . i 49: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i 50: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i 51: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


- irqtop (from util-linux) shows aggregate interrupt information.
irqtop | total: 575548749447 delta: 518913 | n148-134-075 | 2022-04-15 10:02:14+08:00

IRQ TOTAL DELTA NAME
      LOC 218396041027    393883 Local timer interrupts
      RES 217686711923     50039 Rescheduling interrupts
      PIN  40532867503     10053 Posted-interrupt notification event
      CAL  15012540676      2013 Function call interrupts
      PIW  13810059255     57692 Posted-interrupt wakeup event
      TLB   8699607720      1597 TLB shootdowns
      221   4235495788        88 IR-PCI-MSI 50331656-edge eth0-4

Other enhanced features from the new version:
 - sort by several rules, include IRQ, TOTAL, DELTA and NAME.
 - specify cpus in list format to monitor.
 - specify output columns to print.
 - enable/disable per-cpu statistics by specified mode.
- performance improvement. New irqtop written by C uses a little CPU when running 'irqtop -d 1', the Ruby version spends more time(quite obvious on a 96 CPUs platform).

--
zhenwei pi

Reply via email to