How to enable cuda nvidia in new drivers. Enabling CUDA acceleration in Premiere CS5. What gives GPU acceleration

The Adobe Mercury Playback engine at the heart of Premiere CS5 only supports CUDA acceleration on a handful of Quadro and GeForce GTX 285 graphics cards. However, the definition of video card support is done by simply comparing the name to the list, and the list can be changed to add support for other NVIDIA-based video cards.

To add support for CUDA acceleration for a video card, make sure the following conditions are met:

  • The full version of Adobe Premiere CS5 is used. The trial version is not supported.
  • The graphics processor of the video card has a CUDA compatibility level of 1.1 or higher. G80 based graphics cards are only 1.0 level and are not suitable for the Mercury Engine.
  • The video card has at least 896 MB of video memory. Although only 765 MB is required to enable acceleration, this memory must be fully available to the application, and part of the video memory is always used for servicing the Windows graphical interface and exchange with the driver, so with a card with 768 MB of video memory, the application will have access to less than 765 MB and the acceleration will not work will be.
  • Installed NVIDIA driver version 197.45 or later.

Follow these steps:

  1. Run Windows Command Prompt (cmd.exe) as administrator. Use cd to navigate to the folder where Premiere is installed (usually C: \ Program Files \ Adobe \ Adobe Premiere Pro CS5).
  2. Run the GPUSniffer.exe command
  3. Examine the output of the program carefully. At the end of it there should be a line “ CUDA Device # 0 not chosen because it did not match the named list of cards". If another reason is indicated (" because 765MB are required, and XXXMB are present», « because CUDA version 1.0 is not supported"), It means the video card is not supported, or the NVIDIA driver is not installed correctly, uninstall and install the new version of the driver. Remember also the line like “ Name: GeForce XXXXXX Compute capability: 1.3", GeForce XXXXXX is the name of the card, under which it will need to be added to the list.
  4. Execute the command notepad.exe cuda_supported_cards.txt
  5. In Notepad, add the last line of the map name that you learned in step 3 and save the file.
  6. Run the GPUSniffer.exe command again. Review the output and make sure that the line “CUDA Device # 0 supported” appears at the end.
  7. Launch Adobe Premiere. Create a new project and go to its properties. On the Video Rendering and Playback tab, change Mercury Playback Engine Software Only to Mercury Playback Engine GPU Acceleration.

Consider the following limitations of CUDA hardware acceleration in Premiere:

  • Mercury Playback does not speed up video encoding / decoding - this is the job of the codec. Simultaneous work on a project and export of a project with a codec that also uses CUDA acceleration can lead to unpredictable results.
  • Not all effects are accelerated.
  • Acceleration works correctly only for the first three layers, subsequent layers can be processed in hardware only partially and image artifacts are possible.
  • The limiting resolution of the processed video and the number of layers depend on the amount of video memory. It is recommended to enable the CUDA acceleration function only for video cards with more than 1 GB memory capacity.

Oddly enough, most of the questions are about the cheapest video cards. Of course, it is more advisable to buy an Adobe-certified video card, as their engineer wrote in his blog, the choice of video cards is limited, since they did not want the support service to be inundated with questions about video cards, as is the case with After Effects. Of course, it makes more sense to support professional cards with a reference design. But as we can see, the list is expanding, and besides the G200 and Fermi chipsets, the G92 chipset (Quadro FX 3700M and Quadro FX 3800M) is officially supported for laptops. Since starting with the Adobe Premiere Pro CS5 5.0.2 update, the Mercury Playback Engine (MPE) has been optimized for video cards with the Fermi architecture, it was decided to buy the cheapest video card in the nearest store with only two requirements: Fermi 2.0 and more onboard memory 768MB. The choice fell on a video card: a little over 4 thousand rubles.

Graphics card specifications Gainward GeForce GTX 550 Ti 1024MB (NE5X55T0HD09-1061F):
40nm GF116 chipset (GeForce GTX 550 Ti), 1.17 billion transistors. DirectX 11 GPU with Shader Model 5.0 support is built for ultra-high performance using the new graphics API feature, GPU-accelerated mosaic.
The core and shader unit operate at frequencies: 900/1800 MHz.
192 stream processors and 8 polymorphic engines.
32 texture units. Blending blocks: 24.
384KB unified L2 cache.
Texture fill rate (billion texels / sec): 28.8.
Performance: 691 GFLOPS.


1024MB GDDR5 memory, clocked at 4100MHz. 6x chips Hynix H5GQ1H24AFR T2C with an access time of 0.8 ns, and a frequency of 5 GHz. Available memory: 953MB.
192-bit memory bus (three 64-bit memory controllers are used).
Memory bandwidth: 98.4GB / s.
Interface: PCI Express 2.0 x16.
Chipset heat dissipation: 116W.
Maximum GPU temperature: 100 degrees.
Supports work in 2-way SLI configuration.
Outputs: DVI-I, VGA, HDMI.
HDMI 1.4a support including GPU accelerated Blu-ray 3D support, x.v.Color, HDMI Deep Color, and 7.1 digital surround sound.
Supports: OpenGL 4.1, DirectX 11 and Shader Model 5.0, NVIDIA PureVideo HD.
Designed to work with monitors with a resolution of 1680x1050 or less.
Two-slot active cooling system with a primitive aluminum radiator with fins (clickable photo).


And 92mm 11 blades fan:

OS support: Windows 7 32 / 64bit, Windows Vista 32 / 64bit, Windows XP 32 / 64bit.
The dimensions of the video card are very compact: 188 x 112 mm.
The GPU is powered by a four-phase converter controlled by the NCP 5395T controller.
The required power of the power supply unit is 400W or more, the current on the + 12V bus must be at least 24A. The power supply must be equipped with one 6-pin power connector. On the video card, the additional PCIe power connector is located on top of the video card, and not on the side, which is much more convenient when installing in a case:


The card was added to an old system unit with a dual-core Intel Core 2 Duo E6400 + Asus P5B Deluxe (Intel P965 Express with PCI Express x16 bus of the first revision with 8Gb / s bandwidth) and a standard GPS-500AB-A power supply (500W, three 12V lines give out: 16 + 18 + 18A, 2x 6pin PCIe connectors) which went into the load with the Chieftec UNI BA-02B-B-SL case. Those. the purchase of a more power hungry card could lead to the purchase of a more powerful power supply unit. Our goal is to find out what will give us a simple replacement of the video card with a more modern one that will support GPU acceleration in Adobe Premiere Pro CS5 and CS5.5. The screwless fastening of expansion slots for the Chieftec UNI BA-02B-B-SL case cannot work with this video card, since its two-slot cooling system, namely a decorative plastic casing, interferes with fastening. I had to fix the video card with screws in the old fashioned way.


Install the following drivers (* work only with WHQL drivers, after installing them, restart your PC):

Launch the Adobe Premiere Pro CS5 program and select Project Settings: Mercury Playback Engine Software Only.

Choosing a preset for the sequence: DSLR 1080p25. We make a clip along the length of the sound composition:

The clip consists of sources: Canon 550D, 5D, PNG sequence, M-JPEG footage and JPEG photo. The following effects have been applied: Track Matte Key, Ultra Key, Time Remapping, Gaussian Blur, Fast Color Corrector, and Black & White. The following functions were also used: Scale to Frame Size, Frame Blend, changed the PAR of the PNG sequence and the Color Dodge blending mode.
Further, there are three export options: H.264 Blu-Ray, Match Source Attributes (High Quality), i.e. this option does not change the resolution and frame rate. The second option: Mpeg2-DVD, PAL Widescreen High Quality, a standard scaler is also used here, which reduces the resolution to 720x576. And the third option, the same as the second, but with the checkbox on: Use Maximum Render Quality.

All other tests will pass using the GPU. But first you need to enable video card support. Go to the directory: C: \ Program Files \ Adobe \ Adobe Premiere Pro CS5 run the GPUSniffer.exe application and remember the name of the map.


Further, in the same directory, open a text document: cuda_supported_cards.txt and enter the name of the video card there (if the card is not visible to the program, then we read about connection errors). Further, the tests were carried out on the version of Premiere Pro CS5.0.3 (to see how the optimization works for Fermi). It is worth considering that after the update, when loading the project, an inscription will appear:


So for each version of the program participating in the test:

It is necessary to rewrite the text document: cuda_supported_cards.txt.

And accordingly, check in Project> Project Settings> General which engine is selected:

As soon as we select: Mercury Playback Engine GPU Acceleration the bar above the timeline will change from red to yellow.

To render the clip, Adobe Media Encoder was not used. Here is a summary table with the results:

Even a budget graphics card can significantly speed up a number of operations on a slow PC. It is also worth noting that with each update, the GPU of the video card is used more and more efficiently. Since one of the advantages of the program is good scalability, the results on powerful PCs will be completely different.
* In addition to the standard 1GB onboard memory, video cards based on the GeForce GTX 550 Ti chipset can be supplied with the following memory sizes: 1.5GB, 2GB, 3GB and 4GB.
* Those who like to save money: in fact, the video card is an overclocked version of an even more budgetary video card GeForce GTS 450 (GF106), the clock speeds in the GeForce GTX 550 Ti increased, the 128-bit memory bus was increased to 192-bit (due to the inclusion of a third controller) and the number of ROPs has been increased from 16 to 24. That's it. Pluses of GeForce GTS 450: much lower price and consumption, only 106W (i.e. the requirement for a power supply is even less).
The video card GeForce GTX 460 (GF104) 768 MB is not suitable for us, since part of the memory is occupied by the "service" and, as a result, the available memory does not meet the requirements of the Mercury Playback Engine GPU Acceleration. Although it is faster than the GeForce GTX 550 Ti.
* Whoever has the opportunity to pay a little better pay attention to the video card GeForce GTX 560 Ti (GF114), it is slightly faster in performance than the "gluttonous" GTX 470 and much faster than the GeForce GTX 460 768MB, GeForce GTX 460 SE and even more so the GeForce GTX 550 Ti, and can serve as that golden mean. The GTX 560 Ti differs from the GTX 560 - the included eighth polymorphic engine (multiprocessor) with an additional 48 stream processors (in 560 there are 7x), 8 additional texture units and ROP units and an increased power of 20W, almost at the same price.
Out of the brackets were completely budget solutions, for example, a resource studio1productions.com actively promotes the use of a budget solution GT 240 (GT215 core) for not very powerful systems (this video card is positioned by the manufacturer as: a budget CUDA accelerator for home). But there are some nuances here, since budget solutions have several options for video cards under the same codename. So, when using a GT 240 1GB GDDR5 video card, we will get a 45% increase in speed in Premiere Pro CS5.5 relative to using a GT 240 1GB DDR3. It's all about the memory bandwidth, with a 128-bit memory bus and GDDR5 operating at 3.4 GHz, we get a bandwidth of 54.4 GB / s. When using a 128-bit access bus and DDR3 memory operating at a frequency of 1.58GHz, we get memory bandwidth = 25.28Gb / s (calculated by the formula: 128 x 1580/8).
The GeForce GTX 550 Ti is also recommended for UltraScope, DeckLink, Multibridge and Intensity capture cards from Blackmagic Design. The list includes graphics cards: nVidia GeForce GTX 285, nVidia GeForce GTX 550Ti, nVidia GeForce GTX 570 and nVidia GeForce GTX 580. Minimum requirements: OpenGL 2.1 support and Texture Fill Rate over 22,000 MT / s.
We read about the comparative testing of the GeForce GTX 550 Ti video card with the GeForce GTX 650, and about the comparison with the GeForce GTX 650 Ti.
* On a more powerful system, you can see a big difference between video cards of different classes. Therefore, it makes no sense, for example, to use a bundle: a dual-core processor and a video card of the GeForce GTX 580 class.
!!! Be careful, there are MSI GeForce GTX 550 Ti 1024MB GDDR5 () video cards in retail with the declared frequencies of 900/3800 MHz (versus 900/4100 for the reference, which should already be a bell). In reality, everything is much sadder: under the guise of a GeForce GTX 550 Ti (built on GF116 / Fermi 2.0), a relabeled MSI N450GTS-M2D1GD5(built on GF106 / Fermi 1.0) with core frequencies of 783MHz and 1GB of GDDR5 memory operating at frequencies: 3608 or 3200MHz. 128-bit memory bus instead of 192-bit. And 144 stream processors instead of 192.

