LINUX.ORG.RU

История изменений

Исправление alx777, (текущая версия) :

Пишут, что типа немного проседает производителоьность и улучшается отклик. А как это проверить?

Например так:

Система без RT PREEMPT (PC)

❯ sudo cyclictest -m -Sp80 -l 10000
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 0.81 0.83 0.84 1/1569 382771          

T: 0 (382670) P:80 I:1000 C:  10000 Min:      1 Act:    1 Avg:    2 Max:     127
T: 1 (382671) P:80 I:1500 C:   6674 Min:      1 Act:    2 Avg:    2 Max:     144
T: 2 (382672) P:80 I:2000 C:   5002 Min:      1 Act:    3 Avg:    7 Max:     221
T: 3 (382673) P:80 I:2500 C:   4000 Min:      1 Act:    3 Avg:    2 Max:      35
T: 4 (382674) P:80 I:3000 C:   3332 Min:      1 Act:    2 Avg:    2 Max:     130
T: 5 (382675) P:80 I:3500 C:   2855 Min:      1 Act:    2 Avg:    2 Max:     178

Система с RT PREEMPT (ARM iMX8)

# cyclictest -m -Sp80 -l 10000
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 1.73 1.42 1.32 1/222 14973          

T: 0 (14960) P:80 I:1000 C:  10000 Min:      6 Act:    6 Avg:    8 Max:      25
T: 1 (14961) P:80 I:1500 C:   6661 Min:      6 Act:   10 Avg:    9 Max:      33
T: 2 (14962) P:80 I:2000 C:   4988 Min:      6 Act:    7 Avg:   10 Max:      33
T: 3 (14963) P:80 I:2500 C:   3984 Min:      6 Act:    8 Avg:   10 Max:      39

cyclictest запускает треды по числу ядер и кладет их спать на определенное время.

Когда они просыпаются, cyclictest смотрит кто насколько проспал и показывает min/actual/average/max значения в микросекундах

Исходная версия alx777, :

Например так:

Система без RT PREEMPT (PC)

❯ sudo cyclictest -m -Sp80 -l 10000
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 0.81 0.83 0.84 1/1569 382771          

T: 0 (382670) P:80 I:1000 C:  10000 Min:      1 Act:    1 Avg:    2 Max:     127
T: 1 (382671) P:80 I:1500 C:   6674 Min:      1 Act:    2 Avg:    2 Max:     144
T: 2 (382672) P:80 I:2000 C:   5002 Min:      1 Act:    3 Avg:    7 Max:     221
T: 3 (382673) P:80 I:2500 C:   4000 Min:      1 Act:    3 Avg:    2 Max:      35
T: 4 (382674) P:80 I:3000 C:   3332 Min:      1 Act:    2 Avg:    2 Max:     130
T: 5 (382675) P:80 I:3500 C:   2855 Min:      1 Act:    2 Avg:    2 Max:     178

Система с RT PREEMPT (ARM iMX8)

# cyclictest -m -Sp80 -l 10000
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 1.73 1.42 1.32 1/222 14973          

T: 0 (14960) P:80 I:1000 C:  10000 Min:      6 Act:    6 Avg:    8 Max:      25
T: 1 (14961) P:80 I:1500 C:   6661 Min:      6 Act:   10 Avg:    9 Max:      33
T: 2 (14962) P:80 I:2000 C:   4988 Min:      6 Act:    7 Avg:   10 Max:      33
T: 3 (14963) P:80 I:2500 C:   3984 Min:      6 Act:    8 Avg:   10 Max:      39

cyclictest запускает треды по числу ядер и кладет их спать на определенное время.

Когда они просыпаются, cyclictest смотрит кто насколько проспал и показывает min/actual/average/max значения в микросекундах