Hi ,

 

We have a C++ application that uses lksctp for transmission and reception of SCTP message. Our application does not report consistent message transfer rate (Tx and Rx) when multiple (two or three) instances of the same application are being run. I mean, the data rate is approximately 8k messages per second  using a single application, however total messages per sec. get dropped to 18k when three instances of the same application are run. We have symmetric multi-processor (SMP) system with 4 CPUs (2GHz each).

 

To identify the performance bottleneck, we did profiling the system with OProfile (version 0.8.1) with following settings

 

~/.oprofile/daemonrc

CHOSEN_EVENTS[0]=CPU_CLK_UNHALTED:100000:0:1:1

NR_CHOSEN=1

SEPARATE_LIB=0

SEPARATE_KERNEL=1

SEPARATE_THREAD=0

SEPARATE_CPU=0

VMLINUX=/usr/lib/debug/lib/modules/2.6.9-55.ELsmp/vmlinux

IMAGE_FILTER=

CPU_BUF_SIZE=0

CALLGRAPH=0

 

The opreport –l obtained from the profiled data shows the SCTP module has been sampled maximum no of times but it doesn’t display the symbol information of sctp. The first 5 samples from opreport are as below.

 

CPU: Core Solo / Duo, speed 1995.21 MHz (estimated)

Counted CPU_CLK_UNHALTED events (Unhalted clock cycles) with a unit mask of 0x00 (Unhalted core cycles) count 100000

samples  %        app name                 symbol name

30498     9.3073  sctp                     (no symbols)

14241     4.3460  vmlinux                  sock_poll

13684     4.1761  vmlinux                  fget

10322     3.1500  vmlinux                  get_offset_pmtmr

9210      2.8107  vmlinux                  _spin_lock_irqsave

 

System configurations:

 

Redhat Enterprise Linux 2.6.9-55ELsmp.

gcc version 3.4.6 20060404 (Red Hat 3.4.6-8)

oprofile version 0.8.1

 

RPMs  installed:

gcc-debuginfo-3.4.6-8

kernel-debuginfo-2.6.9-55.EL

lksctp-tools-1.0.8-1

lksctp-tools-devel-1.0.8-1

 

Please note that our application is also built with debug information. Note that, we also build the kernel source tree locally and installed newly build modules, bzImage and debuginfo rpm in the system. But still we are unable to get the symbol information of sctp module.

 

Can anyone help us to provide the steps (that we may have missed) to capture the symbol information of sctp module?  Thanking you in advance for your help and comments.

 

Regards,

Santosh