awk '
NR==FNR {
# read the first file, save the desired field order
n = split($0, field_order)
next
}
FNR==1 {
# read the first line of the second file
# store the mapping of field name to existing column number
n = split($0, header)
for (i=1; i<=n; i++)
current_field_order[header[i]] = i
}
{
# output the fields in the desired order
for (i=1; i<=n; i++)
printf "%s%s", $(current_field_order[field_order[i]]), OFS
print ""
}
' file1 file2
Это нарушит выравнивание столбцов. Вы можете направить вывод в | column -t
, чтобы сделать его красивым.
Более явный способ сформулировать это так: «средняя частота, с которой TSC увеличивается на протяжении всего интервала». TSC подсчитывает циклы ЦП :и увеличивает их количество каждый раз, когда тикает тактовая частота ЦП. Это происходит независимо от того, что делает компьютер. Колебания частоты отражают изменение тактовой частоты :. Обычно, если ЦП простаивает, оно замедляется, а если занято — ускоряется. (Однако «постоянные» TSC тикают на номинальной частоте ЦП.)
Формула: («TSC в конце» -«TSC в начале» )÷ («время в конце» -«время в начале» ).
В turbostat
показаны следующие значения частоты:
Avg_MHz
:«полезная» частота, т. е. количество выполненных циклов, деленное на истекшее время Bzy_MHz
:частота, с которой процессор работал, когда ему нужно было что-то делать, т. е. , когда он находился в C0, а не в режиме ожидания TSC_MHz
:частота, на которой работал TSC, как описано выше