У меня SQL Server 2008 Express работает на виртуальной машине на базе Hyper-V с двумя vCPU. Я только что читал о SQL Server 2012 Express и заметил, что его ЦП «ограничен одним сокетом или 4 ядрами» (http://msdn.microsoft.com/en-us/library/cc645993(v=SQL.110).aspx)
У меня вопрос: как ограничения SQL Server 2012 на количество процессоров / ядер переводятся в vCPU? Они «процессоры» или «ядра»?
РЕДАКТИРОВАТЬ:
Я только что нашел это: ВЦП - это 1 сокет или одно ядро?
В основном решение - загрузить CPU-Z и проверить, что я и сделал. На моем VPS с 2 виртуальными ЦП CPUZ показывает 1 поток 2 ядра, поэтому похоже, что мой SQL Express должен работать на обоих виртуальных ЦП. Однако, когда я перехожу к конфигурации сродства процессора, там отображаются 2 процессора, из-за чего создается впечатление, что он использует только один из виртуальных ЦП, выделенных для моего VPS. Я совершенно запутался: /
Каждый виртуальный ЦП считается одним ЦП в гостевой ОС, что означает, что в гостевых ОС и приложениях внутри них каждое физическое ядро является одним ЦП.
Виртуализация абстрагирует физическое оборудование, поэтому вся гостевая ОС и любое приложение внутри нее могут видеть значения, которые гипервизор передает им. В вашем случае гипервизор сообщает ОС, что у вас есть два процессора, потому что вы его настраиваете так - иметь два виртуальных процессора. Поэтому, когда SQL проверяет, сколько у вас ЦП, SQL видит два [виртуальных] ЦП, которые вы назначили, поэтому SQL Express ограничивается использованием одного.
Думаю, я должен добавить это: Быстро и грязно о том, как настроить vCPU в Hyper-V. Если вы хотите, чтобы SQL Express использовал больше ресурсов ЦП, вставьте один виртуальный ЦП и сопоставьте его с большим количеством физических процессоров и / или более высоким пределом ресурсов. Это позволит SQL Express использовать столько ресурсов ЦП, сколько может выделить ему хост, без нарушения лицензионных ограничений ЦП SQL Express.
О, но не делайте этого в своей существующей ОС, так как измените количество процессоров между одним и несколькими процессорами в ОС Windows приводит к проблемам - это делает ОС нестабильной. Создайте новую виртуальную машину с новой установкой ОС и на этот раз просто создайте один виртуальный ЦП, который можно сопоставить с большим количеством физических ресурсов.
Hyper-V в Server 2008 и Server 2008 R2 проецирует виртуальную топологию на виртуальную машину, которая выглядит как один процессор с несколькими ядрами. Если вы хотите убедиться в этом сами, загрузите Coreinfo из Sysinternals. (В настоящее время на http://technet.microsoft.com/en-us/sysinternals/cc835722)
Hyper-V в Server 2012 может проецировать множество различных типов виртуальных топологий, что полезно для настройки рабочих нагрузок с большим количеством виртуальных процессоров. По умолчанию он будет проецировать топологии, соответствующие физической топологии, но вы можете это изменить.
Обратите внимание, что изменение топологии, проецируемой на вашу виртуальную машину, может изменить производительность рабочей нагрузки внутри, заставляя гостевую ОС и стек приложений принимать различные решения о конфигурации. Однако простое изменение гостевой топологии не может привести вас к соблюдению лицензионных требований.