Универсального оборудования не существует. Например, процессоры являются полными по Тьюрингу, что означает, что они способны выполнять любые вычисления. Это не значит, что он может делать это быстро. Создание оборудования с учетом конкретных задач может привести к значительному увеличению производительности.
Например, вот, сколько биткойн-хэшей можно рассчитать для разных устройств в секунду:
- Intel Core i7 950 (ЦП): 18,9 МГц / с
- AMD Radeon 7870 XT (GPU): 485 мегабит / с
- BFL SC (выделенный майнер ASIC): 25000 мегапикселей / с
Все устройства для сравнения потребляют около 150 Вт мощности. Результаты теста от bitcoin.it).
ЦП является основным процессором. Это хорошо в операциях, которые последовательны по своей природе и требуют много ветвления. (ветвь - это когда процессор должен выбрать, что делать дальше, в зависимости от результатов предыдущих вычислений)
Тогда есть GPU. Графические процессоры специализируются на эффективном рисовании различных материалов, в частности трехмерной графики. Они могут обрабатывать текстуру, освещение и другие вещи, которые были бы слишком требовательны даже для современных процессоров. Это в основном то, что означает 3D-ускорение, а GPU - это 3D-ускоритель. В первые дни вычислений 3D-ускорители были дополнительными платами расширения, отдельно от видеокарт (например, 3dfx Voodoo).
Когда нам надоела модная трехмерная графика, мы решили, что нам нужно больше пикселей в наших видеороликах, и родился HD. Вскоре стало очевидно, что процессоры снова слишком медленные, чтобы декодировать видео высокого разрешения, которое нам требуется в режиме реального времени. Производители начали встраивать специальные видеоускорители в свои видеокарты. Они были способны эффективно распаковывать HD-видео. Это ускорение 2D видео.
В современном ПК также есть куча других ускорителей. Например, PhysX изначально был отдельной надстройкой, предназначенной для физических расчетов. Позже они были приобретены NVIDIA, и теперь наши видеокарты также могут работать с физикой. Они также могут выполнять массивно параллельные вычисления (много данных, одна и та же операция применяется ко всем, желательно без ветвления).
Возможно, стоит упомянуть технологию Intel Quick Sync, которая ускоряет не только декодирование видео, но и кодирование. Технически говоря, это также 2D-видеоускоритель, но он необычный.
Включение 3D-ускорения и 2D-ускорения видео в настройках машины VirtualBox позволяет VirtualBox виртуализировать возможности ускорения хоста и предоставлять их гостю через виртуальный графический адаптер. Однако для этого требуются дополнительные драйверы, поэтому вам необходимо установить Guest Additions на виртуальной машине, а ускорение 2D-видео работает только на гостях Windows.