УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ПЕРЕКЛЮЧЕНИЯ РАБОЧЕЙ НАГРУЗКИ МЕЖДУ ПЕРВОЙ И ВТОРОЙ КОМПОНОВКОЙ СХЕМ ОБРАБОТКИ

1. Устройство обработки данных, содержащее:
первую компоновку схем обработки для выполнения операций обработки данных,
вторую компоновку схем обработки для выполнения операций обработки данных,
причем первая компоновка схем обработки является архитектурно совместимой со второй компоновкой схем обработки, так что рабочая нагрузка, выполняемая устройством обработки данных, может выполняться или на первой компоновке схем обработки, или на второй компоновке схем обработки, причем упомянутая рабочая нагрузка содержит по меньшей мере одно приложение и по меньшей мере одну операционную систему для выполнения упомянутого по меньшей мере одного приложения,
причем первая компоновка схем обработки отличается от второй компоновки схем обработки с точки зрения микроархитектуры, так что производительность первой компоновки схем обработки отличается от производительности второй компоновки схем обработки,
причем первая и вторая компоновка схем обработки сконфигурированы так, что рабочая нагрузка выполняется одной из первой компоновки схем обработки и второй компоновки схем обработки в любой момент времени,
контроллер переключения, реагирующий на управляющее воздействие для переноса, для выполнения операции передачи обслуживания для переноса выполнения рабочей нагрузки из исходной компоновки схем обработки на целевую компоновку схем обработки, причем исходной компоновкой схем обработки является одна из первой компоновки схем обработки и второй компоновки схем обработки, а целевой компоновкой схем обработки является другая из первой компоновки схем обработки и второй компоновки схем обработки,
причем контроллер переключения выполнен с возможностью, во время операции передачи обслуживания:
(i) обеспечивать предоставление исходной компоновкой схем обработки своего текущего состояния архитектуры целевой компоновке схем обработки, причем текущим состоянием архитектуры является то состояние, которое не доступно из совместно используемой памяти, разделяемой между первой и второй компоновкой схем обработки, в момент инициирования операции передачи обслуживания, и которое является необходимым целевой компоновке схем обработки, чтобы успешно принять на себя выполнение рабочей нагрузки от исходной компоновки схем обработки, и
(ii) маскировать заранее определенную конкретную для процессора информацию о конфигурации от упомянутой по меньшей мере одной операционной системы, так что перенос рабочей нагрузки является прозрачным для упомянутой по меньшей мере одной операционной системы.
2. Устройство обработки данных по п.1, дополнительно содержащее:
компоновку схем управления питанием для независимого управления питанием, подаваемым на первую компоновку схем обработки и вторую компоновку схем обработки,
причем до осуществления управляющего воздействия для переноса целевая компоновка схем обработки находится в режиме экономии энергии, а во время операции передачи обслуживания компоновка схем управления питанием вызывает выход целевой компоновки схем обработки из режима экономии энергии до того, как целевая компоновка для обработки примет на себя выполнение рабочей нагрузки.
3. Устройство обработки данных по п.2, в котором после операции передачи обслуживания, компоновка схем управления питанием вызывает переход исходной компоновки схем обработки в режим экономии энергии.
4. Устройство обработки данных по любому предыдущему пункту, в котором во время операции переноса, контроллер переключения вызывает применение исходной компоновкой схем обработки ускоренного механизма для предоставления своего текущего состояния архитектуры целевой компоновке схем обработки без обращения целевой компоновки схем обработки к совместно используемой памяти для получения текущего состояния архитектуры.
5. Устройство обработки данных по п.4, в котором:
по меньшей мере, упомянутая исходная компоновка схем имеет ассоциированный кэш,
устройство обработки данных также содержит компоновку схем управления просмотром, и
ускоренный механизм содержит перенос текущего состояния архитектуры в целевую компоновку схем обработки с использованием ассоциированного кэша упомянутой исходной компоновки схем и упомянутой компоновки схем управления просмотром.
6. Устройство обработки данных по п.5, в котором ускоренный механизм является механизмом сохранения и восстановления, который вызывает сохранение исходной компоновкой схем обработки своего текущего состояния архитектуры в ассоциированном с ней кэше, и вызывает выполнение целевой компоновкой схем обработки операции восстановления, посредством которой компоновка схем управления просмотром извлекает текущее состояние архитектуры из ассоциированного кэша исходной компоновки схем обработки и обеспечивает это извлеченное текущее состояние архитектуры в целевую компоновку схем обработки.
7. Устройство обработки данных по п.5, в котором целевая компоновка схем обработки имеет ассоциированный кэш, в котором переносимое состояние архитектуры, полученное компоновкой схем управления просмотром, сохраняется для обращения к нему со стороны целевой компоновки схем обработки.
8. Устройство обработки данных по п.4, в котором ускоренный механизм содержит выделенную шину между исходной компоновкой схем обработки и целевой компоновкой схем обработки, по которой исходная компоновка схем обработки обеспечивает свое текущее состояние архитектуры в целевую компоновку схем обработки.
9. Устройство обработки данных по одному из пп. 1, 2, 3, в котором контроллер переключения содержит, по меньшей мере, программное обеспечение виртуализации, логически отделяющее упомянутую по меньшей мере одну операционную систему от первой компоновки схем обработки и второй компоновки схем обработки.
10. Устройство обработки данных по одному из пп. 1, 2, 3, в котором тайминг управляющего воздействия для переноса выбирается так, чтобы повысить эффективность использования энергии устройства обработки данных.
11. Устройство обработки данных по одному из пп. 1, 2, 3, в котором упомянутое состояние архитектуры содержит, по меньшей мере, текущее значение одного или нескольких специальных регистров исходной компоновки схем обработки, в том числе значение счетчика команд.
12. Устройство обработки данных по п.11, в котором упомянутое состояние архитектуры дополнительно содержит текущие значения, хранящиеся в архитектурном регистровом файле исходной компоновки схем обработки.
13. Устройство обработки данных по одному из пп. 1, 2, 3, в котором по меньшей мере одна из первой компоновки схем обработки и второй компоновки схем обработки содержит один блок обработки.
14. Устройство обработки данных по одному из пп. 1, 2, 3, в котором по меньшей мере одна из первой компоновки схем обработки и второй компоновки схем обработки содержит группу блоков обработки с идентичной микроархитектурой.
15. Устройство обработки данных по п. 2, в котором упомянутый режим экономии энергии является одним из:
режима с отключенным питанием,
режима частичного/полного сохранения данных,
спящего режима, или
режима ожидания.
16. Устройство обработки данных по одному из пп. 1, 2, 3, 15, в котором первая компоновка схем обработки и вторая компоновка схем обработки отличается с точки зрения микроархитектуры наличием по меньшей мере одного из:
разных длин исполнительного конвейера, или
разных исполнительных ресурсов.
17. Устройство обработки данных по одному из пп. 1, 2, 3, 15, в котором исходная компоновка схем обработки имеет более высокую производительность, чем целевая компоновка схем обработки, и устройство обработки данных дополнительно содержит:
компоновку схем текущего контроля нагрева для текущего контроля теплоотдачи исходной компоновки схем обработки и для запуска упомянутого управляющего воздействия для переноса, когда упомянутая теплоотдача достигнет заранее определенного уровня.
18. Устройство обработки данных по одному из пп. 1, 2, 3, 15, в котором первая компоновка схем обработки и вторая компоновки схем обработки находятся на одной интегральной схеме.
19. Устройство обработки данных, содержащее:
первое средство обработки для выполнения операций обработки данных,
второе средство обработки для выполнения операций обработки данных,
причем первое средство обработки является архитектурно совместимым со вторым средством обработки, так что рабочая нагрузка, выполняемая устройством обработки данных, может выполняться или на первом средстве обработки, или на втором средстве обработки, причем упомянутая рабочая нагрузка содержит по меньшей мере одно приложение и по меньшей мере одну операционную систему для выполнения упомянутого по меньшей мере одного приложения,
причем первое средство обработки отличается от второго средства обработки с точки зрения микроархитектуры, так что производительность первого средства обработки отличается от производительности второго средства обработки,
причем первое и второе средство обработки сконфигурированы так, что рабочая нагрузка выполняется одним из первого средства обработки и второго средства обработки в любой момент времени,
средство управления переносом, реагирующее на управляющее воздействие для переноса, для выполнения операции передачи обслуживания для переноса выполнения рабочей нагрузки из исходного средства обработки на целевое средство обработки, причем исходным средством обработки является одно из первого средства обработки и второго средства обработки, а целевым средством обработки является другое из первого средства обработки и второго средства обработки,
причем средство управления переносом выполнено с возможностью, во время операции передачи обслуживания:
(i) обеспечивать предоставление исходным средством обработки своего текущего состояния архитектуры целевому средству обработки, причем текущим состоянием архитектуры является то состояние, которое не доступно из совместно используемого средства памяти, разделяемого между первым и вторым средством обработки, в момент инициирования операции передачи обслуживания, и которое является необходимым целевому средству обработки, чтобы успешно принять на себя выполнение рабочей нагрузки от исходного средства обработки, и
(ii) маскировать заранее определенную конкретную для процессора информацию о конфигурации от упомянутой по меньшей мере одной операционной системы, так что перенос рабочей нагрузки является прозрачным для упомянутой по меньшей мере одной операционной системы.
20. Способ функционирования устройства обработки данных, содержащего первую компоновку схем обработки для выполнения операций обработки данных и вторую компоновку схем обработки для выполнения операций обработки данных, причем первая компоновка схем обработки является архитектурно совместимой со второй компоновкой схем обработки, так что рабочая нагрузка, выполняемая устройством обработки данных, может выполняться или на первой компоновке схем обработки, или на второй компоновке схем обработки, причем упомянутая рабочая нагрузка содержит по меньшей мере одно приложение и по меньшей мере одну операционную систему для выполнения упомянутого по меньшей мере одного приложения, и причем первая компоновка схем обработки отличается от второй компоновки схем обработки с точки зрения микроархитектуры, так что производительность первой компоновки схем обработки отличается от производительности второй компоновки схем обработки, причем способ содержит этапы, на которых:
выполняют, в любой момент времени, рабочую нагрузку на одной из первой компоновки схем обработки и второй компоновки схем обработки,
выполняют, в ответ на управляющее воздействие для переноса, операцию передачи обслуживания для переноса выполнения рабочей нагрузки из исходной компоновки схем обработки на целевую компоновку схем обработки, причем исходной компоновкой схем обработки является одна из первой компоновки схем обработки и второй компоновки схем обработки, а целевой компоновкой схем обработки является другая из первой компоновки схем обработки и второй компоновки схем обработки,
во время операции передачи обслуживания:
(i) обеспечивают предоставление исходной компоновкой схем обработки своего текущего состояния архитектуры целевой компоновке схем обработки, причем текущим состоянием архитектуры является то состояние, которое не доступно из совместно используемой памяти, разделяемой между первой и второй компоновкой схем обработки, в момент инициирования операции передачи обслуживания, и которое является необходимым целевой компоновке схем обработки, чтобы успешно принять на себя выполнение рабочей нагрузки от исходной компоновки схем обработки, и
(ii) маскируют заранее определенную конкретную для процессора информацию о конфигурации процессора от упомянутой по меньшей мере одной операционной системы, так что передача рабочей нагрузки является прозрачной для упомянутой по меньшей мере одной операционной системы.