On 08/25/2015 07:44 PM, Minfei Huang wrote:
Hi. Wenjian.
Thougt deeply about this patch, I have following concerns.
Without this patch, do you have any testing about the performance
degradation, if num_threads is larger than real cpu number?
Yes, of course. I can show you some test results.
without num-threads: 9.5s
num-threads 2: 6.2s
num-threads 3: 56.7s
num-threads 4: 3m23s
num-threads 5: 3m43s
num-threads 6: 4m51s
Is it proper to do the checking in kdumpctl, since kdump takes more
care of setuping 2nd kernel, not the blendings of makedumpfile.
I think there is no problem.
It's not only the setting of makedumpfile, but also the setting of
KDUMP_COMMANDLINE_APPEND.
And it is surely that it can't be done by makedumpfile.
--
Thanks
Zhou
On 08/25/15 at 04:43pm, Zhou Wenjian wrote:
> A new feature that doing compressing and writing by multi-threads
> has been added in makedumpfile. The thread num is specified by
> "--num-threads NUM". According to its implementation, there will
> be performance degradation if the threads are more than cpus.
> So we should check it.
>
> Signed-off-by: Zhou wenjian <zhouwj-fnst(a)cn.fujitsu.com>
> ---
> kdumpctl | 15 +++++++++++++++
> 1 files changed, 15 insertions(+), 0 deletions(-)
>
> diff --git a/kdumpctl b/kdumpctl
> index b504734..fd2abe4 100755
> --- a/kdumpctl
> +++ b/kdumpctl
> @@ -259,6 +259,21 @@ check_config()
> esac
> done < $KDUMP_CONFIG_FILE
>
> + grep "^core_collector.*makedumpfile" $KDUMP_CONFIG_FILE | grep -q
"num-threads"
> + if [ $? -eq 0 ];then
> + local nr_cpus=1
> + local num_threads=0
> + local core_collector=`grep "^core_collector" $KDUMP_CONFIG_FILE`
> +
> + num_threads=`echo ${core_collector#*--num-threads} | awk '{print $1}'`
> + nr_cpus=`echo ${KDUMP_COMMANDLINE_APPEND#*nr_cpus=} | awk '{print $1}'`
> +
> + if [ $num_threads -ge $nr_cpus ];then
> + echo "The num_threads:$num_threads(specified in /etc/kdump.conf) should be
less than nr_cpus:$nr_cpus(specified in /etc/sysconfig/kdump)"
> + echo "or makedumpfile may have bad performance!"
> + fi
> + fi
> +
> check_fence_kdump_config || return 1
>
> return 0
> --
> 1.7.1
>
> _______________________________________________
> kexec mailing list
> kexec(a)lists.fedoraproject.org
>
https://lists.fedoraproject.org/mailman/listinfo/kexec