¿Se puede acelerar el procesamiento por lotes en Adobe Illustrator utilizando múltiples núcleos de la CPU o GPU?

Los gráficos vectoriales tienen sus ventajas y desventajas. Esto, lamentablemente, es uno de los inconvenientes. Esto se debe a que los gráficos vectoriales se dibujan en un orden de apilamiento lineal.

Tome un ejemplo simple: tome una sola capa con un solo rectángulo. Duplica esa capa 100 veces. Aunque solo se ve la capa superior, el ilustrador dibuja cada rectángulo desde la capa más inferior hasta la superior. Illustrator no puede dibujar la capa 50 hasta que las 49 anteriores estén listas. Esto es diferente al photoshop que solo se refiere a qué píxeles son finalmente visibles.

Extendiendo el concepto aún más. Digamos que tienes 4 núcleos. Puede tomar un archivo de Photoshop y dividirlo en una cuadrícula de 4 áreas y decirle a cada núcleo que dibuje 1 área, todo al mismo tiempo. Esto se debe a que un píxel en una cuadrícula no tiene ningún impacto en los píxeles en otra área de la cuadrícula. Como puede dividir una foto en múltiples áreas independientes , puede asignar múltiples núcleos para representar cada área simultáneamente.

Sin embargo, en Illustrator, cada objeto se dibuja en el orden en que aparece en el orden de apilamiento. Entonces, si divido una imagen en una cuadrícula de cuatro, todavía tengo que construir todo el objeto de arte por objeto, sin importar en qué cuadrícula se encuentre. Lo que significa que los 4 núcleos aún tendrían que esperar hasta que se dibujaran todos los objetos antes de renderizar.

Lo que esto significa es que solo algunos tipos de funciones pueden admitir la funcionalidad multinúcleo en Illustrator. Por ejemplo, si imprime un archivo grande, el ilustrador entregará la cola de impresión a otro núcleo y lo regresará a su documento para continuar trabajando inmediatamente. Pero lamentablemente, esto no es posible para acelerar tareas lineales como dibujar / renderizar arte.