En el caso de los tipos de máquinas que pueden ejecutarse en diferentes plataformas de CPU, en esta página se explica cómo crear o actualizar una instancia de Compute Engine para usar un nivel de compatibilidad de CPU especificado en lugar del predeterminado.
Los centros de datos de Google ofrecen diferentes generaciones de procesadores de CPU. Estos procesadores admiten funciones incrementales, como las extensiones vectoriales avanzadas, por ejemplo, AVX2 y AVX-512. Además, algunas funciones fundamentales, como la velocidad de reloj, las divisiones de NUMA y el tiempo de búsqueda de acceso a la memoria pueden variar entre los procesadores de CPU. El término plataforma de CPU hace referencia a esta configuración basada en la CPU.
Cada serie de máquinas funciona con uno o más procesadores de CPU. Por ejemplo, las instancias C4 pueden ejecutarse en CPU Intel Emerald Rapids o Granite Rapids. Si una serie de máquinas admite varias CPU, puedes elegir una plataforma de CPU mínima cuando crees una instancia. El valor que puedes establecer para la CPU mínima depende del tipo de máquina, y la región y la zona que elijas para tus instancias de procesamiento.
Elegir una CPU específica es útil si tu carga de trabajo es sensible a las características específicas de la CPU, como los conjuntos de instrucciones (AVX2 en lugar de AVX-512), los tamaños de caché o las velocidades de reloj, que pueden variar entre las plataformas de CPU.
- Puedes establecer la CPU mínima en un procesador más reciente para aprovechar una frecuencia de reloj más alta.
- Puedes establecer la CPU mínima en un procesador más antiguo para garantizar la compatibilidad con tus aplicaciones.
Sin embargo, usar el parámetro de configuración de CPU mínima puede limitar las zonas en las que se pueden ejecutar tus instancias de procesamiento.
Antes de comenzar
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a los servicios y las APIs de Cloud de Confiance by S3NS . Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña que corresponda a la forma en que planeas usar las muestras de esta página:
Console
Cuando usas la consola de Cloud de Confiance para acceder a los servicios y las APIs de Cloud de Confiance by S3NS , no necesitas configurar la autenticación.
gcloud
-
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada. Después de acceder, inicializa Google Cloud CLI con el siguiente comando:
gcloud init
-
- Configura una región y una zona predeterminadas.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Cloud de Confiance .
Roles y permisos requeridos
Para obtener los permisos que necesitas para cambiar la plataforma de CPU mínima, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto:
-
Administrador de instancias de Compute (v1) (
roles/compute.instanceAdmin.v1) -
Para conectarte a una instancia de procesamiento que puede ejecutarse como una cuenta de servicio:
Usuario de cuenta de servicio (v1) (rol
roles/iam.serviceAccountUser)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.
Cuándo seleccionar una plataforma de CPU mínima
Cada zona de Compute Engine tiene una CPU predeterminada para cada serie de máquinas. Si no especificas un valor para la CPU mínima de tu instancia, la instancia de procesamiento usará la CPU predeterminada asignada al tipo de máquina y la zona.
Google recomienda elegir un nivel de compatibilidad de la plataforma de CPU solo en los siguientes casos:
- Rendimiento: Si un procesador específico le da a tu carga de trabajo un aumento de velocidad significativo o tiene funciones como AVX-512 que tu código necesita
- Compatibilidad: Si tu instancia de procesamiento requiere un sistema operativo, un conjunto de instrucciones o bibliotecas determinados que no son compatibles con una plataforma de CPU más reciente
- Reservas: Si usas reservas, tu instancia de procesamiento debe usar la misma plataforma de CPU que la reserva.
Usa la plataforma de CPU predeterminada
Si no especificas una CPU mínima para tu instancia, se establecerá en AUTOMATIC. Esto significa que la instancia usa la plataforma de CPU predeterminada para el tipo de máquina.
En ocasiones, Google actualiza una plataforma de CPU para un tipo de máquina y una zona.
Cómo funciona la selección de una plataforma de CPU mínima
Cuando especificas un valor para la CPU mínima, Compute Engine proporciona esa plataforma de CPU para que la use tu instancia. Tu instancia de procesamiento seguirá usando esa plataforma de CPU, a menos que la cambies.
Tu instancia de procesamiento usa la plataforma de CPU especificada incluso después de la migración en vivo durante una operación de mantenimiento.
Limitaciones
- Cada región y zona admite varias plataformas de CPU, pero una región o zona podría no ofrecer todas las plataformas de CPU.
- No puedes especificar una plataforma de CPU mínima para las instancias de procesamiento que se ejecutan en nodos de usuario único.
- No puedes seleccionar una plataforma de CPU mínima para ninguna instancia de máquina virtual (VM) de E2.
- No puedes especificar una plataforma de CPU mínima para las instancias de VM que se crearon con tipos de máquina de uso general y con núcleo compartido.
Disponibilidad de las plataformas de CPU
La disponibilidad de las plataformas de CPU varía entre zonas y se basa en el hardware y la serie de máquinas que está disponible en cada zona. En la siguiente lista, se muestran las plataformas de CPU mínimas compatibles y la sintaxis válida para cada una:
- 6ª generación: procesadores Intel Xeon (Granite Rapids):
"Intel Granite Rapids" - 5ª generación: procesadores Intel Xeon (Emerald Rapids):
"Intel Emerald Rapids" - Cuarta generación: Procesadores Intel Xeon (Sapphire Rapids):
"Intel Sapphire Rapids" - Tercera generación: Procesadores Intel Xeon (Ice Lake):
"Intel Ice Lake" - Segunda generación: procesadores Intel Xeon (Cascade Lake):
"Intel Cascade Lake" - Primera generación: procesadores Intel Xeon (Skylake):
"Intel Skylake" - Procesadores Intel Xeon E5 v4 (Broadwell):
"Intel Broadwell" - Procesadores Intel Xeon E5 v3 (Haswell):
"Intel Haswell" - Procesadores Intel Xeon E5 v2 (Ivy Bridge):
"Intel Ivy Bridge" - Procesadores Intel Xeon E5 (Sandy Bridge):
"Intel Sandy Bridge" - Quinta generación: Procesadores AMD EPYC Turin:
"AMD Turin" - Cuarta generación: Procesadores AMD EPYC Genoa:
"AMD Genoa" - Tercera generación: Procesadores AMD EPYC Milan:
"AMD Milan"
Visualiza las CPUs disponibles por zona
Algunas regiones y zonas admiten varias plataformas de CPU para la misma serie de máquinas. Puedes verificar qué CPU están disponibles en una zona con gcloud CLI o REST.
Si usas nodos de usuario único, cada nodo usa la plataforma de CPU correspondiente al tipo de nodo que definiste en la plantilla de nodo.
gcloud
Para ver las plataformas de CPU que están disponibles en tu zona, usa el comando
gcloud compute zones describe:gcloud compute zones describe ZONE
Reemplaza
ZONEpor el nombre de la zona a fin de verificar las plataformas de CPU disponibles, por ejemplo,europe-west10-a.En el siguiente resultado de este comando, se muestran las plataformas de CPU para la zona
europe-west10-a:gcloud compute zones describe europe-west10-a availableCpuPlatforms: - Intel Broadwell - Intel Cascade Lake - Intel Ice Lake - AMD Milan - Intel Skylake ...
REST
Realiza una
GETsolicitud a la zona que consideras:GET https://compute.s3nsapis.fr/compute/v1/projects/myproject/zones/ZONE
Reemplaza
ZONEpor el nombre de la zona a fin de verificar las plataformas de CPU disponibles.En el siguiente resultado de este comando, se muestran las plataformas de CPU compatibles para una zona:
{ "kind": "compute#zone", "id": "2210", "creationTimestamp": "1969-12-31T09:30:55.189-07:00", "name": "europe-west10-a", "description": "europe-west10-a", "status": "UP", "region": "https://www.s3nsapis.fr/compute/v1/projects/myproject/regions/europe-west10-a", "selfLink": "https://www.s3nsapis.fr/compute/v1/projects/myproject/zones/europe-west10-a", "availableCpuPlatforms": [ "Intel Broadwell", "Intel Cascade Lake", "Intel Ice Lake", "AMD Milan", "Intel Skylake" ], "supportsPzs": true }
Cambios en las plataformas de CPU predeterminadas
En ocasiones, Google actualiza la plataforma de CPU predeterminada para una serie de máquinas en una zona. Cuando esto sucede, Google te notifica con un cronograma y las instrucciones para migrar a la nueva plataforma.
Si especificaste una plataforma de CPU mínima para tu instancia de procesamiento, el cambio a la plataforma de CPU predeterminada no tendrá ningún impacto en tu instancia. Compute Engine nunca proporciona una plataforma de CPU que sea más antigua que la especificada por la propiedad de CPU mínima para una instancia. Sin embargo, si no especificas un valor para la CPU mínima, la instancia puede ejecutarse en una plataforma de CPU más reciente si la plataforma de CPU predeterminada no está disponible en la zona en la que se encuentra la instancia.
Si Compute Engine mueve tu instancia de procesamiento a una plataforma de CPU más reciente, el costo de la instancia de procesamiento no cambia.
Si cambia la plataforma de CPU predeterminada para una serie de máquinas, puedes hacer lo siguiente:
- Establece la propiedad de CPU mínima para tu instancia si deseas mantener el nivel de compatibilidad de la plataforma de CPU predeterminada anterior.
- Deja la propiedad de CPU mínima establecida en
AUTOMATICy permite que tu instancia de procesamiento use la plataforma de CPU más reciente deteniendo y reiniciando la instancia.
Elige una plataforma de CPU para una instancia nueva
Cuando creas una instancia de procesamiento, si la serie de máquinas admite más de una plataforma de CPU, puedes usar la propiedad de CPU mínima para especificar la plataforma de CPU que deseas que use la instancia.
Console
En la consola de Cloud de Confiance , ve a la página Crear una instancia.
En la sección Configuración de la máquina, expande la sección Configuración avanzada.
En la lista Plataforma de CPU, selecciona una plataforma para la CPU de las instancias.
Continúa con el resto del proceso de creación de la instancia.
gcloud
Para crear una instancia de procesamiento nueva que use una plataforma de CPU mínima, usa el comando
gcloud compute instances createy proporciona la marca--min-cpu-platform:gcloud compute instances create INSTANCE_NAME \ --zone=ZONE \ --min-cpu-platform="PLATFORM"Reemplaza lo siguiente:
INSTANCE_NAME: es el nombre de la instancia que deseas crear.ZONE: es el nombre de la zona en la que deseas crear tu instancia, por ejemplo,europe-west1-b.PLATFORM: es el nombre descriptivo de la plataforma de CPU mínima que deseas que use la instancia, por ejemplo,Intel Sandy Bridge.Si quieres borrar la especificación de plataforma de CPU mínima, reemplaza
PLATFORMporAUTOMATIC.Para verificar qué plataformas de CPU están disponibles en una zona, consulta Cómo ver las plataformas de CPU disponibles por zona.
REST
Usa el
instances.insertmétodo y asegúrate de incluir la propiedadminCpuPlatformcomo parte del cuerpo de la solicitud.Por ejemplo, el cuerpo de una solicitud puede verse de la siguiente manera:
"name": "INSTANCE_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "minCpuPlatform": "PLATFORM", "networkInterfaces": [{ "accessConfigs": [{ "type": "ONE_TO_ONE_NAT", "name": "External NAT" }], "network": "global/networks/default" }], "disks": [{ "autoDelete": "true", "boot": "true", "type": "PERSISTENT", "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" } }]Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la nueva instancia de procesamiento.ZONE: Es el nombre de la zona en la que deseas crear tu instancia de procesamiento, por ejemplo,europe-west1-b.MACHINE_TYPE: Es el tipo de máquina de la instancia de procesamiento nueva.PLATFORM: es el nombre descriptivo de la plataforma de CPU mínima que deseas que use la instancia, por ejemplo,Intel Ivy Bridge.Para borrar la especificación de plataforma de CPU mínima, reemplaza
PLATFORMporAUTOMATIC.Para verificar qué plataformas de CPU están disponibles en una zona, consulta Cómo ver las plataformas de CPU disponibles por zona.
IMAGE_PROJECT: es el proyecto de imagen de la familia de imágenesIMAGE_FAMILY: Es la familia de imágenes de la imagen que se usará para crear la instancia de procesamiento.
Cómo cambiar la CPU de una instancia existente
Para cambiar la CPU de una instancia de procesamiento existente, primero debes detener la instancia.
Console
Ve a la página Instancias de VM.
Si se te solicita, selecciona el proyecto y haz clic en Continuar.
Selecciona la instancia de procesamiento que deseas cambiar.
Haz clic en Detener para detener la instancia de procesamiento. Si no hay una opción de Detener, haz clic en Más acciones > Detener.
Haz clic en Editar.
En la sección Configuración de máquina, haz clic en Configuraciones avanzadas.
En el menú desplegable Plataforma de CPU, selecciona una opción.
Guarda los cambios.
Selecciona la instancia de procesamiento que cambiaste.
Haz clic en Iniciar/Reanudar.
gcloud
Para detener una instancia de procesamiento, usa el comando
gcloud compute instances stop:gcloud compute instances stop INSTANCE_NAME --zone=ZONEReemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento para la que deseas especificar una plataforma de CPU mínima.ZONE: Es el nombre de la zona en la que creaste tu instancia de procesamiento, por ejemplo,europe-west1-b.
Para especificar una plataforma de CPU mínima, usa el
gcloud compute instances updatecomando y proporciona la marca--min-cpu-platform:gcloud compute instances update INSTANCE_NAME \ --zone=ZONE \ --min-cpu-platform="PLATFORM"Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento que se actualizará.ZONE: Es el nombre de la zona en la que creaste tu instancia de procesamiento.PLATFORM: Es el nombre descriptivo de la plataforma de CPU que deseas que use la instancia de procesamiento, por ejemplo,Intel Granite Rapids.
Para iniciar la instancia de procesamiento actualizada, usa el comando
gcloud compute instances start:gcloud compute instances start INSTANCE_NAME --zone=ZONE
REST
Para detener una instancia de procesamiento, crea una solicitud
POSTcon el métodoinstances.stop:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop
Reemplaza lo siguiente:
PROJECT_ID: el ID del proyectoZONE: Es la zona en la que se encuentra tu instancia de procesamiento.INSTANCE_NAME: Es el nombre de la instancia de procesamiento para la que deseas especificar una plataforma de CPU mínima.
Para establecer la plataforma de CPU mínima, crea una solicitud
POSTpara elsetMinCpuPlatformmétodo y configura la propiedadminCpuPlatformen el cuerpo de la solicitud:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setMinCpuPlatform { "minCpuPlatform": "PLATFORM" }Reemplaza
PLATFORMpor el nombre descriptivo de la plataforma de CPU mínima que deseas que use la instancia de procesamiento, por ejemplo,Intel Skylake.Para reiniciar la instancia de procesamiento, crea una solicitud
POSTcon el métodoinstances.start:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/start
Cómo restablecer la CPU predeterminada
Para volver a usar la CPU predeterminada, debes detener la instancia de procesamiento si está en ejecución.
Console
Ve a la página Instancias de VM.
Si se te solicita, selecciona el proyecto y haz clic en Continuar.
Selecciona la instancia que deseas cambiar.
Haz clic en Detener.
Para editar la instancia, haz clic en Editar.
En la sección Configuración de máquina, haz clic en Configuraciones avanzadas.
Cambia la opción Platform de CPU a Automático.
Selecciona la instancia que cambiaste.
Haz clic en Iniciar/Reanudar.
gcloud
Para detener una instancia de procesamiento, usa el comando
gcloud compute instances stop:gcloud compute instances stop INSTANCE_NAME
Reemplaza
INSTANCE_NAMEpor el nombre de la instancia de procesamiento que deseas cambiar.Para restablecer la plataforma de CPU mínima, usa el comando
gcloud compute instances updatey establece la marca--min-cpu-platformenAUTOMATIC:gcloud compute instances update INSTANCE_NAME \ --min-cpu-platform="AUTOMATIC"Para iniciar la instancia de procesamiento actualizada, usa el comando
gcloud compute instances start:gcloud compute instances start INSTANCE_NAME
REST
Para detener una instancia de procesamiento, crea una solicitud
POSTcon el métodoinstances.stop:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop
Reemplaza lo siguiente:
PROJECT_ID: el ID del proyectoZONE: La zona en la que se encuentra tu instancia de procesamientoINSTANCE_NAME: Es el nombre de la instancia de procesamiento que deseas cambiar.
Para restablecer la plataforma de CPU mínima, realiza una
POSTsolicitud alsetMinCpuPlatformmétodo. En el cuerpo de la solicitud, establece el valor de la propiedadminCpuPlatformenAUTOMATIC.POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setMinCpuPlatform { "minCpuPlatform": "AUTOMATIC" }Para reiniciar la instancia actualizada, crea una solicitud
POSTcon el métodoinstances.start:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/start
Usa un nivel de compatibilidad de la plataforma de CPU en plantillas de instancias
Si usas grupos de instancias administrados, puedes establecer un nivel de compatibilidad de la plataforma de CPU para todas las instancias de procesamiento del grupo.
Para ello, crea una plantilla de instancias y configura la propiedad minCpuPlatform.
Console
Ve a la página Plantillas de instancias.
Si se te solicita, selecciona el proyecto y haz clic en Continuar.
Haz clic en Crear plantilla de instancias.
En la sección Configuración de máquina, haz clic en Configuraciones avanzadas.
En el menú desplegable Plataforma de CPU, selecciona una opción.
Continúa con el proceso de creación de plantillas de instancias.
gcloud
Cuando crees una plantilla de instancias mediante el comando
gcloud compute instance-templates create, proporciona la marca--min-cpu-platform:gcloud compute instance-templates create TEMPLATE_NAME \ --min-cpu-platform="PLATFORM"Reemplaza lo siguiente:
TEMPLATE_NAME: es el nombre de la plantilla de instancias.PLATFORM: es el nombre descriptivo de la plataforma de CPU mínima que deseas que use la instancia, por ejemplo,Intel Skylake.
REST
Agrega
minCpuPlatformcomo parte de tu solicitud para crear una nueva plantilla de instancias mediante elinstanceTemplates.insertmétodo.Por ejemplo, la siguiente plantilla de instancias contiene los campos obligatorios mínimos para crear una plantilla nueva con la adición de la propiedad
minCpuPlatform:{ "name": "example-template", "properties": { "machineType": "zones/us-central1-a/machineTypes/n2d-standard-2", "minCpuPlatform": "AMD Milan", "networkInterfaces": [ { "network": "global/networks/default" } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-11" } } ] } }
¿Qué sigue?
- Obtén una lista de las plataformas de CPU en Compute Engine.
- Cambia el tipo de máquina para una instancia de procesamiento.
- Obtén más información sobre las regiones y zonas.
- Crea y, luego, inicia instancias de Windows Server o SQL Server.