|
|
Subscribe / Log in / New account

The 3.16 kernel has been released

The 3.16 kernel has been released

Posted Aug 7, 2014 0:31 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
In reply to: The 3.16 kernel has been released by kloczek
Parent article: The 3.16 kernel has been released

>Yep that is true and it is true not only on Linux.
Solaris and Windows use periodic ticks for scheduling. Linux can completely eliminate them.

> However if such thread will start exchanging/sharing data with other threads such workload will enter on area where bottleneck will be not CPU but interconnect between cores/CPUs.
Yes, and so? Linux supports various interconnects just fine.

>on Linux still there is no cpc provider (CPU Performance Counter) https://wikis.oracle.com/display/DTrace/cpc+Provider
Oh really? I guess I was in delirium when I read this: https://perf.wiki.kernel.org/index.php/Tutorial#Counting_...

Please, at least familiarize yourself with the current state of Linux before speaking nonsense.


to post comments

The 3.16 kernel has been released

Posted Aug 7, 2014 1:51 UTC (Thu) by kloczek (guest, #6391) [Link] (6 responses)

> Oh really? I guess I was in delirium when I read this: https://perf.wiki.kernel.org/index.php/Tutorial#Counting_...

Do you really think that reporting CPC registers data it is the same what you can do in few lines D script correlating CPC data with few other things?
Please don't try to tell that I can do the same using perl/awk/python because it will be the same story like "Why LTTng is better than DTrace?" (try to notice only that LTT/LTTng is dead and in next year DTrace will have 10th birthday).

Please don't take this personally but seems you are yet another person which does not fully understand technological impact of approach implemented in DTrace.
In gawg info documentation you can find sentence "Documentation is like sex: when it is good, it is very, very good; and when it is bad, it is better than nothing."
perf is good and I've been using it specially quite often in last few months but still it is only "better than nothing". Sorry ..

The 3.16 kernel has been released

Posted Aug 7, 2014 2:20 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (5 responses)

> Do you really think that reporting CPC registers data it is the same what you can do in few lines D script correlating CPC data with few other things?
SystemTap can do this just fine: https://github.com/fche/systemtap/blob/master/testsuite/s...

> Please don't take this personally but seems you are yet another person which does not fully understand technological impact of approach implemented in DTrace.
I'd used DTrace. It's nice but not groundshaking. And even before perf on Linux, I used oprofile and other similar tools to find bottlenecks in my apps.

The 3.16 kernel has been released

Posted Aug 7, 2014 3:06 UTC (Thu) by kloczek (guest, #6391) [Link] (4 responses)

> SystemTap can do this just fine: https://github.com/fche/systemtap/blob/master/testsuite/s...

Did you watch Big Bang Theory when Sheldon explained Penny what it means "just fine"? :)

https://www.youtube.com/watch?v=Yo-CWXQ8_1M
https://www.youtube.com/watch?v=_amwWlgS6LM

Try to imagine that my reaction on "just fine" phrase is like Penny reaction :P

The 3.16 kernel has been released

Posted Aug 7, 2014 3:16 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (3 responses)

No, I don't watch BBT and I don't really want to. So please explain with examples why DTrace is so much superior in this case.

The 3.16 kernel has been released

Posted Aug 7, 2014 4:15 UTC (Thu) by kloczek (guest, #6391) [Link] (2 responses)

> So please explain with examples why DTrace is so much superior in this case

Because you can do base processing huge volume of tracing data in place of hook using D code instead doing this offline.
Shuffling big volumes of data from kernel space to user space is causing kind of observability quantum effect (observer object state is disturbed by observation).
DTrace it is not like perf which is event driven.
Perf is provides analysis tools to navigate in large multi-GB traces. Dtrace does not have this because is designed to use concise traces. Simple perf is more about offline than online analysis.
So far systemtap or perf does not provides users space providers.
DTrace on Linux now is able to use USDT providers.
Example: https://blogs.oracle.com/wim/entry/mysql_5_6_20_4

The 3.16 kernel has been released

Posted Aug 7, 2014 4:18 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (1 responses)

Uhm, no. SystemTap compiles probes into kernel modules, so there's no userspace-kernelspace overhead. And perf subsystem also supports filters.

The 3.16 kernel has been released

Posted Aug 9, 2014 12:13 UTC (Sat) by kloczek (guest, #6391) [Link]

> SystemTap compiles probes into kernel modules, so there's no userspace-kernelspace overhead.

How many times did you rash system using SystemTap?
I had such situations hundreds times.
This is why DTrace VM doing whole work is better.

> And perf subsystem also supports filters.

You don't understand where is the problem.
If instrumentation generates even this event must be queued. Effectively here you will have few context switches. Taking data from queue add more cs and take event from queue to discard part events will be always wast of CPU/time.

Now PCI bus cannot handle more than about 300k ops/s but new PCI protocol may change this to millions/s. Try to imagine how big overhead may be after this compare to DTrace way on for example tracing IOs.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds