sysbench --test = cpu --cpu-max-prime = 20000 запусков
Google ВМ:
стандартный 1 процессор (asia-east1), E5 v2 2.5G,
время исполнения: ~ 28 секунд
стандартные 2 процессора (asia-east1), E5 v2 2.5G,
время исполнения: ~ 28 секунд
AWS ec2:
m3.medium, E5 v2 2.5G,
время исполнения: ~ 59 секунд
m3.large, E5 v2 2.5G,
время исполнения: ~ 28 секунд
Отредактировано:
Только что я протестировал два экземпляра m3.medium и два экземпляра m3.large и обнаружил, что только m3.medium работает медленно. Все экземпляры m3.medium, которые я тестировал, медленные (~ 59 секунд).
В большинстве малых / средних инстансов AWS агрессивно распределяет время ЦП между несколькими виртуальными машинами. Это означает, что любой процесс, который кажется «запущенным» на стороне гостя, действительно может быть «приостановлен / ожидает» на стороне хоста, что снижает общую производительность.
Остальные облачные провайдеры кажется чтобы обеспечить даже небольшие экземпляры с несколько меньшим разделением времени: например, на небольшой машине Azure я получил гораздо более высокую производительность процессора, чем аналогичный экземпляр AWS.
Однако настройка / определение размера VMS может быть довольно сложной задачей, поэтому следует учитывать множество вариантов. Например, когда машина AWS простаивает, она собирает «кредиты ЦП» для быстрых и коротких периодов. Для получения дополнительной информации посмотрите Вот.
Когда вы получаете обычную виртуальную машину у большинства облачных провайдеров, вы не получаете выделенных ресурсов, иначе вы получите выделенный сервер, который обычно намного дороже. Конечно, это зависит от реализации провайдера, но в целом всегда есть избыточные обязательства и избыточная подписка. Чем выше плотность (больше оборудования и больше виртуальных машин), тем лучше вы можете стабилизировать производительность на отдельных виртуальных машинах, но все зависит от многих факторов, таких как алгоритмы планирования ЦП, плотность, балансировка нагрузки виртуальных машин и т. Д.
Например, Azure пытается гарантировать определенную производительность для виртуальных машин разных размеров, но на самом деле это очень вариативно по многим различным факторам, ваша виртуальная машина не работает отдельно на оборудовании, она работает вместе со многими другими ...
Другие контрольные показатели
Нашел интересный тест Вот на VPS Benchmarks. Обратите внимание, что у них есть несправедливые графики, на шкале которых нет 0, поэтому графики практически бесполезны. Цифры тестов кажутся хорошими.
Их тест сравнивает AWS t2.small (1 ядро, 2 ГБ ОЗУ) с GCE n1-standard-1. Экземпляры t2 - не лучшее сравнение для стандарта n1, они имеют стабильную производительность ЦП по сравнению с GCE с постоянным ЦП, но это единственный подходящий тест, который я могу найти.
Считается, что инстансы t2 работают на старом оборудовании AWS (поколение m1), тогда как инстансы M3 / M4 AWS более новые. Тест GCE также проводился намного позже.
Индивидуальные тесты
Все это относится к тесту, указанному выше.
Тест CPU близок, в пределах 3%.
Случайное чтение файлового ввода-вывода совсем не близко. AWS имеет скорость 24 Мбит / с, а GCE - 1787 Мбит / с. Я знаю, что в AWS ввод-вывод тесно связан с типом вашего экземпляра, небольшие экземпляры получают намного меньше операций ввода-вывода, чем большие. Учитывая это огромное несоответствие и примерно схожие результаты других тестов, я хотел бы увидеть это повторно, прежде чем доверять цифрам. Я читал, что GCE очень хорошо справляется с сетевым вводом-выводом. Также может быть, что тест GCE проводился с локальным SSD, а тест AWS - с сетевым хранилищем.
Другие тесты ввода-вывода примерно аналогичны. Иногда AWS выше, иногда GCE выше, но явного победителя нет.
Тесты памяти примерно одинаковы, AWS опережает Google.
Ноты
Любой отдельный тест на любом экземпляре любого провайдера может потерпеть неудачу по множеству причин. Оборудование с избыточной подготовкой, шумный сосед, занимающий больше, чем их доля ресурсов, и Кража ЦП это всего лишь несколько примеров.
Хороший тест будет использовать различные тесты (ЦП, ввод-вывод, память и т. Д.) И будет выполняться как минимум на трех отдельных виртуальных машинах.
Вывод
AWS и GCE, похоже, работают примерно одинаково в этом достаточно хорошо документированном тесте, хотя типы инстансов и оборудование сильно различаются.
Я хотел бы, чтобы @StanHou проводил значительно более надежные, хорошо документированные тесты для сравнения производительности, а не полагался бы на то, что может быть одним тестом на отдельных экземплярах.