PJSIP in ARM - CPU consumption

CD
César Davi
Tue, Jun 10, 2008 9:19 PM

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Is this high CPU consumption normal?
Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

Thanks in advance

Cesar

Hi All, I'm developing an application to run in an ARM platform using embedded linux. I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've downloaded the demo file (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu ) to the target board using the option for 8 SIP calling: siprtp-arm-linux-gnu -c 8 The busybox TOP command has shown there were 12 threads and one of them was consuming 86% of CPU processing power (8 simultaneous call without audio, just SIP signalling). Is this high CPU consumption normal? Is there a way to decrease it? How can I optimize my app? Is this 12 threads quantity normal for 8 SIP calling? Thanks in advance Cesar
TF
Tanguy Floc'h
Tue, Jun 10, 2008 9:44 PM

Hi !

I think this has already been discussed in this mailing list, in
previous posts.
Have you read this page, from the FAQ, first ? :
http://trac.pjsip.org/repos/wiki/FAQ#Performance

Here, there are many tips about CPU consumption.

Electrocut

César Davi wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Is this high CPU consumption normal?
Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

Thanks in advance

Cesar


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

Hi ! I think this has already been discussed in this mailing list, in previous posts. Have you read this page, from the FAQ, first ? : http://trac.pjsip.org/repos/wiki/FAQ#Performance Here, there are many tips about CPU consumption. Electrocut César Davi wrote: > Hi All, > > > I'm developing an application to run in an ARM platform using embedded linux. > I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've > downloaded the demo file > (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu > ) to the target board using the > option for 8 SIP calling: > > siprtp-arm-linux-gnu -c 8 > > The busybox TOP command has shown there were 12 threads and one of > them was consuming 86% of CPU processing power (8 > simultaneous call without audio, just SIP signalling). > > Is this high CPU consumption normal? > Is there a way to decrease it? > How can I optimize my app? > Is this 12 threads quantity normal for 8 SIP calling? > > Thanks in advance > > Cesar > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >
BP
Benny Prijono
Tue, Jun 10, 2008 10:16 PM

On Tue, Jun 10, 2008 at 10:19 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Actually although there is no audio, siprtp sample application does
send and receive RTP packets. So it's not totally idle on the media
side at all.

Is this high CPU consumption normal?

Yeah it looks high. What ARM is that?

Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

In pjsip the number of threads (0-N) is chosen by application, and in
siprtp it happens that it uses one thread per call. As Tanguy pointed
out in the other mail, the link to the FAQ contains lots of switches
to enhance performance, please try that out.

Cheers
Benny

Thanks in advance

Cesar

On Tue, Jun 10, 2008 at 10:19 PM, César Davi <cesargxn@gmail.com> wrote: > Hi All, > > > I'm developing an application to run in an ARM platform using embedded linux. > I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've > downloaded the demo file > (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu > ) to the target board using the > option for 8 SIP calling: > > siprtp-arm-linux-gnu -c 8 > > The busybox TOP command has shown there were 12 threads and one of > them was consuming 86% of CPU processing power (8 > simultaneous call without audio, just SIP signalling). > Actually although there is no audio, siprtp sample application does send and receive RTP packets. So it's not totally idle on the media side at all. > Is this high CPU consumption normal? Yeah it looks high. What ARM is that? > Is there a way to decrease it? > How can I optimize my app? > Is this 12 threads quantity normal for 8 SIP calling? > In pjsip the number of threads (0-N) is chosen by application, and in siprtp it happens that it uses one thread per call. As Tanguy pointed out in the other mail, the link to the FAQ contains lots of switches to enhance performance, please try that out. Cheers Benny > Thanks in advance > > Cesar >
CD
César Davi
Wed, Jun 11, 2008 11:28 AM

Hi Benny,

I'm using the EDB9302A board (cirrus logic), features:

  • ARM 9 processor - EP9302 - running at 200Mhz;
  • 64MByte SDRAM;
  • 16MByte NOR Flash Memory.

Thanks for your help.

Cesar

2008/6/10 Benny Prijono bennylp@pjsip.org:

On Tue, Jun 10, 2008 at 10:19 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Actually although there is no audio, siprtp sample application does
send and receive RTP packets. So it's not totally idle on the media
side at all.

Is this high CPU consumption normal?

Yeah it looks high. What ARM is that?

Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

In pjsip the number of threads (0-N) is chosen by application, and in
siprtp it happens that it uses one thread per call. As Tanguy pointed
out in the other mail, the link to the FAQ contains lots of switches
to enhance performance, please try that out.

Cheers
Benny

Thanks in advance

Cesar

Hi Benny, I'm using the EDB9302A board (cirrus logic), features: - ARM 9 processor - EP9302 - running at 200Mhz; - 64MByte SDRAM; - 16MByte NOR Flash Memory. Thanks for your help. Cesar 2008/6/10 Benny Prijono <bennylp@pjsip.org>: > On Tue, Jun 10, 2008 at 10:19 PM, César Davi <cesargxn@gmail.com> wrote: >> Hi All, >> >> >> I'm developing an application to run in an ARM platform using embedded linux. >> I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've >> downloaded the demo file >> (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu >> ) to the target board using the >> option for 8 SIP calling: >> >> siprtp-arm-linux-gnu -c 8 >> >> The busybox TOP command has shown there were 12 threads and one of >> them was consuming 86% of CPU processing power (8 >> simultaneous call without audio, just SIP signalling). >> > > Actually although there is no audio, siprtp sample application does > send and receive RTP packets. So it's not totally idle on the media > side at all. > >> Is this high CPU consumption normal? > > Yeah it looks high. What ARM is that? > >> Is there a way to decrease it? >> How can I optimize my app? >> Is this 12 threads quantity normal for 8 SIP calling? >> > > In pjsip the number of threads (0-N) is chosen by application, and in > siprtp it happens that it uses one thread per call. As Tanguy pointed > out in the other mail, the link to the FAQ contains lots of switches > to enhance performance, please try that out. > > Cheers > Benny > >> Thanks in advance >> >> Cesar >> >
FW
Fan-Cheng Wu 吳梵誠
Wed, Jun 11, 2008 1:55 PM

