public inbox for linux-rt-users@vger.kernel.org
 help / color / mirror / Atom feed
From: linuxball <linuxball@gmail.com>
To: jkraehemann-guest@users.alioth.debian.org,
	linux-rt-users@vger.kernel.org
Subject: Re: 1 of 23 peformance problems at 30 to 40 percent system load
Date: Mon, 20 Jul 2015 14:43:56 +0200	[thread overview]
Message-ID: <55ACED0C.4030403@gmail.com> (raw)
In-Reply-To: <CA+Owze7RC95-OD+bQi_M0zAJRke+WVf1t4nL+PF-k5iPg0gS7g@mail.gmail.com>

Hi Joël,

see remarks in the context below.

Best regards,

Wolfgang

On 17.07.2015 22:05, Joël Krähemann wrote:
> Hi all,
>
> My name is Joël Krähemann, I'm developing:
>
> http://gsequencer.org
>
> and I'm using:
>
> Linux debian 4.0.5 #1 SMP PREEMPT Sat Jul 11 16:32:49 CEST 2015 x86_64 GNU/Linux
 From the output it seems that the kernel you are using is NOT a RT 
kernel (otherwise "uname -v" should say "#1 SMP PREEMPT RT ..."). If you 
want to use a RT kernel you should build the kernel with PREEMPT_RT_FULL 
defined.
> For now I encounter on my system performance problems at a load of 30
> to 40 % system load, all 8 virtual cpu's have same average load.
What do you mean when you talk about "performance problems"? How do they 
manifest?

> * `chrt` to higher priority doesn't give wished throughput.
As you certainly know in general a RT kernel has worse throughput (but 
better response times / lower latencies for time critical threads) than 
a generic kernel.
> * `taskset` has ff as default.
> * `cpufreq-set -g performance` brings a little improvement for first seconds
>
> This is my CPU:
>
> Architecture:          x86_64
> CPU op-mode(s):        32-bit, 64-bit
> Byte Order:            Little Endian
> CPU(s):                8
> On-line CPU(s) list:   0-7
> Thread(s) per core:    2
> Core(s) per socket:    4
> Socket(s):             1
> NUMA node(s):          1
> Vendor ID:             GenuineIntel
> CPU family:            6
> Model:                 58
> Model name:            Intel(R) Core(TM) i7-3740QM CPU @ 2.70GHz
> Stepping:              9
> CPU MHz:               3275.648
> CPU max MHz:           3700.0000
> CPU min MHz:           1200.0000
> BogoMIPS:              5387.58
> Virtualization:        VT-x
> L1d cache:             32K
> L1i cache:             32K
> L2 cache:              256K
> L3 cache:              6144K
> NUMA node0 CPU(s):     0-7
>
>
> GSequencer uses many threads but doesn't stay in realtime. What am I
> doing wrong? Or how to gain more Performance out of the system?
How do you define performance? If you want more throughput then try a 
generic kernel. If you want shorter response times (lower latencies) for 
selected RT threads than use a RT kernel and tweak the thread priorities 
of the respective user and kernel threads in the processing chain. Make 
sure that you don't get priority inversion by using improper RT prio 
assignment, e.g. participating IRQ threads from kernel should have 
higher or same RT prio than threads processing data delivered by those 
IRQ threads. A good example for audio applications is 
http://subversion.ffado.org/wiki/IrqPriorities which shows priority 
settings for JACK audio applications.
> I could imagine on my code side that vary frequency segmentation would
> bring better throughput. By modeifing AGS_THREAD_DEFAULT_JIFFIE,
> AGS_THREAD_MAX_PRECISION and related.
>
> But for now I search for documentation about linux kernel performance counters.
>
> Best regards,
> Joël Krähemann
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2015-07-20 12:44 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-17 20:05 1 of 23 peformance problems at 30 to 40 percent system load Joël Krähemann
2015-07-20 12:43 ` linuxball [this message]
2015-07-21  1:47   ` Joël Krähemann
2015-09-14 14:47     ` Joël Krähemann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55ACED0C.4030403@gmail.com \
    --to=linuxball@gmail.com \
    --cc=jkraehemann-guest@users.alioth.debian.org \
    --cc=linux-rt-users@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox