August 3, 2014

Everyone wants to go fast. Speed is everything. A while back, I posted an article with a collection of tips to help make Adobe Illustrator (and those who use it) perform at faster speeds. Continuing my use of totally awesome movies (I used Top Gun for the previous blog post), I'm relying on Keanu Reaves and Sandra Bullock to kick this blog post into an explosion of Illustrator goodness. OK, I think I'm reaching too far here... let me spare you and get to the details.

In past years, you've certainly heard that great strides have been made in speeding up performance in applications like Photoshop, Premiere Pro, and After Effects. The pixel-driven apps have seen these great performance gains because of how they rely on specific hardware found on modern graphics cards installed on your computer. A computer uses a CPU (Central Processing Unit) to function. When you hear of "multicore" or "multiprocessor" machines, it refers to a computer that has more than one CPU (and software distributes tasks to multiple processors when possible to reduce computation time). Graphics cards, however, may also feature something called a GPU (Graphics Processing Unit). This GPU, which contains its own memory, is optimized to draw graphics on your computer screen. If software (like Photoshop for example) is programmed to send tasks to both the CPU and the GPU, you can see tremendous gains in performance.

Sadly, while all of its friends (Photoshop, After Effects, etc) zip by in fancy sports cars, Illustrator has struggled to use its legs and feet to keep its Flintstones car on the road. Why? Primarily because as a vector-based application, Illustrator can't take advantage of the GPU which is primarily optimized for processing pixel-based information.

But that's changing.

NVIDIA, a company that makes high-performance video cards has been working closely with the Illustrator development team at Adobe to bring GPU support to Illustrator. In the latest update to Illustrator (the 2014 edition of Illustrator CC), Adobe has added support for some of the newer NVIDIA video cards (primarily in their Quadro and GeForce series). The GPU on these cards are able to take advantage of something called NV Path Rendering, which is a technology built into OpenGL that supports vector-based artwork and rendering. Using these NVIDIA cards with Adobe Illustrator can translate into screen redraws, panning, and zooming that averages 10x faster in performance (in many cases far exceeding that number).

At the time I'm writing this, GPU support is available only using certain NVIDIA cards, and only on Windows computers. Why not Mac? Because the NV Path Rendering technology uses parts of OpenGL that are not supported by Apple (yet). Both Adobe and NVIDIA are still working very closely together to find ways to bring GPU support to the Mac platform, and have both committed to doing what they can to support their Mac user base (I have spoken to folks on both side who are very much aware of how welcome the Mac support would be).

That being said, if you regularly work with incredibly complex Illustrator files and suffer from performance issues, and you are only able to work on a Mac, you might think about this: Subscribers to Creative Cloud are able to install and run two copies of software at any given time. And one can be running on Mac while the other on Windows. Assuming you have a supported NVIDIA graphics card on your Mac, you can install Apple's Bootcamp, Microsoft Windows, and Illustrator for Windows, at which point you'll be able to take advantage of GPU performance.

Of course, if you're in the market for building the fastest possible machine for working with Illustrator, the good news is that you now have an option. Hopefully, these options will only continue to improve for all of us, but for now, Papa's got a brand new ride.