Representación de vídeo en 3D en Azure3D video rendering on Azure

La representación de vídeo en 3D es un proceso lento que requiere una cantidad de tiempo de la CPU importante para completarse.3D video rendering is a time consuming process that requires a significant amount of CPU time to complete. En una sola máquina, el proceso de generar un archivo de vídeo a partir de recursos estáticos puede tardar horas o incluso días según la longitud y complejidad del vídeo que se va a producir.On a single machine, the process of generating a video file from static assets can take hours or even days depending on the length and complexity of the video you are producing. Muchas compañías se decidirán por adquirir equipos de escritorio muy costosos para realizar estas tareas o por invertir en granjas de representación a las que puedan enviar los trabajos.Many companies will purchase either expensive high end desktop computers to perform these tasks, or invest in large render farms that they can submit jobs to. Sin embargo, si aprovecha las ventajas de Azure Batch, esta tecnología estará disponible cuando la necesite y se cerrará en caso contrario y todo ello sin ninguna inversión de capital.However, by taking advantage of Azure Batch, that power is available to you when you need it and shuts itself down when you don't, all without any capital investment.

El servicio Batch ofrece una experiencia coherente de administración y programación de trabajos, tanto si selecciona nodos de proceso de Windows Server como de Linux.Batch gives you a consistent management experience and job scheduling, whether you select Windows Server or Linux compute nodes. Con Batch, puede usar las aplicaciones de Windows o de Linux existentes, como AutoDesk Maya y Blender, para ejecutar trabajos de representación a gran escala en Azure.With Batch, you can use your existing Windows or Linux applications, including AutoDesk Maya and Blender, to run large-scale render jobs in Azure.

Casos de uso pertinentesRelevant use cases

Otros casos de uso pertinentes incluyen:Other relevant use cases include:

  • Modelado 3D3D modeling
  • Representación en Visual FX (VFX)Visual FX (VFX) rendering
  • Transcodificación de vídeoVideo transcoding
  • Procesamiento de imágenes, corrección del color y cambio de tamañoImage processing, color correction, and resizing

ArquitecturaArchitecture

Información general sobre la arquitectura de los componentes implicados en una solución HPC nativa en la nube con Azure Batch

En este escenario se muestra un flujo de trabajo que usa Azure Batch.This scenario shows a workflow that uses Azure Batch. El flujo de datos es el siguiente:The data flows as follows:

  1. Cargue los archivos de entrada y las aplicaciones que los procesarán en su cuenta de Azure Storage.Upload input files and the applications to process those files to your Azure Storage account.
  2. Cree un grupo de Batch de nodos de proceso en la cuenta de Batch, un trabajo para que ejecute la carga de trabajo en el grupo y tareas para ese trabajo.Create a Batch pool of compute nodes in your Batch account, a job to run the workload on the pool, and tasks in the job.
  3. Descargue los archivos de entrada y las aplicaciones en Batch.Download input files and the applications to Batch.
  4. Supervise la ejecución de las tareas.Monitor task execution.
  5. Cargue la salida de la tarea.Upload task output.
  6. Descargue los archivos de salida.Download output files.

Para simplificar este proceso, también puede usar los Complementos de batch para Maya y 3ds MaxTo simplify this process, you could also use the Batch Plugins for Maya and 3ds Max

ComponentesComponents

Azure Batch se basa en las siguientes tecnologías de Azure:Azure Batch builds on the following Azure technologies:

ConsideracionesConsiderations

Tamaños de máquina disponibles para Azure BatchMachine Sizes available for Azure Batch

Aunque la mayoría de los usuarios de representación elegirán recursos con una alta potencia de CPU, otras cargas de trabajo que usan conjuntos de escalado de máquinas virtuales pueden elegir las máquinas virtuales de forma diferente en función de diversos factores:While most rendering customers will choose resources with high CPU power, other workloads using virtual machine scale sets may choose VMs differently and will depend on a number of factors:

  • ¿Tiene la aplicación que se va a ejecutar un límite de memoria?Is the application being run memory bound?
  • ¿Necesita la aplicación usar GPU?Does the application need to use GPUs?
  • ¿Son los tipos de trabajo lamentablemente paralelos o requieren conectividad InfiniBand para trabajos estrechamente acoplados?Are the job types embarrassingly parallel or require infiniband connectivity for tightly coupled jobs?
  • Requieren un acceso de E/S rápido al almacenamiento de los nodos de proceso.Require fast I/O to access storage on the compute Nodes.

