Can a video accelerator card improve non-graphical performance? [closed]


To develop in Ruby on Rails, I use here a VirtualBox virtual machine with Ubuntu Server 14.04 without graphical interface installed.

Recently I discovered a configuration that improves absurdly VM performance:

  • Enable 3D video acceleration;
  • Increase video memory from ~ 8MB to 128MB.

After I changed only these two options, I got the impression that everything went faster 5 times faster!: operating system boot, Rails test run, and even Rails application performance.


It surprised me, because I always thought that 3D acceleration was only for graphical things like games, CAD tools, Operating system graphical interface, etc., but in VM I do not use anything graphic.

The above event has brought me into doubt whether non-graphical processing can also benefit from 3D acceleration, and why it does.

asked by anonymous 08.09.2014 / 13:19

3 answers


Video operations are costly. Gamers who criticize tearing ) at 60FPS have no idea of the complexity of the operations being performed by the GPU.

But we are victims of this effect too. We are so used to specialized visual content rendering that we do not realize that today's GPUs are orders of magnitude faster than CPUs - #. Even embedded GPUs (such as extra colors or individual processors) are faster for raster operations.

Depending on the implementation of the environment in a virtual machine, function calls that would suffer offload from the GPU on a physical machine are interpreted by the CPU in a process that is not optimized for speed.

These operations fall into the same 'queue' of execution of normal instructions, resulting in a considerable loss of performance.

When video acceleration is enabled you are allowing instructions for known 3D instrumentation interfaces (OpenGL, DirectX, etc.) are used. Emulators can thus intercept these calls, and decide whether to pass 3D operations to the native host or simply ignore them (when, for example, the VM is not being viewed.)

08.09.2014 / 16:16

Everything you can see on your computer is graphic or uses graphics.

What happens is that we divide the interfaces into "graphic" and "text". However, even older computers with text-mode systems use a video card.

Acceleration takes away from the processor the responsibility of handling the video, increasing its performance.

Although it is for Windows, I found an article on the subject with more technical details. Talk about text rendering.

Hardware Speeding Up Everything

08.09.2014 / 14:21

In a certain way, for example, a graphical activity that was previously stored in the memory of the machine is executed by the memory of the card, so this memory space of the machine would be available to perform another task.

08.09.2014 / 14:16