From my experience which is also on an ARM 9 processor and high CPU

utilization, the problem were fixed by changing codec to PCMU and set
default clock to 8000(add "#define PJSUA_DEFAULT_CLOCK_RATE (8000)" at
config_site.h)

FC

On Wed, Jun 11, 2008 at 19:28, César Davi cesargxn@gmail.com wrote:

Hi Benny,

I'm using the EDB9302A board (cirrus logic), features:

  • ARM 9 processor - EP9302 - running at 200Mhz;
  • 64MByte SDRAM;
  • 16MByte NOR Flash Memory.

Thanks for your help.

Cesar

2008/6/10 Benny Prijono bennylp@pjsip.org:

On Tue, Jun 10, 2008 at 10:19 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Actually although there is no audio, siprtp sample application does
send and receive RTP packets. So it's not totally idle on the media
side at all.

Is this high CPU consumption normal?

Yeah it looks high. What ARM is that?

Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

In pjsip the number of threads (0-N) is chosen by application, and in
siprtp it happens that it uses one thread per call. As Tanguy pointed
out in the other mail, the link to the FAQ contains lots of switches
to enhance performance, please try that out.

Cheers
Benny

Thanks in advance

Cesar

>From my experience which is also on an ARM 9 processor and high CPU utilization, the problem were fixed by changing codec to PCMU and set default clock to 8000(add "#define PJSUA_DEFAULT_CLOCK_RATE (8000)" at config_site.h) FC On Wed, Jun 11, 2008 at 19:28, César Davi <cesargxn@gmail.com> wrote: > Hi Benny, > > I'm using the EDB9302A board (cirrus logic), features: > > - ARM 9 processor - EP9302 - running at 200Mhz; > - 64MByte SDRAM; > - 16MByte NOR Flash Memory. > > Thanks for your help. > > Cesar > > 2008/6/10 Benny Prijono <bennylp@pjsip.org>: >> On Tue, Jun 10, 2008 at 10:19 PM, César Davi <cesargxn@gmail.com> wrote: >>> Hi All, >>> >>> >>> I'm developing an application to run in an ARM platform using embedded linux. >>> I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've >>> downloaded the demo file >>> (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu >>> ) to the target board using the >>> option for 8 SIP calling: >>> >>> siprtp-arm-linux-gnu -c 8 >>> >>> The busybox TOP command has shown there were 12 threads and one of >>> them was consuming 86% of CPU processing power (8 >>> simultaneous call without audio, just SIP signalling). >>> >> >> Actually although there is no audio, siprtp sample application does >> send and receive RTP packets. So it's not totally idle on the media >> side at all. >> >>> Is this high CPU consumption normal? >> >> Yeah it looks high. What ARM is that? > > >> >>> Is there a way to decrease it? >>> How can I optimize my app? >>> Is this 12 threads quantity normal for 8 SIP calling? >>> >> >> In pjsip the number of threads (0-N) is chosen by application, and in >> siprtp it happens that it uses one thread per call. As Tanguy pointed >> out in the other mail, the link to the FAQ contains lots of switches >> to enhance performance, please try that out. >> >> Cheers >> Benny >> >>> Thanks in advance >>> >>> Cesar >>> >> > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >
CD
César Davi
Wed, Jun 11, 2008 8:27 PM

Hi All,

I've made some changes suggested in
http://trac.pjsip.org/repos/wiki/FAQ#Performance:

(my config_site.h file)

#ifndef CONFIG_SITE_H_
#define CONFIG_SITE_H_

#define PJ_LOG_MAX_LEVEL 3
#define PJSUA_DEFAULT_CLOCK_RATE (8000)
#define PJ_ENABLE_EXTRA_CHECK 0
#define PJ_OS_HAS_CHECK_STACK 0
#define PJSIP_SAFE_MODULE 0
#define PJSIP_UNESCAPE_IN_PLACE 1
#define PJ_HASH_USE_OWN_TOLOWER 1

#endif
/CONFIG_SITE_H_/

The CPU consumption is still high (sometimes 96 %).

Does anyone have any suggestions?

Thanks.

Cesar

2008/6/11 César Davi cesargxn@gmail.com:

Hi Benny,

I'm using the EDB9302A board (cirrus logic), features:

  • ARM 9 processor - EP9302 - running at 200Mhz;
  • 64MByte SDRAM;
  • 16MByte NOR Flash Memory.

Thanks for your help.

Cesar

2008/6/10 Benny Prijono bennylp@pjsip.org:

On Tue, Jun 10, 2008 at 10:19 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Actually although there is no audio, siprtp sample application does
send and receive RTP packets. So it's not totally idle on the media
side at all.

Is this high CPU consumption normal?

Yeah it looks high. What ARM is that?

Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

In pjsip the number of threads (0-N) is chosen by application, and in
siprtp it happens that it uses one thread per call. As Tanguy pointed
out in the other mail, the link to the FAQ contains lots of switches
to enhance performance, please try that out.

Cheers
Benny

Thanks in advance

Cesar

