[UPDATE] Performance analysis of Linux Kernel Markers 0.20 for 2.6.17

From: Mathieu Desnoyers
Date: Mon Oct 02 2006 - 10:32:20 EST


Here are two minor corrections of my results :

* Mathieu Desnoyers (compudj@xxxxxxxxxxxxxxxxxx) wrote:
[...]
> * Micro-benchmarks
[...]
> The following tests are done with the "optimized" markers only
>
[...]
> - Execute a loop with a marker enabled, with an empty probe. Var args argument
> setup, probe empty. No preemption disabling.
> NR_LOOPS : 100000
> time delta (cycles): 3363450
> cycles per loop : 33.63
- cycles per loop to disable preemption : 44.08-33.63=10.45
+ cycles per loop to disable preemption : 52.11-33.63=18.48
[...]
> * Size (x86)
>
> This is the size added by each marker to the memory image :
>
> - Optimized
>
> .text section : instructions
> Adds 6 bytes in the "likely" path.
> Adds 32 bytes in the "unlikely" path.
> .data section : r/w data
> 0 byte
+ 4 bytes for the call address
> .rodata.str1 : strings
> Length of the marker name
> .debug_str : strings (if loaded..)
> Length of the marker name + 7 bytes (__mark_)
> .markers
> 8 bytes (2 pointers)
> .markers.c
> 12 bytes (3 pointers)
>
> - Generic
>
> .text section : instructions
> Adds 11 bytes in the "likely" path.
> Adds 32 bytes in the "unlikely" path.
> .data section : r/w data
> 1 byte (the activation flag)
+ 4 bytes for the call address
> .rodata.str1 : strings
> Length of the marker name
> .debug_str : strings (if loaded..)
> Length of the marker name + 7 bytes (__mark_)
> .markers
> 8 bytes (2 pointers)
> .markers.c
> 12 bytes (3 pointers)
>


Mathieu


OpenPGP public key: http://krystal.dyndns.org:8080/key/compudj.gpg
Key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/