The video card is overclocked to frequencies of 900/4000 MHz, but 128-bit bus versus 192-bit bus is a significant disadvantage.

| How to speed up Adobe Premiere and After Effects

SOME FACTORS AFFECTING THE PERFORMANCE OF THE MOUNTING COMPUTER

actual on 12.2019

CUDA / OpenCL and Premiere:

Starting with version CS5, Adobe Premiere and After Effects use the computational resources of video cards. The availability of such support depends on the combination of the video card version, driver version, program version, and their settings.
The technical ability to use GPU acceleration does not mean that the program will start working on the GPU instead of the CPU. A number of computational tasks can be solved on the GPU. If such tasks do not appear during the editing or export process, then the GPU does not participate in the program.
This article describes: a) how to enable all available hardware resources, b) how to organize the workflow so that the maximum number of computational tasks is performed on the GPU.


Adobe premiere Directly supports GPU acceleration capabilities of almost all video cards NVidia with CUDA and at least 1 GB of memory. Chipsets AMD (ATI) are supported by Premier via OpenCL since CS6 for Mac (6750M, 6770M), actually from CC. Of chipsets Intel Support started with Intel Iris 5100 and Iris Pro 5200 notebooks via OpenCL in Premiere CC 2014 (version 8.0). On Windows, the current versions of Premiere support all the current GPUs of these three manufacturers, on Mac, the current versions use Metall, and NVidia video cards do not work.

Plugins eg Magic Bullet Looks, Elements3D are standalone programs and may or may not use a GPU regardless of the settings of the Adobe programs.

What gives GPU acceleration

In simplified terms, Adobe Premiere can be thought of as the following pipeline: reading files from disk> decoding compressed video to an internal video presentation format in memory> processing on a timeline> compressing a video with a codec> writing a file to disk. Read / write operations do not depend on the GPU and CPU, they depend on the speed of the disks, the speed of modern HDD and SSD is many times higher than the required value for video formats with compression, and are performed without the participation of the processor, i.e. their impact on performance is not noticeable. The graphics card processing unit (GPU) can be used for video editing for the remaining three operations. These operations are performed sequentially and independently. Consistently means that a video frame goes through all stages of the pipeline from start to finish, independently means that the speed of work at each stage does not depend on others. Taken together, this means that if at some stage the speed is low, then at others it will be simple from the word idle. Optimization is not about eliminating downtime; it's about minimizing delays.

To perform these operations, the GPU has independent hardware units engaged in: decoding common formats (nvdec / vce / qsv); image processing on universal computing cores gpu (shaders, CUDA); coding in common formats (nvenc / vce / qsv). If the video card does not have these blocks, or Premier does not support them, then the operations are performed on the processor.

The biggest impact on performance is:
1) geometric transformations over the video (resizing, rotating, transforming fields, transforming the frame rate), transforming the color space, color correction, and other manipulations over images, which is supported by many filters, effects and plug-ins
2) hardware video encoding, which is topical for h.264, h.265 formats

These are different uses, with different effects. For example, with simple editing of DV video end-to-end, without effects and subsequent encoding in h264, hardware acceleration according to the first method will not give any acceleration. the video remains unchanged. But if you use the second method (plugin installed voukoder, or Premiere with Intel hardware encoding enabled Quick Sync, etc., while the GPU of your video card or processor is supported by a hardware encoder), then the speed of the final render will increase significantly. Learn more about hardware encoding.
Another example, editing 4K video with color correction, Warp Stabilizer, Neat Video noise reduction, followed by export to prores 1080p. In acceleration by the first Warp Stabilizer method, the difference will be subtle, Neat Video will accelerate, and the GPU's contribution to resizing and color correction operations will speed up the overall result significantly; the second method will not give an effect due to the lack of hardware acceleration in the prores encoder.

All encoding and decoding units on video cards are high-speed and differ mainly in supported resolutions. The speed of shaders is directly proportional to their number and clock frequency, and the frequencies on video cards are approximately at the same level, and the number of cores varies greatly. It is important to note that the most powerful Intel GPUs are about 20 times inferior in performance to the flagships NVidia and AMD.

Decoding material

There remains the third way to use the GPU of the video card - this is decoding the source material. The effect will be when working on the timeline, when the central processor cannot cope with decoding. This will not speed up the work with heavy effects in any way, but it will be useful for cases when the processor does not have time to unpack heavy video - 4K, 1080p50 AVCHD / XAVC / HEVC video with high bitrate (100+ mbps), the owners of weak laptops will notice the acceleration best of all. This functionality has been added for Intel processors with QSV starting in 2015.3. Modern top processors, 6 and 8 core Intel and rival Ryzen, decode h264 video faster than QSV, so disabling decoding can speed up work in some cases, in other cases hardware decoding will unload the CPU.

Mercury Playback Engine GPU Acceleration

For professional work, the speed with which the video is processed is of fundamental importance. Shaders are responsible for all manipulations with the image. CUDA counting speed for operations such as transcoding from 4K to 1080p will increase by about 5-6 times. Color grading is also highly GPU dependent. In this case, the image quality turns out to be much better than when working on the central processor. Thus, it is necessary that the video render must be Mercury Playback Engine GPU Acceleration CUDA or OpenCL (included in File | Project settins | General).

At the moment, the program automatically detects the availability of a suitable video card. However, there are some nuances: Adobe is gradually abandoning support for old models of video cards (on the one hand, this means that new versions of programs are simply not tested on old cards, on the other hand, video card manufacturers stop supporting old models in new drivers, and the new Premier needs new drivers); there is a version of the Premiere that came out earlier than the video card, and he does not know this; for one reason or another, older versions of Premiere might not detect and turn on acceleration. You can try to prompt the Premiere manually.
If your NVidia video card is not defined as having GPU acceleration, and only Mercury Playback Engine Software Only is available in the Project Settings panel instead of GPU Acceleration:

then you need to register it in the file C: \ Program Files \ Adobe \ Adobe Premiere Pro CS6 \ cuda_supported_cards.txt... The list of officially supported ATI (Radeon) video cards is in the file opencl_supported_cards.txt and can be added manually in the same way. In Premiere CC, Adobe allowed support for all CUDA and OpenCL chipsets, it was enough to go to this settings panel at the first start and turn on the GPU manually. Theoretically, it is not required to write by hand, in practice, if Premiere CC does not see your video card, you will need to create this file yourself and enter your video card into it (example of an NVidia CUDA file, Radeon OpenCL).

You can easily check the reason by calling the console (Ctrl + F12) and execute the GPUsniffer command in it. There will be a reason in the text output: * Not chosen because of insufficient video memory- little memory on the video card, * Not chosen because of old driver- old video card driver, etc.

If you have an old video card that is not supported by the new drivers, then you will have to work on an older version of Premier. Also, CC2015 and 2017 may not see the Kepler video card after the first launch of the program after downloading, you need to exit the premiere and start it again. With AMD Radeon Crimson drivers, there will be no GPU acceleration on older AMD Radeon HD 7xxx cards and earlier.

Adobe Premiere CS3, CS4 do not support CUDA / OpenCL hardware acceleration and it makes no sense to register a video card in them.

There is a peculiarity in the work of effects: if among the effects superimposed on a clip there is one that does not support GPU acceleration, then all other effects also switch to CPU mode. This applies to the Adjustment layer to the fullest.


This picture shows how GPU accelerated effects are marked in Premiere


Below are not recommendations for buying a video card, but general information about the relationship between the performance of the central processor and its ability to load all the cores on the video card with work:
AMD FX 6 or 8 cores - 384 or more
Intel dual core - 96 or more
Intel core quad - 192 or more
First Generation Intel I7 - 384
Intel I7 Ivy Bridge - 1344
Intel I7 Coffee Lake / 6 - 2944

GPU cores may be smaller, but editing will then slow down.
If you have an old computer, for example a 2.0 GHz quad core with 4 gigabytes of memory, buying a GTX-1060 is pointless. For such a system, it is better to add memory and use a video card with about 300 cuda cores. If you have a very weak Core Duo, then on the market (Chinese, eBay) there is an opportunity for a cheap purchase of a used xeon sawn for your socket.

Export

For hardware h.264 encoding, there are the following options:
1. Install the plugin voukoder(NVidia / AMD) - the plug-in performs encoding by a video card in the h264 / h265 format, the speed is not lower than realtime.
2. If you have an Intel processor with Quick Sync and Premiere 2017.1+, use hardware encoding in the standard Premiere export.

3. Use external hardware encoders via the Advanced Frame Server plugin.
4. For Premiere CS 5.x, 6.x install the package Rovi TotalCode 6.03 including the h.264 codec with CUDA support (does not work with video cards of the Kepler architecture and newer, i.e. 6xx and newer series of video cards are not supported).
Premier does not have hardware encoding for export in mpeg, prores and other formats.

Premiere versions and performance

As new features appear and develop, they show better performance.
So if the speed of basic work with h264 (loading, viewing, cutting end-to-end on the timeline) has not changed in any way since CS6, then on Lumetri Test CC 7.2 vs CC 2015 9.1 on the Lumetri effect by loading one 1 LUT .cube. Lumetri in Premiere CC, unlike CC 2015, does not yet use GPU acceleration, but it is interesting that in a purely software mode, CC 2015 is faster:
cc7.2 GPU ON, 3.4 fps CPU 35%
cc7.2 GPU OFF 2.9 fps CPU 45%
cc9.1 GPU ON, 25 fps CPU 22% GPU 8%
cc9.1 GPU OFF 3.2 fps CPU 43%.

The downside of newer versions may be higher resource requirements. This can manifest itself as various failures in the work on the project and when exporting on weak configurations.
Changes to the program do not always benefit performance. Before CC 2014, Multicam worked fine, but with this version there were serious problems with a drop in performance when editing material with interframe compression with a project length of more than 5-10 minutes. In CC 2019, with the introduction of GPU color conversion in the ImporterMPEG module, the load on the GPU and the GPU memory consumption increased.

Premiere and memory:

It would seem that Premiere is not so critical to the memory size, but in some situations the lack of memory can paralyze the work. When memory is small, say 4 GB, adobov programs can use a maximum of 2.5 GB for their work. That is, if only Premiere is running, without After Effects and Photoshop, then at its disposal at best 2.5 GB of memory. This is enough for simple editing of DSLR video, but if the project becomes more complicated, for example, AVCHD 1080p50 with Warp Stabilizer, Neat Video noise reduction, Lumetri color correction, h.264 encoding, then the computer starts to seriously freeze, so much so that the mouse slows down. If you look at such moments in the task manager, it becomes clear that the system goes into deep swap, although 1 GB of memory may be free.