Hi All, I've made some changes suggested in http://trac.pjsip.org/repos/wiki/FAQ#Performance: (my config_site.h file) #ifndef CONFIG_SITE_H_ #define CONFIG_SITE_H_ #define PJ_LOG_MAX_LEVEL 3 #define PJSUA_DEFAULT_CLOCK_RATE (8000) #define PJ_ENABLE_EXTRA_CHECK 0 #define PJ_OS_HAS_CHECK_STACK 0 #define PJSIP_SAFE_MODULE 0 #define PJSIP_UNESCAPE_IN_PLACE 1 #define PJ_HASH_USE_OWN_TOLOWER 1 #endif /*CONFIG_SITE_H_*/ The CPU consumption is still high (sometimes 96 %). Does anyone have any suggestions? Thanks. Cesar 2008/6/11 César Davi <cesargxn@gmail.com>: > Hi Benny, > > I'm using the EDB9302A board (cirrus logic), features: > > - ARM 9 processor - EP9302 - running at 200Mhz; > - 64MByte SDRAM; > - 16MByte NOR Flash Memory. > > Thanks for your help. > > Cesar > > 2008/6/10 Benny Prijono <bennylp@pjsip.org>: >> On Tue, Jun 10, 2008 at 10:19 PM, César Davi <cesargxn@gmail.com> wrote: >>> Hi All, >>> >>> >>> I'm developing an application to run in an ARM platform using embedded linux. >>> I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've >>> downloaded the demo file >>> (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu >>> ) to the target board using the >>> option for 8 SIP calling: >>> >>> siprtp-arm-linux-gnu -c 8 >>> >>> The busybox TOP command has shown there were 12 threads and one of >>> them was consuming 86% of CPU processing power (8 >>> simultaneous call without audio, just SIP signalling). >>> >> >> Actually although there is no audio, siprtp sample application does >> send and receive RTP packets. So it's not totally idle on the media >> side at all. >> >>> Is this high CPU consumption normal? >> >> Yeah it looks high. What ARM is that? > > >> >>> Is there a way to decrease it? >>> How can I optimize my app? >>> Is this 12 threads quantity normal for 8 SIP calling? >>> >> >> In pjsip the number of threads (0-N) is chosen by application, and in >> siprtp it happens that it uses one thread per call. As Tanguy pointed >> out in the other mail, the link to the FAQ contains lots of switches >> to enhance performance, please try that out. >> >> Cheers >> Benny >> >>> Thanks in advance >>> >>> Cesar >>> >> >
BP
Benny Prijono
Thu, Jun 12, 2008 11:55 AM

Have you tried with some build optimization, e.g.:

./aconfigure CFLAGS="-O3 -DNDEBUG"

and maybe some other things specific to your ARM platform.

Cheers
Benny

On Wed, Jun 11, 2008 at 9:27 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I've made some changes suggested in
http://trac.pjsip.org/repos/wiki/FAQ#Performance:

(my config_site.h file)

#ifndef CONFIG_SITE_H_
#define CONFIG_SITE_H_

#define PJ_LOG_MAX_LEVEL 3
#define PJSUA_DEFAULT_CLOCK_RATE (8000)
#define PJ_ENABLE_EXTRA_CHECK  0
#define PJ_OS_HAS_CHECK_STACK  0
#define PJSIP_SAFE_MODULE              0
#define PJSIP_UNESCAPE_IN_PLACE 1
#define PJ_HASH_USE_OWN_TOLOWER 1

#endif
/CONFIG_SITE_H_/

The CPU consumption is still high (sometimes 96 %).

Does anyone have any suggestions?

Thanks.

Cesar

2008/6/11 César Davi cesargxn@gmail.com:

Hi Benny,

I'm using the EDB9302A board (cirrus logic), features:

  • ARM 9 processor - EP9302 - running at 200Mhz;
  • 64MByte SDRAM;
  • 16MByte NOR Flash Memory.

Thanks for your help.

Cesar

2008/6/10 Benny Prijono bennylp@pjsip.org:

On Tue, Jun 10, 2008 at 10:19 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Actually although there is no audio, siprtp sample application does
send and receive RTP packets. So it's not totally idle on the media
side at all.

Is this high CPU consumption normal?

Yeah it looks high. What ARM is that?

Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

In pjsip the number of threads (0-N) is chosen by application, and in
siprtp it happens that it uses one thread per call. As Tanguy pointed
out in the other mail, the link to the FAQ contains lots of switches
to enhance performance, please try that out.

Cheers
Benny

Thanks in advance

Cesar

Have you tried with some build optimization, e.g.: ./aconfigure CFLAGS="-O3 -DNDEBUG" and maybe some other things specific to your ARM platform. Cheers Benny On Wed, Jun 11, 2008 at 9:27 PM, César Davi <cesargxn@gmail.com> wrote: > Hi All, > > I've made some changes suggested in > http://trac.pjsip.org/repos/wiki/FAQ#Performance: > > (my config_site.h file) > > #ifndef CONFIG_SITE_H_ > #define CONFIG_SITE_H_ > > > #define PJ_LOG_MAX_LEVEL 3 > #define PJSUA_DEFAULT_CLOCK_RATE (8000) > #define PJ_ENABLE_EXTRA_CHECK 0 > #define PJ_OS_HAS_CHECK_STACK 0 > #define PJSIP_SAFE_MODULE 0 > #define PJSIP_UNESCAPE_IN_PLACE 1 > #define PJ_HASH_USE_OWN_TOLOWER 1 > > #endif > /*CONFIG_SITE_H_*/ > > The CPU consumption is still high (sometimes 96 %). > > Does anyone have any suggestions? > > Thanks. > > Cesar > > > 2008/6/11 César Davi <cesargxn@gmail.com>: >> Hi Benny, >> >> I'm using the EDB9302A board (cirrus logic), features: >> >> - ARM 9 processor - EP9302 - running at 200Mhz; >> - 64MByte SDRAM; >> - 16MByte NOR Flash Memory. >> >> Thanks for your help. >> >> Cesar >> >> 2008/6/10 Benny Prijono <bennylp@pjsip.org>: >>> On Tue, Jun 10, 2008 at 10:19 PM, César Davi <cesargxn@gmail.com> wrote: >>>> Hi All, >>>> >>>> >>>> I'm developing an application to run in an ARM platform using embedded linux. >>>> I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've >>>> downloaded the demo file >>>> (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu >>>> ) to the target board using the >>>> option for 8 SIP calling: >>>> >>>> siprtp-arm-linux-gnu -c 8 >>>> >>>> The busybox TOP command has shown there were 12 threads and one of >>>> them was consuming 86% of CPU processing power (8 >>>> simultaneous call without audio, just SIP signalling). >>>> >>> >>> Actually although there is no audio, siprtp sample application does >>> send and receive RTP packets. So it's not totally idle on the media >>> side at all. >>> >>>> Is this high CPU consumption normal? >>> >>> Yeah it looks high. What ARM is that? >> >> >>> >>>> Is there a way to decrease it? >>>> How can I optimize my app? >>>> Is this 12 threads quantity normal for 8 SIP calling? >>>> >>> >>> In pjsip the number of threads (0-N) is chosen by application, and in >>> siprtp it happens that it uses one thread per call. As Tanguy pointed >>> out in the other mail, the link to the FAQ contains lots of switches >>> to enhance performance, please try that out. >>> >>> Cheers >>> Benny >>> >>>> Thanks in advance >>>> >>>> Cesar >>>> >>> >> >
CD
César Davi
Fri, Jun 13, 2008 8:11 PM

Hi All,

I wonder if anyone has used the PJSIP in an embedded environment, with
low requirements of memory and processing power (something around
200Mhz). For what I have seen the stack is behaving well in desktop,
but I have not seen much discussion on embedded environments. I
personally have faced some problems regarding the performance in an
application using ARM9 and may be forced to abandon the use of PJSIP
in my project.

All opinions are welcome.

Thanks in advance.

Cesar

2008/6/11 César Davi cesargxn@gmail.com:

Hi All,

I've made some changes suggested in
http://trac.pjsip.org/repos/wiki/FAQ#Performance:

(my config_site.h file)

#ifndef CONFIG_SITE_H_
#define CONFIG_SITE_H_

#define PJ_LOG_MAX_LEVEL 3
#define PJSUA_DEFAULT_CLOCK_RATE (8000)
#define PJ_ENABLE_EXTRA_CHECK  0
#define PJ_OS_HAS_CHECK_STACK  0
#define PJSIP_SAFE_MODULE              0
#define PJSIP_UNESCAPE_IN_PLACE 1
#define PJ_HASH_USE_OWN_TOLOWER 1

#endif
/CONFIG_SITE_H_/

The CPU consumption is still high (sometimes 96 %).

Does anyone have any suggestions?

Thanks.

Cesar

2008/6/11 César Davi cesargxn@gmail.com:

Hi Benny,

I'm using the EDB9302A board (cirrus logic), features:

  • ARM 9 processor - EP9302 - running at 200Mhz;
  • 64MByte SDRAM;
  • 16MByte NOR Flash Memory.

Thanks for your help.

Cesar

2008/6/10 Benny Prijono bennylp@pjsip.org:

On Tue, Jun 10, 2008 at 10:19 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Actually although there is no audio, siprtp sample application does
send and receive RTP packets. So it's not totally idle on the media
side at all.

Is this high CPU consumption normal?

Yeah it looks high. What ARM is that?

Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

In pjsip the number of threads (0-N) is chosen by application, and in
siprtp it happens that it uses one thread per call. As Tanguy pointed
out in the other mail, the link to the FAQ contains lots of switches
to enhance performance, please try that out.

Cheers
Benny

Thanks in advance

Cesar

Hi All, I wonder if anyone has used the PJSIP in an embedded environment, with low requirements of memory and processing power (something around 200Mhz). For what I have seen the stack is behaving well in desktop, but I have not seen much discussion on embedded environments. I personally have faced some problems regarding the performance in an application using ARM9 and may be forced to abandon the use of PJSIP in my project. All opinions are welcome. Thanks in advance. Cesar 2008/6/11 César Davi <cesargxn@gmail.com>: > Hi All, > > I've made some changes suggested in > http://trac.pjsip.org/repos/wiki/FAQ#Performance: > > (my config_site.h file) > > #ifndef CONFIG_SITE_H_ > #define CONFIG_SITE_H_ > > > #define PJ_LOG_MAX_LEVEL 3 > #define PJSUA_DEFAULT_CLOCK_RATE (8000) > #define PJ_ENABLE_EXTRA_CHECK 0 > #define PJ_OS_HAS_CHECK_STACK 0 > #define PJSIP_SAFE_MODULE 0 > #define PJSIP_UNESCAPE_IN_PLACE 1 > #define PJ_HASH_USE_OWN_TOLOWER 1 > > #endif > /*CONFIG_SITE_H_*/ > > The CPU consumption is still high (sometimes 96 %). > > Does anyone have any suggestions? > > Thanks. > > Cesar > > > 2008/6/11 César Davi <cesargxn@gmail.com>: >> Hi Benny, >> >> I'm using the EDB9302A board (cirrus logic), features: >> >> - ARM 9 processor - EP9302 - running at 200Mhz; >> - 64MByte SDRAM; >> - 16MByte NOR Flash Memory. >> >> Thanks for your help. >> >> Cesar >> >> 2008/6/10 Benny Prijono <bennylp@pjsip.org>: >>> On Tue, Jun 10, 2008 at 10:19 PM, César Davi <cesargxn@gmail.com> wrote: >>>> Hi All, >>>> >>>> >>>> I'm developing an application to run in an ARM platform using embedded linux. >>>> I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've >>>> downloaded the demo file >>>> (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu >>>> ) to the target board using the >>>> option for 8 SIP calling: >>>> >>>> siprtp-arm-linux-gnu -c 8 >>>> >>>> The busybox TOP command has shown there were 12 threads and one of >>>> them was consuming 86% of CPU processing power (8 >>>> simultaneous call without audio, just SIP signalling). >>>> >>> >>> Actually although there is no audio, siprtp sample application does >>> send and receive RTP packets. So it's not totally idle on the media >>> side at all. >>> >>>> Is this high CPU consumption normal? >>> >>> Yeah it looks high. What ARM is that? >> >> >>> >>>> Is there a way to decrease it? >>>> How can I optimize my app? >>>> Is this 12 threads quantity normal for 8 SIP calling? >>>> >>> >>> In pjsip the number of threads (0-N) is chosen by application, and in >>> siprtp it happens that it uses one thread per call. As Tanguy pointed >>> out in the other mail, the link to the FAQ contains lots of switches >>> to enhance performance, please try that out. >>> >>> Cheers >>> Benny >>> >>>> Thanks in advance >>>> >>>> Cesar >>>> >>> >> >
BP
Benny Prijono
Fri, Jun 13, 2008 9:59 PM

On Fri, Jun 13, 2008 at 9:11 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I wonder if anyone has used the PJSIP in an embedded environment, with
low requirements of memory and processing power (something around
200Mhz). For what I have seen the stack is behaving well in desktop,
but I have not seen much discussion on embedded environments. I

Really? This list has been running long enough long enough (more than
3 years now) and I've heard many discussions about embedded use of
pjsip. About CPU requirement, I know for sure people who have
production hardware running pjsip on a 20 MHz MIPS (can't name them
for political reason unfortunately). And don't forget about mobile
devices as well, which from device capability is not dissimilar from
embedded.  So I don't see any problems with this. It's just a matter
of configuring it correctly, and of course we all know this is never
straightforward with any embedded developments.

personally have faced some problems regarding the performance in an
application using ARM9 and may be forced to abandon the use of PJSIP
in my project.

What is your expectation anyway? If you expect to run 8 simulteneous
speex calls on your 200MHz ARM9 then probably it will never happen.
And as I told you, siprtp is thread based so this probably is not the
ideal approach for your development. And why are you using siprtp to
measure up pjsip. What are you trying to do in the first place?

I'm just saying that there are plenty of options with pjsip. There are
plenty of features. And each features come with their own cost (CPU,
memory) of course. So it's always a matter of choosing the right
feature to have, to fit in the capability of the device. And you
haven't explained what you're trying to do, so we can't give good
suggestions for now.

Of course nobody forces anybody to use pjsip. There are plenty of
other choices. It's just a pity if you have to abandon pjsip based on
wrong experimentation.

Cheers
Benny

On Fri, Jun 13, 2008 at 9:11 PM, César Davi <cesargxn@gmail.com> wrote: > Hi All, > > I wonder if anyone has used the PJSIP in an embedded environment, with > low requirements of memory and processing power (something around > 200Mhz). For what I have seen the stack is behaving well in desktop, > but I have not seen much discussion on embedded environments. I Really? This list has been running long enough long enough (more than 3 years now) and I've heard many discussions about embedded use of pjsip. About CPU requirement, I know for sure people who have production hardware running pjsip on a 20 MHz MIPS (can't name them for political reason unfortunately). And don't forget about mobile devices as well, which from device capability is not dissimilar from embedded. So I don't see any problems with this. It's just a matter of configuring it correctly, and of course we all know this is never straightforward with any embedded developments. > personally have faced some problems regarding the performance in an > application using ARM9 and may be forced to abandon the use of PJSIP > in my project. > What is your expectation anyway? If you expect to run 8 simulteneous speex calls on your 200MHz ARM9 then probably it will never happen. And as I told you, siprtp is thread based so this probably is not the ideal approach for your development. And why are you using siprtp to measure up pjsip. What are you trying to do in the first place? I'm just saying that there are plenty of options with pjsip. There are plenty of features. And each features come with their own cost (CPU, memory) of course. So it's always a matter of choosing the right feature to have, to fit in the capability of the device. And you haven't explained what you're trying to do, so we can't give good suggestions for now. Of course nobody forces anybody to use pjsip. There are plenty of other choices. It's just a pity if you have to abandon pjsip based on wrong experimentation. Cheers Benny
Dan Åberg
Sat, Jun 14, 2008 5:46 AM

What kind of performace problems are you experiencing?
Do you have problems with a certain codec, problems with multiple calls,
etc.
I'm running PJSIP on three different ARM9 200MHz development boards with
great success.

Cheers,
Dan

On Fri, 2008-06-13 at 17:11 -0300, César Davi wrote:

Hi All,

