Solved Firefox: no GPU acceleration since 50.0

  • Thread starter Deleted member 45312
  • Start date
D

Deleted member 45312

Guest


Dear FreeBSD users,

I no longer have video acceleration on www/firefox since version 50.0.
I had to revert to www/firefox-esr version 45.6.0 to retrieve video acceleration.
I am running FreeBSD 10.3-RELEASE-p15 amd64 and my Graphic Adapter is a Nvidia GT610 with nvidia-driver-367.44

Firefox 45.6.0 information about video acceleration:
Code:
Graphics
Adapter Description   NVIDIA Corporation -- GeForce GT 610/PCIe/SSE2
Asynchronous Pan/Zoom   none
Device ID   GeForce GT 610/PCIe/SSE2
Driver Version   4.5.0 NVIDIA 367.44
GPU Accelerated Windows   0/1 Basic (OMTC)
Supports Hardware H264 Decoding   No;
Vendor ID   NVIDIA Corporation
WebGL Renderer   NVIDIA Corporation -- GeForce GT 610/PCIe/SSE2
windowLayerManagerRemote   true
AzureCanvasBackend   cairo
AzureContentBackend   cairo
AzureFallbackCanvasBackend   none
AzureSkiaAccelerated   0
CairoUseXRender   1
Firefox 50.1.0 information about video acceleration:
Code:
Graphics
Features
Compositing   Basic
Asynchronous Pan/Zoom   none
WebGL Renderer   NVIDIA Corporation -- GeForce GT 610/PCIe/SSE2
WebGL2 Renderer   (no info)
Hardware H264 Decoding   No
Audio Backend   alsa
GPU #1
Active   Yes
Description   NVIDIA Corporation -- GeForce GT 610/PCIe/SSE2
Vendor ID   NVIDIA Corporation
Device ID   GeForce GT 610/PCIe/SSE2
Driver Version   4.5.0 NVIDIA 367.44
Diagnostics
AzureCanvasAccelerated   0
AzureCanvasBackend   skia
AzureContentBackend   cairo
AzureFallbackCanvasBackend   none
CairoUseXRender   0
Decision Log
HW_COMPOSITING  blocked by default: Acceleration blocked by platform
OPENGL_COMPOSITING  unavailable by default: Hardware compositing is disabled
Thanks.
 
OP
D

Deleted member 45312

Guest


No it isn't and it works accelerated for years until Firefox 50.0 came out.
Firefox 49 was working good and Firefox 45.6.0 which I use currently also.
Since Firefox 50.0 scrolling is slower and I get some glitches when playing video on Youtube.
 
OP
D

Deleted member 45312

Guest


In about:config I had to put layers.acceleration.force-enabled=true to get back acceleration.
Troubleshooting Information for Firefox 50.1.0 is now saying :
Code:
Compositing  OpenGL
AzureCanvasBackend  skia
Before Firefox 50 it was OMTC with cairo and it seems to me that it was faster. Something to investigate more deeply.
 

drhowarddrfine

Son of Beastie

Reaction score: 1,455
Messages: 3,516

fwiw, I noticed a slowdown with Firefox but haven't taken the time to find the reason so I'm hoping this is it.
 

cpm@

Moderator
Staff member
Moderator
Developer

Reaction score: 947
Messages: 2,140

You can change to cairo instead of skia via about:config preferences
Code:
gfx.canvas.azure.backends = cairo
gfx.content.azure.backends = cairo
gfx.canvas.azure.accelerated = true
 

drhowarddrfine

Son of Beastie

Reaction score: 1,455
Messages: 3,516

From looking around, it seems this may have been turned off by default since as far back as version 40. The solution is what you provided:

In about:config, change layers.acceleration.force-enabled to true
 

cpm@

Moderator
Staff member
Moderator
Developer

Reaction score: 947
Messages: 2,140

OP
D

Deleted member 45312

Guest


I remember I tried to put layers.acceleration.force-enabled to true before, but there was display problems. It seems those disappears with ff50.
But before ff50, rendering was very fast with cairo + XRender. No need to force hardware acceleration (OpenGL).
 
OP
D

Deleted member 45312

Guest


You can change to cairo instead of skia via about:config preferences
Code:
gfx.canvas.azure.backends = cairo
gfx.content.azure.backends = cairo
gfx.canvas.azure.accelerated = true
Done, but I added
Code:
gfx.xrender.enabled = true
gfx.canvas.azure.accelerated does not exist in about:config of ff50 nor layers.offmainthreadcomposition.enabled, so no OMTC.
With that tuning, acceleration went back with cairo + XRender.
But I don't know which one I will use between cairo + XRender and OpenGL. To see.
 

teo

Aspiring Daemon

Reaction score: 24
Messages: 580

Very interesting topic, the same thing happens with the high consumption of the CPU at 100% when browsing in Firefox, the machine overheats.


 
OP
D

Deleted member 45312

Guest


I made some performance tests :
  • ff50 with cairo + XRender takes less CPU than with OpenGL hardware acceleration (82% idle while playing Youtube video).
  • ff45 with cairo + XRender + OMTC takes a little more CPU than ff50 with cairo + XRender (75% idle while playing Youtube video).
So I think I will keep cairo + XRender for now.

Very interesting topic, the same thing happens with the high consumption of the CPU at 100% when browsing in Firefox, the machine overheats.
I think you should open a new thread and give us more information about your hardware and software environment.
 

teo

Aspiring Daemon

Reaction score: 24
Messages: 580

dlegrand said:
I think you should open a new thread and give us more information about your hardware and software environment.
I opened a new thread, but no one has given a solution. :(
 

teo

Aspiring Daemon

Reaction score: 24
Messages: 580

dlegrand said:
So, we need more information to reply.
As stated above, when you open Firefox, the consumption of resources of the machine, shoots up to 100%, and starts to heat the computer.
This updated the system and its applications.

Navigating using the launch of Firefox from terminal , and the results:

$ firefox
Code:
(firefox:1785): Gtk-WARNING **: Theme parsing error: gtk-contained.css:579:12: 'min-height' is not a valid property name

(firefox:1785): Gtk-WARNING **: Theme parsing error: gtk-contained.css:589:18: '-gtk-icon-shadow' is not a valid property name

(firefox:1785): Gtk-WARNING **: Theme parsing error: gtk-contained.css:594:13: 'min-width' is not a valid property name

(firefox:1785): Gtk-WARNING **: Theme parsing error: gtk-contained.css:614:20: '-gtk-icon-shadow' is not a valid property name

(firefox:1785): Gtk-WARNING **: Theme parsing error: gtk-contained.css:711:51: Missing name of pseudo-class

(firefox:1785): Gtk-WARNING **: Theme parsing error: gtk-contained.css:2887:22: Not a valid image
1482960133042   addons.update-checker   WARN   Update manifest for firefox@getpocket.com did not contain an updates property
1482960134167   addons.update-checker   WARN   Update manifest for webcompat@mozilla.org did not contain an updates property
1482960134495   addons.update-checker   WARN   Update manifest for aushelper@mozilla.org did not contain an updates property
1482960134931   addons.update-checker   WARN   Update manifest for e10srollout@mozilla.org did not contain an updates property
1482960134975   addons.update-checker   WARN   Update manifest for {972ce4c6-7e08-4474-a285-3208198ce6fd} did not contain an updates property
1482960137945   addons.update-checker   WARN   Update manifest for langpack-gl@firefox.mozilla.org did not contain an updates property
console.error:
  Message: TypeError: this.listener is not a function
  Stack:
    Observer<.observe@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/system/events.js:81:7
Sanitizer.prototype.items.cookies.clear<@chrome://browser/content/sanitize.js:262:13
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
Sanitizer.prototype._sanitize<@chrome://browser/content/sanitize.js:167:33
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
Sanitizer.prototype.sanitize<@chrome://browser/content/sanitize.js:68:19
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
sanitizeOnShutdown<@chrome://browser/content/sanitize.js:870:9
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
Sanitizer.onStartup</<@chrome://browser/content/sanitize.js:842:11
Barrier/this.client.addBlocker/promise</trigger@resource://gre/modules/AsyncShutdown.jsm:720:23
Barrier.prototype<._wait@resource://gre/modules/AsyncShutdown.jsm:867:7
Barrier.prototype<.wait@resource://gre/modules/AsyncShutdown.jsm:851:28
nsAsyncShutdownBarrier.prototype.wait@resource://gre/components/nsAsyncShutdown.js:214:5
nsAsyncShutdownClient.prototype.addBlocker/moduleBlocker/<@resource://gre/components/nsAsyncShutdown.js:157:15
Promise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:388:5
nsAsyncShutdownClient.prototype.addBlocker/moduleBlocker@resource://gre/components/nsAsyncShutdown.js:153:29
Barrier/this.client.addBlocker/promise</trigger@resource://gre/modules/AsyncShutdown.jsm:720:23
Barrier.prototype<._wait@resource://gre/modules/AsyncShutdown.jsm:867:7
Barrier.prototype<.wait@resource://gre/modules/AsyncShutdown.jsm:851:28
Spinner.prototype.observe@resource://gre/modules/AsyncShutdown.jsm:534:17
$
 
Top