[Xenomai] memory allocation performance in kernel ipipe

Stéphane Ancelot sancelot at numalliance.com
Thu Dec 8 08:38:01 CET 2016



Le 08/12/2016 à 08:30, Henning Schild a écrit :
> Am Wed, 7 Dec 2016 15:15:39 +0100
> schrieb Stéphane Ancelot <sancelot at numalliance.com>:
>
>> Hi,
>>
>> I noticed very bad memory allocation performance on some of my
>> graphic programs (standard linux applications).
>>
>> If you run any classic program, you won't sea any difference, but it
>> has been visible in the following context :
>>
>> I have an application that allocates thousends of graphic widgets,
>> label, input fields  at startup (a data editor) .
>>
>> Using the standard kernel, the applications starts very quickly. But
>> once the ipipe patch is applied to kernel, this application makes lot
>> of seconds before appearing.
> You could profile/trace the application on both kernels and compare the
> profiles from both kernels. That should allow you to narrow down on the
> operations that are slower on ipipe. But with the high level
> description you gave so far, it is hard to tell what is going on.
> A third kernel you could try is the ipipe-patched kernel with ipipe
> disabled, see how that works.
>
> Henning
An interesting note I can add :
if the same program is launched on a remote session with ssh -X , the 
program starts efficiently and quickly.

>> I am using a 3.18 kernel.
>>
>> I made a diff on both standards and ipipe kernel configs :
>> 236a237
>>   > CONFIG_KPROBES_ON_FTRACE=y
>> 372a374,382
>>   > CONFIG_PARAVIRT=y
>>   > # CONFIG_PARAVIRT_DEBUG is not set
>>   > # CONFIG_PARAVIRT_SPINLOCKS is not set
>>   > # CONFIG_XEN is not set
>>   > CONFIG_KVM_GUEST=y
>>   > # CONFIG_KVM_DEBUG_FS is not set
>>   > # CONFIG_LGUEST_GUEST is not set
>>   > # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
>>   > CONFIG_PARAVIRT_CLOCK=y
>> 427,435d436
>> < CONFIG_IPIPE=y
>> < # CONFIG_IPIPE_LEGACY is not set
>> < CONFIG_IPIPE_CORE=y
>> < CONFIG_IPIPE_WANT_CLOCKSOURCE=y
>> < CONFIG_IPIPE_WANT_PTE_PINNING=y
>> < CONFIG_IPIPE_CORE_APIREV=2
>> < CONFIG_IPIPE_TARGET_APIREV=2
>> < CONFIG_IPIPE_HAVE_HOSTRT=y
>> < CONFIG_IPIPE_HAVE_VM_NOTIFIER=y
>> 512a514,516
>>   > CONFIG_TRANSPARENT_HUGEPAGE=y
>>   > CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
>>   > # CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
>> 6237d6240
>> < # CONFIG_IPIPE_DEBUG is not set
>> 6356a6360,6361
>>   > CONFIG_DYNAMIC_FTRACE=y
>>   > CONFIG_DYNAMIC_FTRACE_WITH_REGS=y
>> 6357a6363
>>   > CONFIG_FTRACE_MCOUNT_RECORD=y
>>
>>
>> Regards,
>> S.Ancelot
>>
>> _______________________________________________
>> Xenomai mailing list
>> Xenomai at xenomai.org
>> https://xenomai.org/mailman/listinfo/xenomai



More information about the Xenomai mailing list