I wonder if anyone has used the PJSIP in an embedded environment, with
low requirements of memory and processing power (something around
200Mhz). For what I have seen the stack is behaving well in desktop,
but I have not seen much discussion on embedded environments. I
personally have faced some problems regarding the performance in an
application using ARM9 and may be forced to abandon the use of PJSIP
in my project.

All opinions are welcome.

Thanks in advance.

Cesar

2008/6/11 César Davi cesargxn@gmail.com:

Hi All,

I've made some changes suggested in
http://trac.pjsip.org/repos/wiki/FAQ#Performance:

(my config_site.h file)

#ifndef CONFIG_SITE_H_
#define CONFIG_SITE_H_

#define PJ_LOG_MAX_LEVEL 3
#define PJSUA_DEFAULT_CLOCK_RATE (8000)
#define PJ_ENABLE_EXTRA_CHECK  0
#define PJ_OS_HAS_CHECK_STACK  0
#define PJSIP_SAFE_MODULE              0
#define PJSIP_UNESCAPE_IN_PLACE 1
#define PJ_HASH_USE_OWN_TOLOWER 1

#endif
/CONFIG_SITE_H_/

The CPU consumption is still high (sometimes 96 %).

Does anyone have any suggestions?

Thanks.

Cesar

2008/6/11 César Davi cesargxn@gmail.com:

Hi Benny,

I'm using the EDB9302A board (cirrus logic), features:

  • ARM 9 processor - EP9302 - running at 200Mhz;
  • 64MByte SDRAM;
  • 16MByte NOR Flash Memory.

Thanks for your help.

Cesar

2008/6/10 Benny Prijono bennylp@pjsip.org:

On Tue, Jun 10, 2008 at 10:19 PM, César Davi cesargxn@gmail.com wrote:

Hi All,

I'm developing an application to run in an ARM platform using embedded linux.
I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've
downloaded the demo file
(pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu
) to the target board using the
option for 8 SIP calling:

siprtp-arm-linux-gnu -c 8

The busybox TOP command has shown there were 12 threads and one of
them was consuming 86% of CPU processing power (8
simultaneous call without audio, just SIP signalling).

Actually although there is no audio, siprtp sample application does
send and receive RTP packets. So it's not totally idle on the media
side at all.

Is this high CPU consumption normal?

Yeah it looks high. What ARM is that?

Is there a way to decrease it?
How can I optimize my app?
Is this 12 threads quantity normal for 8 SIP calling?

In pjsip the number of threads (0-N) is chosen by application, and in
siprtp it happens that it uses one thread per call. As Tanguy pointed
out in the other mail, the link to the FAQ contains lots of switches
to enhance performance, please try that out.

Cheers
Benny

Thanks in advance

Cesar

--
FRA-trigger:
100-förråd Aerosol spridning Airplane AK-47 Al-Aqsa Allah Allah-o-Akbar
al-quaida Amatol Ammonium triiodide Ammonium Ammoniumnitrat Anakata
Anarki ANFO Thermate Anthrax Anthrax Arlanda Arrest As-Salāmu Alaykum Assassination Avlyssning Avrätta Avrättning Avsätta Babyolja bankomat Barnporr Barsebäck Basladdning Beatrice Ask Bergsjön big event bin ladin (med tillägg “är stor”) bismillah al-rahmani al-rahin Blasting cap Blyazid Blyblocksexpansion Blynitrat Bodström Bogside Doodlebug Bomb Bomba Bombhot Bomullskrut Booster Botulism Bribe Brigader Brokep Buggning bunker Bush C4 Calculations Carl XVI Gustav Carpet knife Cayman Gibraltar cell phone cell centralstationen bomb klockan 3 CIA Cluster Containerscanning Cray Cryptoanalysis Cyclonite DDNP depå DES Detonator Dilba Dinitronaftalen Distributed Doctrine domstol dum-dum dumpster diving Dvärg Dynamex Dynamit Dynashock Döda Egghead3000 Emulite Encryption ETA Etylendiamindinitrat Europakonventionen Execution extremism Fake Flint Flygplan Flygplanskapning Flygplats Forsmark FRA Fredrik Reinfeldt Frihet fritagning Fyllmassa Förstörelse Förtvivlad gang-bang Geoprime Gisslan gisslan Godsägare Persson Granuler ground zero GRU Grundlag Gruppvåldtäkt Gudrun Schyman Guds vilja Gurit Hash heligt krig hemmagjord bomb Hizbollah HMTA HMTD Hora Håkan Roswall i ett badkar med välling Hämd Hönornas befrielsefront IDEA Ifpi Imam Immigrationsmyndigheterna Importtull insha’ Allah inshallah insurgents IRA Jan Guillou JAS Jersey Liechtenstein Jihad Jumbo jet Justice Kalashnikov Kaliumperklorat Kastrup KGB Kidnappa Kimulux Kina Kommunism Koncentrationsväg k-pist KP-Primer Kristallin kritisk diameter Kryphål Kulspruta Kvicksilverfulminat Kvinnoförtryck Känslighet Kärnkraftverk Leverera Liquid bomb Loophole Luftfaktura Lönnmord Lönnmord Mardrömmar Martyr Mattkniv Mercury fulminate Metylaminnitrat Miljöförstöring Minaret Minderårig Mjältbrand mob-förråd moder jord Molotov Mord Mossad Mujaheddin Murder mänskliga rättigheter Mörda Nabit Nagelsax Natriumaminat Natriumazidlösning Nervgas Nitrate Nitro Nobel Nitrocellulosa Nitrocellulose Nitroglycerin Nitroglycerine Nitrometan Nitrostärkelse Nonel Not-So-Jolly Roger Nuclear Offer offshore haven Orättvisa otryggt barn Pannkakor parallell computing paramilitary Parliament Pedofil Pentyl Peroxyacetone PETN Picric acid Pikrinsyra PKE PKI PKK plutonium centrifuges Plutonium politik Potassium chlorate President Primär Prostitution Punktskatt Pyrodex RDX RDX Regeringen Relatives Retaliation Revolution riksbanken Riksdagen Riksdagshuset Rosetta RSA Rättigheter Rättvisa Sagerska Sanningen Sarin securitas Sekundär Semtex Sex sexbomb Shampoo shoe bomb Självmordsbombare Skans Skatteflykt Skatterevision Skattmasen Skjuta Slottet Smörja social engineering ssg Stasi Statskupp statsminister Subway Suicide bomb Supercomputer Surströmming Sweden Säkerhetskontroll Säpo säpo Sönderfallshastighet t1amo Taiwan Tandkräm Terrordåd test tubes Thermite Tibet TNP Torped Trafficing Train Trinitrophenol Trotyl Tungmetallazid Turban Tvätta Tändhatt UPK Upphovsrättstaliban Uppror Uppstoppad nallebjörn Uppvaknande Utnyttja Uzi Wa Alaykum As-Salām Walk like an
Egyptian Vattenverk wedding cake wedding preparations Wedding Virgin
Islands Våldtäkt Väpnad värdetransport Väteperoxid yee-haa!
Yippie-Ki-Yay motherfucker Yttrandefrihet Ödeläggelse Övervakning,

