Brendan Gregg, ืืืื ืขืจ ืคืื ืื ืืขืืืขืืึธืคึผืขืจืก ืคืื DTrace, ืืืึธืก ืืื ืืืฆื ืืขืืืขืืึธืคึผืื ื BPF-ืืืืืจื ืคืึธืจืฉืืขืืื ื ืึทื ืึทืืืกืืก ืืืฉืืจืื ืืื ืื ืืื ืืงืก ืงืขืจื, ืกืึทืืขืจืืืื ืื ืืขืจืคืึทืจืื ื ืคืื ืึทื ืึทืืืืืื ื ืื ืคืึธืจืฉืืขืืื ื ืคึผืจืึธืืืขืืก ืืืึธืก Netflix ืืขืคึผืืึธื ืืขืจื ืืืขื ืืืืืจืืืืื ื ืื Cassandra DBMS ืคึฟืื CentOS ืฆื Ubuntu. ืื Amazon EC2 ืืืึธืืงื ืืืืืจื ืืืืฃ Xen. ื ืึธื ืืืืืจืืืฉืึทื, ืื ืงืคึผื ืืึทืกืข ืืขืืืืงืกื ืืื 30% ืืื ืื ืืืืืื ืืขืฉืึทืก ืฉืจืืึทืื ืึทืคึผืขืจืืืฉืึทื ื ืืขืืืืงืกื ืืื ืืืขืื ืืขืจ ืืขืืืืงืขืจ ืกืืืข. ืืื ืขืก ืืืจื ืก ืืืืก, ืื ืคืึธืจืฉืืขืืื ื ืคืื ืึทืคึผืืึทืงืืืฉืึทื ื ืืืึธืก ืื ืืขื ืกืืืืื ืืขืื ืฆืืื ืืื ืคึฟืึธืจืืึทืฆืืข ืืขืคึผืขื ืืก ืืืืฃ ืื ืคึผืื ืืืขื ืฆืืื ืืงืืจ ืืืืกืืขืงืืืื ืืื ืื ืกืืกืืขื.
ืืื ืขืจืฉืืขืจ, ืื ืกืืื ืคึฟืึทืจ ืื ืคืึทืจืงืืขื ืขืจื ืืื ืคืึธืจืฉืืขืืื ื ืืื ื ืืฉื ืงืืึธืจ ืืื ืืขืจ ืืึธื ืืื ืื ืืืึทืื ืึธืกืืก ืื ืืขืืืืื ืืื ืืึธื ืืืึธืจืื ื ืื ืืขืืืขื ืคึผืจืึทื ืคืื ืงืขืกืืืืขืจืืืง ืคืืืกื ืืืง ืึธืืขืจ ืคึผืืจืืึทืืืงืื ืืึธื ืืฉื ืืืื-ืืื ืืขื ืกืืืืข ืกืืกืืขื ืคึผืจืึทืกืขืกืึทื ืืื ืื ืฉืคึผืืฅ ืืื ืขืงืกืขืกื ืึธืึธืคึผ ืืืืืืึทืืื. ืึธืืขืจ ืึทืืฅ ืืึธื ืึธื ืืขืืืืื ืึทื ืื ืืืื ืงืึทื ืกืึทืืฉืึทื ืืื ืกืคึผืึทืกืืคืืงืื ืืขืืืืงืกื ืืื ืื Cassandra DBMS, ืืขืฉืจืืื ืืื Java. ืงืึทืืคึผืขืจืื ื ืื ืคึผืจืึธืคืืืื ื ืืขืืจืืงืก ืคืื ืฆืืืื ืงืึทืกืกืึทื ืืจืึท ืคึผืจืึทืกืขืกืึทื ืคืืืกื ืืืง ืืื ืคึผืึทืจืึทืืขื ืืืืฃ CentOS ืืื Ubuntu, ืคึผืจืึทืกืขืกืื ื ืื ืืขืืืข ืคึฟืจืืื, ืืขืืืืื ืึทื ืืืขืื 32% ืคืื ืื ืืึทื ืฅ ืฆืืื ืืื ืคืืจืืจืืื ืฆื ืจืืคื os :: javaTimeMillis (), ืืืึธืก ืืื ืืขื ืืฆื ืฆื ืืึทืงืืืขื ืืื ืคึฟืึธืจืืึทืฆืืข ืืืขืื ืื ืงืจืึทื ื ืฆืืื. .
ื ืื ืืขื ืืื ืืืจืืืขืคืืจื ืืขืืืืจื ืื ืขืงืกืคืขืจืืืขื ื ืืื ืืืขืืืข ืืขื ืืื ืืขืฉืจืืื ื ืคืฉืืืข ื'ืืื ืืคืืืงืืฆืืข ืืืืก ืืื ืืขืจืืคื ืื System.currentTimeMillis() ืืขืืื ืืื ืืขืจื ืืืืืื ืืื ืืื ื ืฉืืืืฃ. ืคืืืกื ืืืง ืื ืึทืคึผืืึทืงืืืฉืึทื ืืขืืืืื ืึทื ืขืก ืืขื ืืืขื 13 ืกืขืงืื ืืขืก ืฆื ืคืึทืจืขื ืืืงื ืืืืฃ CentOS, ืืื ืืืขืื 68 ืกืขืงืื ืืขืก ืืืืฃ ืืืื ืื, ื"ื. 5 ืืื ืกืืึธืืขืจ. ื ืขื ืืืืข ืคืจืืืจืื ืืื ืืขืฉืจืืื ืืื C, ืืืืก ืืื ืืขืจืืคื ืื gettimeofday() ืคึฟืื ืงืฆืืข ืืื ืืขืจื ืืืืืื ืืื, ืืืขืจ ืืืขื ืขืก ืืื ืืขืืืขื ืขืงืกืึทืงืืืืึทื, ืขื ืืขื ืจืขืืืืืึทืื ืืขื ืขื ืืืงืืืขื.
ืืื ื ืขืก ืืื ืืขืืืืจื ืงืืึธืจ ืึทื ืืขืจ ืืงืืจ ืคืื ืื ืคึผืจืึธืืืขื ืืื ืืขืืืขื ืื ืคึฟืื ืงืฆืืข ืคืื โโืฆืืจืืงืงืืืขื ืื ืงืจืึทื ื ืฆืืื, ืืคืืขืจืงืืึทืืงืืื ืืืขื ืื ืฆื ืขื ืืขืจืื ืืขื ืืื ืื ืืืงืึทืืึธืจืก ืืืขื ืืฉืืืื ื ืคืึทืจืฉืืืขื ืข ืงืืืืื ืคืื ืคึผืื ืืืขื ืฆืืื ืืื ืื ืกืืกืืขื. ืืืื ืืฉืคืื ืืืื ืื ืืื ืืึทืื ืคืื "/sys/devices/system/clocksource/clocksource0/current_clocksource", ืื "ืงืกืขื" ืืืึทืืขืจ ืืื ืืขื ืืฆื ืืืจื ืคืขืืืงืืึทื ืืืขื ืคืืืกื ืืืง ืืื ืืงืก ืืื ืื ืืึทืกื ืกืืกืืขื. ื ืึธื ืืฉืึทื ืืื ื ืื ืฆืืื ืืงืืจ ืฆื "tsc", ืื ืืืจืืคืืจืื ื ืฆืืื ืคืื ืื ืคึผืจืึธืืข ืึทืคึผืืึทืงืืืฉืึทื ืืื ืืืื ืื ืืืงืจืืกื ืคืื 68 ืฆื 3.3 ืกืขืงืื ืืขืก, ื.ื. ืขืก ืืื ืืขืืืืจื 20 ืืื ืคืึทืกืืขืจ. ืืื ืืขืจืฆื, ืึท ืคืึธืจืฉืืขืืื ื ืคึผืจืึธืืข ืคืื โโืื ืงืืืื-ืืืืืขืจ ืฆืืื ืืงืืจ ืืื ืืืจืืืขืงืึธืื, ืืืึธืก ืืขืืืืื ืึท ืคืึทืจืืจืขืกืขืจื ืืื ืืืืืื ืืื 20% ืงืึทืืคึผืขืจื ืฆื TSC. $ cat /sys/devices/system/clocksource/clocksource0/available_clocksource xen tsc hpet acpi_pm $ cat /sys/devices/system/clocksource/clocksource0/current_clocksource xen $ ืฆืืื ืืืฉืึทืืืึท ืืืืขืืขื ืืฉ ืคืึทืงืืืฉ 1m8.300s ืืึทื ืืฆืขืจ 0m38.337s $0s29.875 echo tsc> /sys/devices/system/clocksource/clocksource0/current_clocksource $ ืฆืืื ืืืฉืึทืืืึท ืืืืขืืขื ืืฉ ืคืึทืงืืืฉ 0m3.370s ืืึทื ืืฆืขืจ 0m3.353s sys 0m0.026s
ืฆื ืืึทืงืืืขื ืื ืฆืืื ืืืขื ืกืขืืื ื ืึท TSC ืืงืืจ, ืื RDTSC ืคึผืจืึทืกืขืกืขืจ ืืืืขื ืืื ืืขื ืืฆื, ืื ืืืจืืคืืจืื ื ืคืื ืืืึธืก ืืื ื ืืฉื ืืึทืจืคื ืึท ืกืืกืืขื ืจืืคื (ืื ืืืืขื ืืื ื ืืฉื ืืึทืจืคื ืขืืขืืืึทืืขื ืคึผืจืืืืืืึทืืืฉืึทื ืืื ืืจืืื ืึท ืืืขืจื ืคืื ืื ืฆืืื ืืึธืืืึทื ืง ืืขืืืื ืืื ืื ืงืคึผื). ืืืจื ืคืขืืืงืืึทื, TSC ืืื ื ืืฉื ืึทืงืืืืืืืืื ืืืืึทื ืืื ืื ืึทืื ืืขื ืืขื ืืงืืจ ืืื ื ืืฉื ืืืกืฉืืืกื ืืจืึทืืืฉืืึทื ืฆืืื ืืจืืคื, ืืืึธืก ืืื ืื ืืขืจืข ืคึผืจืึทืกืขืกืขืจื ืืื ืึทืืืฉืึทืกืืื ืืืจื ืืืืืืืืืจื ืฆื ืืขืจืืจืืืื ืืขืจ ืคึผืื ืืืขื ืจืืืื ืื. ืืืื ืึทื ืื ืืฉืขื ืืจ ืืืึธืก ืกืคึผืขืฉืึทืืืืืื ืืื ืคึผืจืึทืกืขืกืขืจ ืึทื ืืืืืงืืื ื, ืื ืคืืจื ืืืขืื ืฆืืื ืฉืืคืฅ ืืืขื ื ืืฆื TSC ืืึธืื ืืึทื ื ืฉืืื ืึทื ืืจื ืืื ืืื ืืึธืืขืจื ืคึผืจืึทืกืขืกืขืจื ืืขืจ ืืงืืจ ืงืขื ืขื ืคึผืจืึธืืืฆืืจื ืกืืึทืืื ืจืืืื ืื ืคึฟืึทืจ ืืึธืจื.
ืกืืืืืฉืื ื ืคึผืจืึธืืืงืฆืืข ืกืขืจืืืขืจืก ืืื Netflix ืฆื ืึท TSC ืืงืืจ ืจืืืึทืืืื ืืื ืึท 43% ืจืขืืืงืฆืืข ืืื ืฉืจืืึทืื ืืืืืึทื ืกื ืืื ืึทืืฉืืืื ืจืขืืืืืึทืื ืืื ืืืื ืื ืืืึธืก ืืขื ืขื 4 ืืื ืคืึทืกืืขืจ ืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืคืืืกื ืืืง CentOS ืืื ืึท "ืงืกืขื" ืฆืืื ืืงืืจ. ืื ืจืขืืืืืึทืื ืคืื ืื ืืขืจื ืขื ืืขื ืขื ืืจืึทื ืกืคืขืจื ืฆื ืึทืืึทืืึธื, ืืืึธืก ืึทืคืืฉืึทืื ืจืขืงืึทืืขื ืืื ืฆื ื ืืฆื ืื ืคืขืืืงืืึทื TSC ืฆืืื ืืงืืจ ืืื AWS EC2 ืื ืืืืืจืึทื ืืึทื ืฅ ืืืืืจื ืืืืฃ ืื Xen ืืืืคึผืขืจืืืืืืขืจ (ืงืืื-ืืืืืขืจ ืืื ืจืขืงืึทืืขื ืืื ืืื ืื ืืืืืจืึทื ืืึทื ืฅ ืืืืืจื ืืืืฃ ืื ื ืืืจืึธ ืืืืคึผืขืจืืืืืืขืจ).
ืืงืืจ: opennet.ru