[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <738d3b74-1e10-4eb5-8c0d-1db33feb740a@intel.com>
Date: Fri, 23 Feb 2024 13:28:57 +0800
From: "Wu, Fei" <fei2.wu@...el.com>
To: <linux-riscv@...ts.infradead.org>, <linux-kernel@...r.kernel.org>,
<guoren@...nel.org>, <fei2.wu@...el.com>
Subject: riscv syscall performance regression
Hi All,
I am doing some performance regression testing on a sophgo machine, the
unixbench syscall benchmark drops 14% from 6.1 to 6.6. This change
should be due to commit f0bddf50 riscv: entry: Convert to generic entry.
I know it's a tradeoff, just checking if it's been discussed already and
any improvement can be done.
The unixbench benchmark I used is:
$ ./syscall 10 getpid
The dynamic instruction count per syscall is increased from ~200 to
~250, this should be the key factor so I switch to test it on system
QEMU to avoid porting different versions on sophgo, and use plugin
libinsn.so to count the instructions. There are a few background noises
during test but the impact should be limited. This is dyninst count per
syscall I got:
* commit d0db02c6 (right before the change): ~200
* commit f0bddf50 (the change): ~250
* commit ffd2cb6b (latest upstream): ~250
Any comment?
Thanks,
Fei.
Powered by blists - more mailing lists