Если mkfs.xfs
не установлен, затем Вы пропустили этот шаг в статье:
sudo apt-get install -y xfsprogs
Вы записали:
на моем экземпляре я должен был использовать/dev/xvdh и не/dev/sdh
Да, это - путь, который присоединил объемы, и эфемерное устройство хранения данных обнаруживаются на современных версиях Ubuntu на EC2. Статья немного устарела с названием устройства, но я все еще делаю все остальное, как описано в нем.
Раскрытие: Я написал ту статью.
Я нашел решение благодаря подсказке данным Nils и хорошей статьей.
У ondemand регулятора есть ряд параметров для управления, когда он ударяет динамическое частотное масштабирование (или DVFS для динамического напряжения и частотного масштабирования). Те параметры расположены под sysfs деревом: /sys/devices/system/cpu/cpufreq/ondemand/
Одно из этого параметры up_threshold
то, которые как имя предлагают, является порогом (единица является % ЦП, я не имею, узнают хотя, если это на базовые или объединенные ядра), выше которого ondemand регулятор вталкивает и начинает изменять динамично частоту.
Изменить его на 50% (например), с помощью sudo просто:
sudo bash -c "echo 50 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold"
Если Вы - корень, еще более простая команда возможна:
echo 50 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
Примечание: те изменения будут потеряны после следующей перезагрузки хоста. Необходимо добавить их к конфигурационному файлу, который читается во время начальной загрузки, как /etc/init.d/rc.local
на Ubuntu.
Я узнал, что мой гость, VM, хотя используя много ЦП (80-140%) на хосте распределял нагрузку на оба ядра, таким образом, не одноядерный был выше 95%, таким образом ЦП, к моему раздражению, оставался в 800 МГц. Теперь с вышеупомянутым патчем, ЦП динамично изменяет его частота на ядро намного быстрее, которое удовлетворяет лучше моим потребностям, 50% кажется лучшим порогом для моего гостевого использования, Ваш пробег может варьироваться.
Возможно, что некоторые применимые, которые неправильно реализуют таймеры, могли бы быть затронуты DVFS. Это может быть проблемой на хосте и/или гостевой среде, хотя хост может иметь некоторый замысловатый алгоритм, чтобы попытаться минимизировать это. Однако современный ЦП имеет более новый TSC (Счетчик Метки времени), которые независимы от текущей частоты ЦП/ядра, это: постоянный (constant_tsc), инвариант (invariant_tsc) или безостановочный (nonstop_tsc), см. эту статью Chromium о пересинхронизации TSC для получения дополнительной информации о каждом. Таким образом, если Ваш ЦП оборудован одним из этого TSC, Вы не должны вызывать HPET. Чтобы проверить, поддерживает ли Ваш хост ЦП их, используйте подобную команду (измените grep параметр на соответствующую функцию CPU, здесь мы тестируем на постоянный TSC):
$ grep constant_tsc /proc/cpuinfo
Если у Вас нет одного из этого современного TSC, Вы должны также:
Безопасное решение состоит в том, чтобы включить таймеры HPET (см. ниже для получения дополнительной информации), они медленнее для запросов, чем TSC (TSC находятся в ЦП, по сравнению с HPET находятся в материнской плате), и возможно не имеет точный (HPET> 10 МГц; TSC часто макс. тактовая частота ЦП), но они намного более надежны особенно в конфигурации DVFS, где каждое ядро могло иметь различную частоту. Linux достаточно умен для использования наилучшего имеющегося таймера, он будет полагаться сначала на TSC, но, если найдено слишком ненадежный, он будет использовать HPET один. Эта работа, хорошая на хосте (чистый металл) системы, но из-за не вся информация, правильно экспортируемая гипервизором, это - больше проблемы для гостя VM для обнаружения плохого поведения TSC. Прием должен затем вызвать для использования HPET в госте, хотя Вам был бы нужен гипервизор для предоставления доступа к этому источнику часов доступным для гостей!
Ниже Вас может найти, как настроить и/или включить HPET на Linux и FreeBSD.
HPET или таймер события высокой точности, является аппаратным таймером, который можно найти в большей части товарного ПК с 2005. Этот таймер может использоваться эффективно современной ОС (ядро Linux поддерживает его с тех пор 2.6, стабильная поддержка на FreeBSD с тех пор последний 9.x, но было представлено в 6,3) предоставлять последовательную синхронизацию неизменно управлению питанием процессора. Это позволяет создавать также более легкие реализации планировщика галочки меньше.
В основном HPET похож на защитное ограждение, которое, даже если хост имеет DVFS активный, будут менее затронуты хост и гостевые события синхронизации.
Существует хорошая статья от IBM относительно включения HPET, это объясняет, как проверить, какой аппаратный таймер Ваше ядро использует, и которые доступны. Я предоставляю здесь краткий обзор:
Проверка доступного аппаратного таймера (таймеров):
cat /sys/devices/system/clocksource/clocksource0/available_clocksource
Проверка текущего активного таймера:
cat /sys/devices/system/clocksource/clocksource0/current_clocksource
Более простой способ вызвать использование HPET, если Вы имеете его в наличии, состоит в том, чтобы изменить Ваш загрузчик, чтобы попросить включать его (начиная с ядра 2.6.16). Эта конфигурация является иждивенцем распределения, поэтому обратитесь к своей собственной документации распределения для установки ее правильно. Необходимо включить hpet=enable
или clocksource=hpet
на строке начальной загрузки ядра (это снова зависит от версии ядра или распределения, я не нашел когерентной информации).
Это удостоверяется, что гость использует таймер HPET.
Примечание: на моем ядре 3.5, Linux кажется погрузке автоматически hpet таймером.
На FreeBSD можно проверить, какие таймеры доступны путем выполнения:
sysctl kern.timecounter.choice
В настоящее время выбираемый таймер может быть проверен с:
sysctl kern.timecounter.hardware
FreeBSD 9.1, кажется, автоматически предпочитает HPET по другому поставщику таймера.
Todo: как вызвать HPET на FreeBSD.
KVM, кажется, экспортирует HPET автоматически, когда хост имеет поддержку его. Однако для гостя Linux они предпочтут другие автоматически экспортируемые часы, которые являются kvm-тактовыми (паравиртуализированная версия хоста TSC). Некоторые люди сообщают о проблеме с предпочтительными часами, Ваш пробег может варьироваться. Если Вы хотите вызвать HPET в госте, обратитесь к вышеупомянутому разделу.
VirtualBox не экспортирует часы HPET в гостя по умолчанию, и нет никакой опции сделать так в GUI. Необходимо использовать командную строку и удостовериться, что VM выключается. команда:
./VBoxManage modifyvm "VM NAME" --hpet on
Если гость продолжает выбирать другой источник, чем HPET после вышеупомянутого изменения, обратитесь к вышеупомянутому разделу, как вынудить ядро использовать часы HPET в качестве источника.
Это не гость, который инициировал высококлассное - хост должен сделать это. Таким образом, необходимо понизиться согласно пороговому уровню на хосте.
sudo bash -c "echo 50 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold"
Источник: ivanlam.info/blog/2012/04/26 / …
– Huygens
09.02.2013, 23:36
cpuspeed
расположен в/etc/sysconfig/cpuspeed для внесения такого изменения постоянным. В моем случае у меня был VBox-VM со всего одним (физически двухъядерным) ЦП. Я должен был понизить уровень к 45% для получения высококлассного эффекта в VM.
– Nils
17.02.2013, 22:45
на хосте kvm CPU похож на процесс. Масштабирующийся механизм не следит за процессами, только полным потреблением ресурсов ЦП.
и это - обычно лучшая практика для отключения масштабирования/регулировки/и т.д. CPU при выполнении VMs