EC2 clock accuracy research
Reproducible research on clock accuracy on different Amazon EC2 instance sizes / regions.
This project has been retired and is no longer being supported by City Index Ltd.
- if you should choose to fork it outside of City Index, please let us know so we can link to your project
Currently available are respective infrastructure automation scripts to operate a cross region cluster of of Amazon EC2 machines of differing sizes and OS, see the following links for further details:
Millisecond clock accuracy is important for many applications, and especially for financial applications.
Accuracy (especially in Windows and older Linux kernels) can be poor on virtualized hardware due to the
[necessary] CPU interruptions experienced by VM Guest OSes.
This VMware whitepaper discusses the underlying technical reasons for this.
This repository contains the results of research into how accurate EC2 instance clocks can be made when using NTP, and a description of the tools & research methodology used so that this research an be reproduced.
It should be possible to gain more insight into the accuracy of virtualized hardware by measuring the CPU steal time and correlating it with NTP data (see IBM's presentation CPU time accounting for for a technical explanation and illustrations of the concept). However, while most Unix/Linux monitoring tools nowadays expose this metric, it doesn't seem to be (readily) available on Windows via respective Windows Performance Counters yet for example (see Is there a Windows equivalent of Unix 'CPU steal time'? for details).
Copyright 2012 City Index Ltd.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.