High Resolution Timer Support und Optimierung

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
me
Beiträge: 868
Registriert: 30.10.2005 00:14:23
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Paderborn
Kontaktdaten:

High Resolution Timer Support und Optimierung

Beitrag von me » 23.07.2007 22:28:28

Guten Abend,

ich wollte mal wissen, woran ich genau erkenne, ob meine CPU / System das Kernel Feature "High Resolution Timer Support" unterstützt. Ich besitze einen AMD Athlon64 4000+ Single Core auf einem 939 Socket.

Der Output von timers_list ist wie folgt:

Code: Alles auswählen

the-me:~# cat /proc/timer_list
Timer List Version: v0.3
HRTIMER_MAX_CLOCK_BASES: 2
now at 10452239614098 nsecs

cpu: 0
 clock 0:
  .index:      0
  .resolution: 1 nsecs
  .get_time:   ktime_get_real
  .offset:     1185211963184303511 nsecs
active timers:
 clock 1:
  .index:      1
  .resolution: 1 nsecs
  .get_time:   ktime_get
  .offset:     0 nsecs
active timers:
 #0: <e5d49f04>, tick_sched_timer, S:01
 # expires at 10452240000000 nsecs [in 385902 nsecs]
 #1: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452240562003 nsecs [in 947905 nsecs]
 #2: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452240740887 nsecs [in 1126789 nsecs]
 #3: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452241608724 nsecs [in 1994626 nsecs]
 #4: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452242790665 nsecs [in 3176567 nsecs]
 #5: <e5d49f04>, it_real_fn, S:01
 # expires at 10452244234447 nsecs [in 4620349 nsecs]
 #6: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452271698445 nsecs [in 32084347 nsecs]
 #7: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452297398445 nsecs [in 57784347 nsecs]
 #8: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452309113445 nsecs [in 69499347 nsecs]
 #9: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452345323724 nsecs [in 105709626 nsecs]
 #10: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10452429587444 nsecs [in 189973346 nsecs]
 #11: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10458075234445 nsecs [in 5835620347 nsecs]
 #12: <e5d49f04>, it_real_fn, S:01
 # expires at 10458489509139 nsecs [in 6249895041 nsecs]
 #13: <e5d49f04>, hrtimer_wakeup, S:01
 # expires at 10458537780162 nsecs [in 6298166064 nsecs]
  .expires_next   : 10452240000000 nsecs
  .hres_active    : 1
  .nr_events      : 9271004
  .nohz_mode      : 2
  .idle_tick      : 10452228000000 nsecs
  .tick_stopped   : 0
  .idle_jiffies   : 2538056
  .idle_calls     : 8417172
  .idle_sleeps    : 1111548
  .idle_entrytime : 10452233225769 nsecs
  .idle_sleeptime : 1191002369682 nsecs
  .last_jiffies   : 2538058
  .next_jiffies   : 2538059
  .idle_expires   : 10452232000000 nsecs
jiffies: 2538059


Tick Device: mode:     1
Clock Event Device: pit
 max_delta_ns:   27461866
 min_delta_ns:   12571
 mult:           5124677
 shift:          32
 mode:           3
 next_event:     10452240000000 nsecs
 set_next_event: pit_next_event
 set_mode:       init_pit_timer
 event_handler:  hrtimer_interrupt
Und dann wollte ich wissen ob der Kernel performancetechnisch verbessert wird, wenn man ihn mit der Option -O2 statt -Os kompiliert (Feature: Optimize for size (Look out for broken compilers!)).
Anytime if we think we were right,
we were maybe wrong.

Antworten