The way out in such a situation may be as follows: Edit / Preferences / Memory - Optimize rendering for: Memory... When editing without processing, you can try disabling the Maximum bit depth option (when working on a GPU, this option is always enabled, regardless of the user's choice. When working on a CPU, disabling it negatively affects the quality of any color correction).

You can export when there is a lack of memory through Adobe Media Encoder (Queue button), after which you can close Premiere.

You can also disable the Superfetch system service, which deals with advanced caching, which is pointless and harmful when there is a lack of memory.

For versions of Premiere since 2017, low physical memory can be a problem, and there have been frequent complaints that "Premiere crashes in the middle of export". A significant increase in the paging file can help in this situation. Since heavy use of the paging file cannot improve performance, we avoid it. First, you can try to optimize the effects, calculate them, try to make intermediate encoding in a simpler codec.

The number of processor cores and hyperthreading do not affect memory requirements, which is easy to see by disabling the cores from the Adobe Premier Pro.exe process in Task Manager. If you have a lot of system memory, do not give it all to adobe programs: during operation, disk operations are actively cached, and the availability of free system memory will speed up the work - if the system does not have enough memory, then windows begins to actively use the swap (paging file), and this is a strong blow by performance.

Adobe Media Encoder

In a programme MediaEncoder, CUDA acceleration has been introduced since Update 7.1 for Media Encoder CC on 10/31/2013. For it to work, the appropriate render must be selected.


If your NVidia video card has CUDA, but it is impossible to select the Mercury Playback Engine GPU Acceleration renderer, then you need to manually create a file C: \ Program Files \ Adobe \ Adobe Media Encoder CC 2014 \ cuda_supported_cards.txt and register your video card there. The situation with the Radeons is similar.

You need to understand that transcoding video files in MediaEncoder and exporting a project from Premiere / AfterEffects are different operations. When converting video files from one format to another, the render engine AME turns on GPU acceleration when changing the size / frame rate of the video, and if it is recalculated to another codec, then nothing is accelerated. A Premiere / AfterFX project is rendered in a different way: for this, AME loads the premiere / afterfx kernel and GPU acceleration into memory when calculating all effects and transformations within the project, it does not depend on the Media Encoder, but on the Premiere settings in the project. In order for GPU acceleration to work on all Premiere effects when rendering in MediaEncoder, the Import sequences natively option must be off.

When configured correctly, the export speed from Premiere and AME will be the same.

How to monitor GPU performance

You can check how the video card chipset (GPU) is actually used with the GPU-Z program. GPU-Z shows with checkmarks whether your NVidia has a CUDA video card, or your Radeon OpenCL, and during rendering, you can clearly see how it is loaded by the work of your video card's GPU (GPU Load). Please keep in mind that other programs running on the system, as well as plugins (for example Magic Bullet Looks) can load the GPU on their own and regardless of the settings of Adobe programs, and this will also be displayed.
The Video Engine Load line during export (encoding) displays the load of the nvenc block, when working on the timeline (decoding), the load of the block responsible for decoding.


CUDA and After Effects Acceleration:

When working in After Effects, the program can use graphics card resources in the following ways:
- acceleration of the 2D interface of the program - works on all video cards;
- OpenGL - is available on almost all video cards, previews are accelerated (Fast Draft), OpenGL plugins (for example Element 3D);
- an alternative rendering engine for 3D layers (with a camera, light sources) called Ray-traced 3D - only for NVidia video cards.
Starting with AE 14.0, another renderer for 3D layers has appeared - the built-in Cinema 4D core.
GPU acceleration gradually appears in the built-in effects: in version 14 these are Lumetri, Fast Blur, Brightness and Contrast, Find Edges, Hue / Saturation, Mosaic, Glow, Tint and Invert.

When exporting, After Effects does the work in the following order: first, the frame is rendered on the timeline (all layers with all the effects, one by one, from bottom to top), then the rendered frame is compressed (encoded) into the output file format. At the first stage, AE uses the available video card accelerations described above, at the second stage, the situation completely depends on the codecs and is described in the section on Premiere.

Anyway, After Effects needs a fast CPU and a lot of memory(16 GB or better 32 or more), without this the presence of a powerful video card will not give any effect, in addition, many heavy plugins simply do not use CUDA and work only on the central processor or on universal OpenGL acceleration. Unlike Premiere, the presence of GPU acceleration on the video card will speed up work in fewer projects.

Difference between OpenGL and CUDA
Hardware acceleration of video cards is provided by special blocks on the GPU chip: Render output units (ROP), Texture mapping units (TMU), Unified shaders (CUDA cores). There are two technologies for using GPU video cards: OpenGL and CUDA (for video cards from ATI and Intel, the analogue of CUDA is called OpenCL).
Opengl
describes a 3D scene in its entirety, and this description does not depend on the video card in any way, but its means cannot perform all the functions of After Effects. OpenGL performance primarily depends on the number and power of ROPs and TMUs involved in 3D rendering. OpenGL is also responsible for 2D graphics in the system - for accelerating the user interface (Hardware BlitPipe), managing video modes, and operations with video memory. The OpenGL Fast Draft mode of the Composition window is optimized for very fast draft quality previews.
From the point of view of work in AE, OpenGL functions are completely insufficient to use it in the final render, but, for plugins that use it, its performance is very important.
CUDA means direct programming of GPU cores, this is direct full access to the processing power of the video card. To put it simply, many CUDA kernels quickly process a lot of numbers, but they do not work with an image as with a 2D or 3D scene. Some semblance of the OpenGL functionality for CUDA is made by NVidia through the OptiX library, where the main program running on the CPU performs mathematical calculations on the CUDA shaders. Render through this library in After Effects is called Ray-traced 3D. Ray-traced 3D does not support all the features of After Effects, but on suitable compositions it can significantly outperform the CPU render speed. Whether or not it will win is best determined by a test render of your working project.
From the point of view of working in AE, on compositions with 3D layers this can give a good boost to speed, also CUDA and OpenCL can be directly used by plugins.

Does the video card support OpenGL and CUDA
OpenGL is supported by all NVidia, AMD, Intel graphics accelerators. Fast Draft requires OpenGL 2.0 or higher and Shader Model 4.0 or higher. As a rule, there are no problems with this. CUDA driver version must be 4.0 or higher (CC requires 5.0+ version). Versions can be checked in EDIT / Preferences / Preview / GPU Information.

If the versions are lower, then you need to update the drivers from the NVidia website. If that doesn't help, then it's time to buy a new video card. If your video card has CUDA, but GPU acceleration is not available, and only software mode is possible, then you can manually add your video card to the file C: \ Program Files \ Adobe \ Adobe After Effects CS6 \ Support Files \ raytracer_supported_cards.txt. For After Effects CC and newer, it may be sufficient to enable the Enable untested GPU ... checkbox in the EDIT / Preferences / Preview / GPU Information panel

Ray-traced 3D
3D raytraced render Ray-traced 3D appeared since CS 6 (version 11.0.2 and newer), it calculates 3D layers, camera, light sources in the composition on the video card, in which it is selected by the renderer. Only CUDA GPUs of NVidia video cards are supported. There are some peculiarities of work: the final render can become many times faster, or it can be slower than the classic CPU render, depending on the composition and the video card. Also, when the Ray-traced 3D graphics core is turned on, the display in the Composition window is simultaneously accelerated when editing a project.
There are limitations: GPU renderer does not support a number of program functions related to blending modes, track matte, and a number of effects, for example the Pin Tool, i.e. not suitable for all compositions.
Prior to CC 2015.1, Maxwell chipsets are not supported - GeForce GTX 750Ti, all 9x0 series. 2017.2 does not support Pascal chipsets. Apparently Adobe does not have time to update the license for someone else's library, but nothing prevents us from doing it manually by replacing optix.1.dll (download OptiX 3.9) in the Adobe After Effects CC 20xx / Support Files folder.
As an alternative to Ray-traced 3D, you can use Video Copilot Element 3d, Zaxwerks 3d Invigorator, Mettle ShapeShifter plugins in your projects, which are faster and more powerful than Ray-traced 3D. Version 14 introduces built-in Cinema 4D renderer.


To enable Ray-traced 3D you need:
1. Turn it on in AE by going to the EDIT / Preferences / Preview / GPU Information menu (pictured above)
2. Specify it for each composition in which you decide to use it:

IMPORTANT TO UNDERSTAND !!!- CUDA (Ray-traced 3D) in AfterEffects processes only 3D layers in a composition for which Ray-traced 3D is specified as a render. 2D layers are rendered in Classic 3D anyway. If CPU is selected in the EDIT / Preferences / Preview / GPU Information panel, then regardless of the renderer specified in the composition, Classic 3D will turn on.
The use of CUDA does not guarantee total acceleration: if you make 3D from a 2D layer and turn on Ray-traced 3D, then CUDA will turn on, but the speed will drop, because the transformation of simple elements in Classic 3D space is faster. But if you complicate the scene: add lights, shadows and depth of field, then Classic 3D performance drops dramatically and Ray-traced 3D becomes surely faster. Thus, Ray-traced 3D needs to be installed only for those project compositions where it gives acceleration, if the wrong choice is made, the rendering will slow down. If a layer with a different Ray-traced 3D composition is nested in the composition, the choice of render for them is independent.
Understand how it works better by doing Ray-traced 3D / Classic 3D test renders. Do not forget to clear caches before testing - Edit / Purge / All Memory & Disk Cache. Time and monitor your CUDA load. You can control the GPU load in the GPU-Z program (GPU Load value).
All this is convenient and correct - in the project you need to combine 3D elements optimized for video card accelerators with 2D and 3D elements that use all the functionality of After Effects.

Speed ​​up editing. Enabling OpenGL

In order to use the ray traced 3D core working through Cuda when editing a project, you need to select the GPU in the EDIT / Preferences / Preview / GPU Information panel.

It is also possible to use GPU resources through OpenGL, that is, to use the capabilities of AMD (ATI), Intel HD Graphics and the same NVidia video cards through the OpenGL 3d accelerator software interface. This is speeds up work when editing a project: it is used when calculating a preview, to draw the AE interface when editing a project and some effects (Cartoon, Magic Bullet Looks and Colorista effects use OpenGL both when editing and when exporting).

OpenGL for display in the Composition window during editing and for preview is enabled by the Fast Preview / Fast Draft button in the Composition window. Due to limitations of the OpenGL standard, not all After Effects features work, so Fast Draft may not work for all projects.

Another option to speed up work in editing: enable Hardware Accelerate Composition(if you have CC 2015, you need version 13.6+): In the Edit / Preferences menu, select Display, and enable Hardware Accelerate Composition. This option is responsible for the hardware combination of layers and rendering of interface elements in the Composition window (Hardware BlitPipe).

Multiprocessing: speeding up the final rendering

After Effects has a long history of development, dating back to the days when the program was called CoSa AfterFX and the computer had one processor with one core. Accordingly, not all program functions, and not all external plugins are able to parallelize their work on several cores. This problem is removed with each new version, but for older versions or the use of old plugins it may be relevant.

More memory makes it possible to use the option Multiprocessing... To enable it, select Memory & Multiprocessing in the Edit / Preferences menu. In the middle of the window that appears, enable Render Multiple Frames Simultaneously (render several frames at the same time). After that, it will be possible to set the amount of memory available for each processor core for rendering. Select a value, if desired, based on the amount of memory installed and the number of CPU cores. If there is not enough memory, After FX will automatically reduce the number of involved cores. Please note that starting with Media Encoder and AE CC 2015.0 this option is disabled.

In some cases, this option allows speed up render, but at the expense of more memory. In the final render, in addition to the copy of After Effects in memory, additional copies will be launched based on the number of CPU cores involved, but without the user interface. That is, on a 4-core processor with Hyper-threading, there will be 9 copies of After Effects in memory. You need to understand that AE will not work 8 times faster from this: if some effect can parallelize its work on several cores by calculating one frame, then there will be no acceleration from Multiprocessing, because in order to process 8 frames simultaneously, you need to prepare in 8 times more information, send 8 times more information through memory and manage 8 processing threads in a coordinated manner, for example, to process a 17-megapixel photo, about 1 GB of memory is reserved, therefore, eight threads need 8 GB. This is an unnecessary overhead. If, when calculating the effect, only one core is involved, and the rest are idle, then giving each core a frame for rendering will be certainly effective. The real effectiveness of this method depends on many conditions and it is better to check empirically by monitoring the CPU load in the Task Manager. Adobe recommends running 4-6 threads with 8 cores.

Network render
After Effects allows you to set up rendering over the network, on multiple computers. Before tackling this, you must remember that the fonts / codecs used in the project must be installed on all machines involved in the render.

Export to h264 and After Effects CC
Starting with the CC version, export to h264, WMV and MPEG is disabled by default. Moreover, since the CC 2014 version, it is completely disabled. This was done due to the fundamental impossibility of using two-pass codecs in After Effects. For these formats, developers recommend exporting via Adobe Media Encoder. In real work, it is most practical to export directly to any format without interframe compression, for example, avi UT video codec, qt Cineform codec, PNG; and then transcode to h.264.

For the version of After Effects CC, the possibility of single-pass h.264 encoding remains, for which you need to enable direct export to h264 in the settings, and independently configure the Output Module in the render queue:

There is still a possibility of direct export to h264 via Quicktime, unfortunately the h264 codec in QT is of low quality. It is also possible to install external ffmpeg-based AfterCodecs.


Adobe Media Encoder
Adobe Media Encoder does not support Render Multiple Frames Simultaneously - an option in AE to speed up rendering, but it supports many export formats, and you can also connect codecs with hardware encoding acceleration in it.
In reality, the biggest drawback of AME is that it does not support Ray-traced 3D, and worst of all, when encoding a frame with interframe compression codecs, Media Encoder forces AE to constantly recalculate all previous frames in the group.
In summary, before exporting via AME, try exporting multiple frames directly and timing. If the speed drops when exporting via AME, then it is more practical to export directly (for example, TIFF sequense, avi / UT video, mov / Cineform) and then convert your video to the desired format.

Simultaneous work of AE with other Adobe programs
After Effects strives to cache all preview rendering results, and takes up all available memory, regardless of its size. Such caching significantly speeds up editing in AE, but lack of memory leads to various crashes and crashes of programs at the most inopportune moment. To minimize this when switching between AE and Photoshop or Premiere, simply free up memory: Edit / Purge / All Memory.

GENERAL ISSUES

Video card memory
You need at least 1 GB of memory on the video card, and it is better if it is DDR5. DDR3 memory is good for work, but if you buy a new video card, then it is wiser to go for DDR5. For full HD work, formally with a large margin, 2 GB is enough, however, when one frame is composed of several source frames (picture in picture) or effects that simultaneously process several frames (noise reduction, etc.) are used, the memory consumption increases manifold. If GPU acceleration is used, then all this memory must be on the video card. Therefore, 2 GB is a reasonable choice, and 4 GB is better and absolutely necessary for UHD / 4K video.

OpenGL in Premiere
OpenGL Premier does not use, OpenGL is used by some plugins. OpenGL support is provided at the system level. If you install a video card, then along with its drivers, OpenGL acceleration is added. Performance settings are made from the utilities installed with the video card drivers. All this is well known to gamers.


Quadro
The only point to use Quadro series video cards in video editing is in the case of 10-bit material and a 10-bit monitor, for example, HP Dreamcolor. In other cases, Quadro is not fast enough or too expensive.


Food
NVIDIA GeForce cards draw between 200 and 700 watts under full load (paired or SLI).
It should be remembered that other components of the system also consume energy. The second in terms of power consumption is the central processor, for a quad core Q9650 it is 65 W, in this case a 300 W power supply is sufficient. Or the I7-930 draws up to 130W, and a 500W PSU might not be enough.

idle, W CUDA cores
GTX 460 80 160 336
GTX 660 80 275 1152
GTX 660Ti 80 320 1344
GTX 670 80 340 1344
GTX 680 85 390 1536
GTX 690 100 510 2x1536
GTX 730 10 38 96
GTX 760 95 300 1152
GTX Titan 109 335 2688
GTX 960 105 270 1024
GTX 980 110 390 2048

Cooling
It is necessary to control the operating temperature of the video card. There are several programs that allow you to do this. For example, the same GPU-Z or HWMonitor (you can download it from www.cpuid.com). Additional cooling is provided if necessary. Also monitor the CPU temperature.

Regardless of the measures taken, at least once every six months, it is necessary to clean the radiators and the fan from dust.

Working with multiple GPUs
Graphics cards such as GTX 690, Titan are essentially already dual graphics cards. Premiere CC works with them, and, moreover, it works if there are several video cards in the system, and SLI mode is not required, which means that you can use video cards of different series. This mode of operation is also known as MultipleGPU... The performance gain here is not unambiguous and depends on the balance of the computer configuration.
Additional room for maneuver is provided by the use of GPU by third-party plugins. In this case, you can assign CUDA acceleration of one video card to Premiere, and assign OpenGL acceleration of another video card (for example, Radeon) to a plug-in (for example, the Magic Bullet series works through OpenGL). In addition, more and more plugins appear directly using MultipleGPU - Neat Video 4, Beauty Box 4, Twixtor, DE: Noise, ReelSmart Motion Blur.

Optimizing disk management
It is necessary to prevent fragmentation of scratch disks, control it and, if necessary, perform defragmentation. For Premiere, place the Media Cache on the dedicated quick HDD, or better SSD. For Adobe After Effects, enable Disc Cache in Preferences / Media & Disc Cache and place it on the dedicated quick disk, ideally an SSD; also enable Disc Cache = Current Settings in the Render Settings of the Render Queue.

Photos
If you load ~ 20 megapixel photos into the project, and then work with them, for example, reducing them to 25%, then it is better to first reduce them in Photoshop. Thus, each such operation with this photo in the Premiere, each effect will be performed 4 times faster.
In addition, there is a limitation of GPU acceleration in Premiere: ((width * height) / 16.384) megabytes of memory on the video card are reserved for frame processing. If this value exceeds the amount of available memory, Premiere renderer switches to the CPU. This means that on this frame, GPU acceleration will not work on any effect. For example, the image size with Canon 550D is 5184 × 3456 pixels. As a result of the calculation, we get 1.094MB, which is physically more than 1GB of memory on the Quadro FX 3800.

CEPHtmlEngine
This process is part of Adoba's new approach to interfaces: it is responsible for the Library panel (access to cloud media resources) and for the new Premiere launcher. every 5 seconds it climbs into the cloud and on processors without HT it can take 30% of the speed. Adobe suggests fixing crooked AngularJS code with patches. We believe that the code that stupidly spills I / O in a multitasking system is not acceptable in principle, and we demolish the CEPHtmlEngine folder located in c: \ Program Files \ Adobe \ Adobe Premiere Pro CC 2015 \

AdobeIPCBroker
Approximately every 30 seconds, a process named AdobeIPCBroker.exe sends encrypted data ranging from 1 to 1.5 kb in length to adobe servers. Since we need to work, and not be in constant communication with the cloud, the file c: \ Program Files (x86) \ Common Files \ Adobe \ OOBE \ PDApp \ IPC \ AdobeIPCBroker.exe can be replaced with this one.

Lumetri scopes
If the performance is not enough when playing the timeline, then keep in mind that the displayed Lumetri Scopes panel requires considerable resources.

Aero
Aero works with GPU acceleration and consumes resources. Therefore, it can be turned off

https://helpx.adobe.com/premiere-pro/system-requirements.html - system requirements
http://blogs.adobe.com/aftereffects/category/technical-focus
https://www.cpubenchmark.net/common_cpus.html

I love Nvidia because their video cards support a lot of useful things like PhysX and, of course, CUDA. Suddenly, the question arose about converting video, and, of course, I decided not to strain my Core i7 with these matters, let it rule the system, and I have two gf110 chips from GTX780 video cards in stock. But the converters suddenly began to show off that they did not find devices with CUDA support on me! I searched the Internet and found out that nvidia turned off CUDA support, officially updated the API for CUDA and now the dlls are in the Deprecated state, starting with the driver 340.52 and the following.

Update 1

It turns out that nvidia has updated the API for CUDA and therefore no program is currently working. It remains only to wait for everyone to update the programs in support of the new API, while you can use the hacks below. You can read the topic about it.

Solution options

  • Install old driver 337.88
  • Unzip this archive to C: \ Windows (x64 only)
  • Download modified driver 344.11 from Cyris

P.S.

P.S.S (01/09/2017): The post is old. Perhaps all of the above will not help anymore, so just update the converter program. Most of them already know how to work with the new CUDA interface, so all these shenanigans are no longer required.

Hello! Today we will be activating the CUDA graphics processor (if your graphics card has one). According to the manufacturer, the new version of the Adobe software package contains a large number of supported video chipsets, but in practice this turned out to be not the case, but this is a trifle, because you can do everything yourself.

WHAT IS CUDA?

CUDA is NVIDIA's parallel computing architecture that dramatically increases computing performance through the use of GPUs (Graphics Processing Units). CUDA processors have reached millions of sales today, and CUDA has been widely used by software developers, scientists, and researchers in a variety of fields, including video processing and imaging, computational biology and chemistry, fluid dynamics modeling, computed tomography image reconstruction, seismic analysis, ray tracing, and more.

So what do we need?

1. Go to the Nvidia site and download the latest driver for your Mac CUDA drivers: http://www.nvidia.com/object/mac-driver-archive.html

2. Open the terminal and drive in such a command

3. / Applications / Adobe \ Premiere \ Pro \ CC / Adobe \ Premiere \ Pro \ CC.app/Contents/GPUSniffer.app/Contents/MacOS/GPUSniffer

4. Find our video card model (for example: GeForce GTX 580)

5.sudo nano / Applications / Adobe \ Premiere \ Pro \ CC / Adobe \ Premiere \ Pro \ CC.app/Contents/cuda_supported_cards.txt

6. Add the name of your card to the list

7. Save :

8. For After Effects *sudo nano / Applications / Adobe \ After \ Effects \ CC / Adobe \ After \ Effects \ CC.app/Contents/raytracer_supported_cards.txt

9. Scroll to the very bottom and insert the name of your video card

10. Save : Control + X then Y apply changes

11. We choose CUDA in programs and enjoy the acceleration obtained during installation

You can watch the visual activation in the video below.

Did you like the article? To share with friends: