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
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.
      Posted Aug 7, 2014 1:51 UTC (Thu)
                               by kloczek (guest, #6391)
                              [Link] (6 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? 
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. 
 
     
    
      Posted Aug 7, 2014 2:20 UTC (Thu)
                               by Cyberax (✭ supporter ✭, #52523)
                              [Link] (5 responses)
       
> 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. 
     
    
      Posted Aug 7, 2014 3:06 UTC (Thu)
                               by kloczek (guest, #6391)
                              [Link] (4 responses)
       
Did you watch Big Bang Theory when Sheldon explained Penny what it means "just fine"? :) 
https://www.youtube.com/watch?v=Yo-CWXQ8_1M 
Try to imagine that my reaction on "just fine" phrase is like Penny reaction :P 
 
     
    
      Posted Aug 7, 2014 3:16 UTC (Thu)
                               by Cyberax (✭ supporter ✭, #52523)
                              [Link] (3 responses)
       
     
    
      Posted Aug 7, 2014 4:15 UTC (Thu)
                               by kloczek (guest, #6391)
                              [Link] (2 responses)
       
Because you can do base processing huge volume of tracing data in place of hook using D code instead doing this offline. 
 
     
    
      Posted Aug 7, 2014 4:18 UTC (Thu)
                               by Cyberax (✭ supporter ✭, #52523)
                              [Link] (1 responses)
       
     
    
      Posted Aug 9, 2014 12:13 UTC (Sat)
                               by kloczek (guest, #6391)
                              [Link] 
       
How many times did you rash system using SystemTap? 
> And perf subsystem also supports filters. 
You don't understand where is the problem. 
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.  
     
    The 3.16 kernel has been released
      
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).
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
      
SystemTap can do this just fine: https://github.com/fche/systemtap/blob/master/testsuite/s...
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
      
https://www.youtube.com/watch?v=_amwWlgS6LM
The 3.16 kernel has been released
      
The 3.16 kernel has been released
      
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
      
The 3.16 kernel has been released
      
I had such situations hundreds times.
This is why DTrace VM doing whole work is better.
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.
 
           