Azure tiene una amplia gama de tamaños de máquina virtual que pueden abordar cada uno de los requisitos de la aplicación anteriores, algunos son específicos de HPC, pero incluso los tamaños más pequeños se pueden usar para proporcionar una implementación de cuadrícula efectiva:Azure has a wide range of VM sizes that can address each and every one of the above application requirements, some are specific to HPC, but even the smallest sizes can be used to provide an effective grid implementation:

  • Tamaños de máquina virtual de HPC Debido a la naturaleza del límite de la CPU de la representación, Microsoft suele sugerir las máquinas virtuales de la serie H de Azure.HPC VM sizes Due to the CPU bound nature of rendering, Microsoft typically suggests the Azure H-Series VMs. Estas se crean específicamente para necesidades informáticas de alto nivel, tienen tamaños de vCPU de 8 y 16 núcleos disponibles y ofrecen memoria DDR4, almacenamiento temporal SSD y tecnología Haswell E5 Intel.This type of VM is built specifically for high end computational needs, they have 8 and 16 core vCPU sizes available, and features DDR4 memory, SSD temporary storage, and Haswell E5 Intel technology.
  • Tamaños de máquina virtual de GPU Los tamaños de máquina virtual optimizada para GPU son máquinas virtuales especializadas disponibles con una o varias GPU de NVIDIA.GPU VM sizes GPU optimized VM sizes are specialized virtual machines available with single or multiple NVIDIA GPUs. Estos tamaños están diseñados para cargas de trabajo de proceso intensivo, uso intensivo de gráficos y visualización.These sizes are designed for compute-intensive, graphics-intensive, and visualization workloads.
  • Los tamaños NC, NCv2, NCv3 y ND están optimizados para las aplicaciones de uso intensivo de procesos y red, así como algoritmos, incluidas aplicaciones basadas en CUDA y OpenCL y simulaciones de inteligencia artificial y aprendizaje profundo.NC, NCv2, NCv3, and ND sizes are optimized for compute-intensive and network-intensive applications and algorithms, including CUDA and OpenCL-based applications and simulations, AI, and Deep Learning. Los tamaños de NV están optimizados y diseñados para la visualización remota, streaming, juegos, codificación y escenarios VDI mediante marcos como OpenGL y DirectX.NV sizes are optimized and designed for remote visualization, streaming, gaming, encoding, and VDI scenarios using frameworks such as OpenGL and DirectX.
  • Tamaños de máquina virtual optimizada para memoria Cuando se necesita más memoria, los tamaños de máquina virtual optimizada en memoria ofrecen una mayor proporción de memoria a CPU.Memory optimized VM sizes When more memory is required, the memory optimized VM sizes offer a higher memory-to-CPU ratio.
  • Tamaños de máquina virtual de uso general Los tamaños de máquina virtual de uso general también están disponibles y proporcionan un equilibrio entre la CPU y la memoria.General purposes VM sizes General-purpose VM sizes are also available and provide balanced CPU-to-memory ratio.

AlternativasAlternatives

Si necesita más control sobre su entorno de representación en Azure o necesita una implementación híbrida, CycleCloud Computing puede ayudar a orquestar una cuadrícula de IaaS en la nube.If you require more control over your rendering environment in Azure or need a hybrid implementation, then CycleCloud computing can help orchestrate an IaaS grid in the cloud. El uso de las mismas tecnologías de Azure subyacentes igual que Azure Batch hace que la compilación y mantenimiento de una cuadrícula de IaaS sea un proceso eficiente.Using the same underlying Azure technologies as Azure Batch, it makes building and maintaining an IaaS grid an efficient process. Para más información y para conocer los principios de diseño, use el siguiente vínculo:To find out more and learn about the design principles use the following link:

Para obtener información general completa de todas las soluciones de HPC que están disponibles en Azure, consulte el artículo sobre las soluciones de HPC, Batch y Big Compute con máquinas virtuales de Azure .For a complete overview of all the HPC solutions that are available to you in Azure, see the article HPC, Batch, and Big Compute solutions using Azure VMs

DisponibilidadAvailability

La supervisión de los componentes de Azure Batch se puede realizar con diferentes servicios, herramientas y API.Monitoring of the Azure Batch components is available through a range of services, tools, and APIs. La supervisión se describe con más detalle en el artículo supervisión de soluciones de Batch .Monitoring is discussed further in the Monitor Batch solutions article.

EscalabilidadScalability

Los grupos de una cuenta de Azure Batch se pueden escalar de forma manual o automática mediante una fórmula basada en métricas de Azure Batch.Pools within an Azure Batch account can either scale through manual intervention or, by using a formula based on Azure Batch metrics, be scaled automatically. Para obtener más información sobre la escalabilidad, vea el artículo creación de una fórmula de escalado automático para escalar nodos en un grupo de Batch.For more information on scalability, see the article Create an automatic scaling formula for scaling nodes in a Batch pool.

SeguridadSecurity

Para obtener instrucciones generales sobre el diseño de soluciones seguras, consulte la documentación de seguridad de Azure.For general guidance on designing secure solutions, see the Azure Security Documentation.

ResistenciaResiliency