له الارهاب لسلام عليكم إرهاب مخرب القاعدة اسامة بن لادن فلسطين يوم الأرض
غزة جرائم حرب الله سلام عليكم وعليكم السلام كلاشنكوف مولوتوف قنبلة يدوية
دبابة جاسوس عميل الخلافة جهاد مجاهدين ثورة حتى النصر فتح حماس متفجرات
ديناميت إنشاء الله لاجئ فلسطيني حق العودة الله أكبر غصن الزيتون عوزي
دبابة إضطهاد خراب اللواءات فطائر كتائب شهداء الأقص الدول الاسكندنافي
قنبلة مجلس الشعب

What kind of performace problems are you experiencing? Do you have problems with a certain codec, problems with multiple calls, etc. I'm running PJSIP on three different ARM9 200MHz development boards with great success. Cheers, Dan On Fri, 2008-06-13 at 17:11 -0300, César Davi wrote: > Hi All, > > I wonder if anyone has used the PJSIP in an embedded environment, with > low requirements of memory and processing power (something around > 200Mhz). For what I have seen the stack is behaving well in desktop, > but I have not seen much discussion on embedded environments. I > personally have faced some problems regarding the performance in an > application using ARM9 and may be forced to abandon the use of PJSIP > in my project. > > All opinions are welcome. > > Thanks in advance. > > Cesar > > 2008/6/11 César Davi <cesargxn@gmail.com>: > > Hi All, > > > > I've made some changes suggested in > > http://trac.pjsip.org/repos/wiki/FAQ#Performance: > > > > (my config_site.h file) > > > > #ifndef CONFIG_SITE_H_ > > #define CONFIG_SITE_H_ > > > > > > #define PJ_LOG_MAX_LEVEL 3 > > #define PJSUA_DEFAULT_CLOCK_RATE (8000) > > #define PJ_ENABLE_EXTRA_CHECK 0 > > #define PJ_OS_HAS_CHECK_STACK 0 > > #define PJSIP_SAFE_MODULE 0 > > #define PJSIP_UNESCAPE_IN_PLACE 1 > > #define PJ_HASH_USE_OWN_TOLOWER 1 > > > > #endif > > /*CONFIG_SITE_H_*/ > > > > The CPU consumption is still high (sometimes 96 %). > > > > Does anyone have any suggestions? > > > > Thanks. > > > > Cesar > > > > > > 2008/6/11 César Davi <cesargxn@gmail.com>: > >> Hi Benny, > >> > >> I'm using the EDB9302A board (cirrus logic), features: > >> > >> - ARM 9 processor - EP9302 - running at 200Mhz; > >> - 64MByte SDRAM; > >> - 16MByte NOR Flash Memory. > >> > >> Thanks for your help. > >> > >> Cesar > >> > >> 2008/6/10 Benny Prijono <bennylp@pjsip.org>: > >>> On Tue, Jun 10, 2008 at 10:19 PM, César Davi <cesargxn@gmail.com> wrote: > >>>> Hi All, > >>>> > >>>> > >>>> I'm developing an application to run in an ARM platform using embedded linux. > >>>> I've cross-compiled it using pjsip 0.8.0 and arm-linux-gcc. I've > >>>> downloaded the demo file > >>>> (pjproject-0.8.0_arm/pjproject-0.8.0/pjsip-apps/bin/samples/siprtp-arm-linux-gnu > >>>> ) to the target board using the > >>>> option for 8 SIP calling: > >>>> > >>>> siprtp-arm-linux-gnu -c 8 > >>>> > >>>> The busybox TOP command has shown there were 12 threads and one of > >>>> them was consuming 86% of CPU processing power (8 > >>>> simultaneous call without audio, just SIP signalling). > >>>> > >>> > >>> Actually although there is no audio, siprtp sample application does > >>> send and receive RTP packets. So it's not totally idle on the media > >>> side at all. > >>> > >>>> Is this high CPU consumption normal? > >>> > >>> Yeah it looks high. What ARM is that? > >> > >> > >>> > >>>> Is there a way to decrease it? > >>>> How can I optimize my app? > >>>> Is this 12 threads quantity normal for 8 SIP calling? > >>>> > >>> > >>> In pjsip the number of threads (0-N) is chosen by application, and in > >>> siprtp it happens that it uses one thread per call. As Tanguy pointed > >>> out in the other mail, the link to the FAQ contains lots of switches > >>> to enhance performance, please try that out. > >>> > >>> Cheers > >>> Benny > >>> > >>>> Thanks in advance > >>>> > >>>> Cesar > >>>> > >>> > >> > > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org -- FRA-trigger: 100-förråd Aerosol spridning Airplane AK-47 Al-Aqsa Allah Allah-o-Akbar al-quaida Amatol Ammonium triiodide Ammonium Ammoniumnitrat Anakata Anarki ANFO Thermate Anthrax Anthrax Arlanda Arrest As-Salāmu `Alaykum Assassination Avlyssning Avrätta Avrättning Avsätta Babyolja bankomat Barnporr Barsebäck Basladdning Beatrice Ask Bergsjön big event bin ladin (med tillägg “är stor”) bismillah al-rahmani al-rahin Blasting cap Blyazid Blyblocksexpansion Blynitrat Bodström Bogside Doodlebug Bomb Bomba Bombhot Bomullskrut Booster Botulism Bribe Brigader Brokep Buggning bunker Bush C4 Calculations Carl XVI Gustav Carpet knife Cayman Gibraltar cell phone cell centralstationen bomb klockan 3 CIA Cluster Containerscanning Cray Cryptoanalysis Cyclonite DDNP depå DES Detonator Dilba Dinitronaftalen Distributed Doctrine domstol dum-dum dumpster diving Dvärg Dynamex Dynamit Dynashock Döda Egghead3000 Emulite Encryption ETA Etylendiamindinitrat Europakonventionen Execution extremism Fake Flint Flygplan Flygplanskapning Flygplats Forsmark FRA Fredrik Reinfeldt Frihet fritagning Fyllmassa Förstörelse Förtvivlad gang-bang Geoprime Gisslan gisslan Godsägare Persson Granuler ground zero GRU Grundlag Gruppvåldtäkt Gudrun Schyman Guds vilja Gurit Hash heligt krig hemmagjord bomb Hizbollah HMTA HMTD Hora Håkan Roswall i ett badkar med välling Hämd Hönornas befrielsefront IDEA Ifpi Imam Immigrationsmyndigheterna Importtull insha’ Allah inshallah insurgents IRA Jan Guillou JAS Jersey Liechtenstein Jihad Jumbo jet Justice Kalashnikov Kaliumperklorat Kastrup KGB Kidnappa Kimulux Kina Kommunism Koncentrationsväg k-pist KP-Primer Kristallin kritisk diameter Kryphål Kulspruta Kvicksilverfulminat Kvinnoförtryck Känslighet Kärnkraftverk Leverera Liquid bomb Loophole Luftfaktura Lönnmord Lönnmord Mardrömmar Martyr Mattkniv Mercury fulminate Metylaminnitrat Miljöförstöring Minaret Minderårig Mjältbrand mob-förråd moder jord Molotov Mord Mossad Mujaheddin Murder mänskliga rättigheter Mörda Nabit Nagelsax Natriumaminat Natriumazidlösning Nervgas Nitrate Nitro Nobel Nitrocellulosa Nitrocellulose Nitroglycerin Nitroglycerine Nitrometan Nitrostärkelse Nonel Not-So-Jolly Roger Nuclear Offer offshore haven Orättvisa otryggt barn Pannkakor parallell computing paramilitary Parliament Pedofil Pentyl Peroxyacetone PETN Picric acid Pikrinsyra PKE PKI PKK plutonium centrifuges Plutonium politik Potassium chlorate President Primär Prostitution Punktskatt Pyrodex RDX RDX Regeringen Relatives Retaliation Revolution riksbanken Riksdagen Riksdagshuset Rosetta RSA Rättigheter Rättvisa Sagerska Sanningen Sarin securitas Sekundär Semtex Sex sexbomb Shampoo shoe bomb Självmordsbombare Skans Skatteflykt Skatterevision Skattmasen Skjuta Slottet Smörja social engineering ssg Stasi Statskupp statsminister Subway Suicide bomb Supercomputer Surströmming Sweden Säkerhetskontroll Säpo säpo Sönderfallshastighet t1amo Taiwan Tandkräm Terrordåd test tubes Thermite Tibet TNP Torped Trafficing Train Trinitrophenol Trotyl Tungmetallazid Turban Tvätta Tändhatt UPK Upphovsrättstaliban Uppror Uppstoppad nallebjörn Uppvaknande Utnyttja Uzi Wa `Alaykum As-Salām Walk like an Egyptian Vattenverk wedding cake wedding preparations Wedding Virgin Islands Våldtäkt Väpnad värdetransport Väteperoxid yee-haa! Yippie-Ki-Yay motherfucker Yttrandefrihet Ödeläggelse Övervakning, — له الارهاب لسلام عليكم إرهاب مخرب القاعدة اسامة بن لادن فلسطين يوم الأرض غزة جرائم حرب الله سلام عليكم وعليكم السلام كلاشنكوف مولوتوف قنبلة يدوية دبابة جاسوس عميل الخلافة جهاد مجاهدين ثورة حتى النصر فتح حماس متفجرات ديناميت إنشاء الله لاجئ فلسطيني حق العودة الله أكبر غصن الزيتون عوزي دبابة إضطهاد خراب اللواءات فطائر كتائب شهداء الأقص الدول الاسكندنافي قنبلة مجلس الشعب