Это не так много, что браузеры не могут быть или не умный достаточно использовать аппаратное ускорение. Вместо этого то, что вы имеете в виду, действительно применимо только к WebKit, и особенно к мобильным версиям WebKit. Firefox и IE обе аппаратные ускоряют все, и они автоматически разбивают страницу на «слои», которые компонуются на графическом процессоре. Вот почему они обычно пролетают мимо Chrome при проверке скорости. WebKit, с другой стороны, никогда не был адаптирован для ускорения более простых уровней.
Поскольку Firefox и IE могут использовать рендеринг Direct2D на платформах Windows (где каждая операция рисования аппаратно ускоряется), по сути, это было требование, чтобы они могли выполнять аппаратное ускорение композитинга. Если бы они только ускорили операции рисования, а не композицию, они потеряли бы большую часть преимуществ от использования Direct2D в первую очередь, потому что потребовалось бы копирование между графическим процессором и системной памятью, что было бы медленным. С другой стороны, все средства поддержки WebKit, которые мне известны, полностью выполняют рендеринг в программном обеспечении и несут штраф за копирование в GPU, когда они являются составными (если используется компоновка графического процессора). Таким образом, это становится компромиссом. Если слой, который вы компонуете, не занимает много времени для рендеринга на CPU, не всегда имеет смысл выполнять копию и композицию на GPU.
Из-за этого, а также крайне ограниченного характера мобильных графических процессоров, ни один из браузеров WebKit еще не начал выполнять автоматическое аппаратное ускорение, за исключением случаев, когда это абсолютно необходимо (например, при настройке 3D-преобразования). Если бы вы хотели мое мнение, я бы также добавил, что я думаю, что ленивость со стороны разработчиков WebKit и поддерживающих компаний также является фактором. Использование графического процессора является основным источником ошибок, поэтому им проще просто не использовать его, а не устранять проблемы.
Кстати, Firefox для Android может выполнять компоновку графического объекта все время, хотя вам может потребоваться включить его в: config; Я не знаю, включено ли оно по умолчанию. Для ПК я бы рекомендовал использовать Firefox или IE для очень быстрого рендеринга.
EDIT: Я также должен добавить, что в самых последних версиях Android Google добавила аппаратное ускорение в Skia, которое обрабатывает практически все 2D-рендеринг в ОС. Это не так много устройств в дикой природе, но это означает, что производительность улучшится для всего на Android в ближайшем будущем. Тем не менее, я не знаю, работает ли их реализация Skia без проблем с OpenGL. Композиция по-прежнему может содержать дополнительные копии, пока они не справятся с этим.
В первый раз я видел такой метод был в [этот вопрос] (Http: // StackOverflow.com/questions/9012753/is-there-a-firefox-equ-to-chromes-translatez0-to-force-gpu-accelera) с приятным небольшим ответом от одного из разработчиков Mozilla. Это почти так же смешно, как добавление '! Important' для решения специфики головоломки ... * почти *. – BoltClock