Aunque actualmente no hay ninguna funcionalidad de conmutación por error en Azure Batch, se recomienda usar los siguientes pasos para garantizar la disponibilidad en el caso de una interrupción imprevista:While there is currently no failover capability in Azure Batch, we recommend using the following steps to ensure availability if there is an unplanned outage:

  • Cree una cuenta de Azure Batch en una ubicación alternativa de Azure con una cuenta de almacenamiento alternativaCreate an Azure Batch account in an alternate Azure location with an alternate Storage Account
  • Cree los mismos grupos de nodos con el mismo nombre, con cero nodos asignadosCreate the same node pools with the same name, with zero nodes allocated
  • Asegúrese de que se han creado y actualizado las aplicaciones en la cuenta de almacenamiento alternativaEnsure Applications are created and updated to the alternate Storage Account
  • Cargue los archivos de entrada y envíe trabajos a la cuenta de Azure Batch alternativaUpload input files and submit jobs to the alternate Azure Batch account

Implementación del escenarioDeploy the scenario

Creación manual de una cuenta y de grupos de Azure BatchCreate an Azure Batch account and pools manually

En este escenario se muestra cómo funciona Azure Batch y un ejemplo de Azure Batch Labs como solución de SaaS que se puede desarrollar para los clientes propios:This scenario demonstrates how Azure Batch works while showcasing Azure Batch Labs as an example SaaS solution that can be developed for your own customers:

Azure Batch MasterclassAzure Batch Masterclass

Implementación de los componentesDeploy the components

La plantilla implementará:The template will deploy:

  • Una nueva cuenta de Azure BatchA new Azure Batch account
  • Una cuenta de almacenamientoA storage account
  • Un grupo de nodos asociado con la cuenta de BatchA node pool associated with the batch account
  • El grupo de nodos se configurará para usar máquinas virtuales A2 v2 con imágenes de Canonical UbuntuThe node pool will be configured to use A2 v2 VMs with Canonical Ubuntu images
  • El grupo de nodos contendrá inicialmente cero máquinas virtuales y necesitará escalado manual para agregar máquinas virtualesThe node pool will contain zero VMs initially and will require you to manually scale to add VMs

Haga clic en el vínculo siguiente para implementar la solución.Click the link below to deploy the solution.

Implementación en AzureDeploy to Azure

Más información acerca de las plantillas de Administrador de recursosLearn more about Resource Manager templates

PreciosPricing

El costo de usar Azure Batch dependerá de los tamaños de máquina virtual que se usen para los grupos y de cuánto tiempo están estas máquinas virtuales asignadas y en ejecución; no hay ningún costo asociado con la creación de una cuenta de Azure Batch.The cost of using Azure Batch will depend on the VM sizes that are used for the pools and how long these VMs are allocated and running, there is no cost associated with an Azure Batch account creation. También se deben tener en cuenta el almacenamiento y la salida de datos, ya que estos supondrán costos adicionales.Storage and data egress should be taken into account as these will apply additional costs.

Los siguientes son ejemplos de costos en los que podría incurrir un trabajo que se completa en 8 horas y que utiliza un número variable de servidores:The following are examples of costs that could be incurred for a job that completes in 8 hours using a different number of servers:

  • 100 máquinas virtuales de CPU de alto rendimiento: Costo estimado100 High-Performance CPU VMs: Cost Estimate

    100 x H16m (16 núcleos, 225 GB de RAM, Premium Storage de 512 GB), almacenamiento de blobs de 2 TB, salida de 1 TB100 x H16m (16 cores, 225 GB RAM, Premium Storage 512 GB), 2 TB Blob Storage, 1-TB egress

  • 50 máquinas virtuales de CPU de alto rendimiento: Costo estimado50 High-Performance CPU VMs: Cost Estimate

    50 x H16m (16 núcleos, 225 GB de RAM, Premium Storage de 512 GB), almacenamiento de blobs de 2 TB, salida de 1 TB50 x H16m (16 cores, 225 GB RAM, Premium Storage 512 GB), 2 TB Blob Storage, 1-TB egress

  • 10 máquinas virtuales de CPU de alto rendimiento: Costo estimado10 High-Performance CPU VMs: Cost Estimate

    10 x H16m (16 núcleos, 225 GB de RAM, Premium Storage de 512 GB), almacenamiento de blobs de 2 TB, salida de 1 TB10 x H16m (16 cores, 225 GB RAM, Premium Storage 512 GB), 2 TB Blob Storage, 1-TB egress

Precios de las máquinas virtuales de prioridad bajaPricing for low-priority VMs

Azure Batch también admite el uso de máquinas virtuales de prioridad baja en los grupos de nodos, lo que podría suponer un ahorro de costos considerable.Azure Batch also supports the use of low-priority VMs in the node pools, which can potentially provide a substantial cost saving. Para obtener más información, incluida una comparación de precios entre máquinas virtuales estándar y máquinas virtuales de prioridad baja, consulte precios de Azure batch.For more information, including a price comparison between standard VMs and low-priority VMs, see Azure Batch Pricing.

Nota

Las máquinas virtuales de prioridad baja solo son adecuadas para determinadas aplicaciones y cargas de trabajo.Low-priority VMs are only suitable for certain applications and workloads.

Información general de Azure BatchAzure Batch Overview

Azure Batch documentaciónAzure Batch Documentation

Usar contenedores en Azure BatchUsing containers on Azure Batch