PHP 8.5 release page causes excessive GPU usage due to animated SVG background
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 65/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- css, php
- Domínio
- frontend, performance
Direção de pesquisa
Start with the .hero-bg SVG and its CSS animations on the PHP 8.5 release page at /releases/8.5/en.php; compare GPU usage with the background disabled and check whether a prefers-reduced-motion fallback is present. Done means the decorative background no longer causes excessive GPU usage while idle, with reduced-motion preferences respected.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Affected Page URL
https://www.php.net/releases/8.5/en.php
Describe the bug
The PHP 8.5 release page causes unusually high and continuous GPU usage while the page is idle.
On my system, simply leaving the page open results in approximately:
- Firefox: 75–100% GPU usage
- Microsoft Edge: ~12% GPU usage
There is no user interaction occurring and the page is otherwise completely idle.
The issue appears to be caused by the animated SVG used as .hero-bg in the hero section.
The SVG contains three full-size <rect> elements using radial gradients. Each one is wrapped in nested <g> elements and several independent infinite CSS transform animations are applied:
.hero-orb-1-x { animation: hero-orb1-x 10s linear infinite alternate }
.hero-orb-1-y { animation: hero-orb1-y 10.5s linear infinite alternate }
.hero-orb-1-r { animation: hero-orb-rotate-fwd 7s linear infinite }
.hero-orb-2-x { animation: hero-orb2-x 11.5s linear infinite alternate }
.hero-orb-2-y { animation: hero-orb2-y 12s linear infinite alternate }
.hero-orb-2-r { animation: hero-orb-rotate-fwd 12s linear infinite }
.hero-orb-3-x { animation: hero-orb3-x 12.5s linear infinite alternate }
.hero-orb-3-y { animation: hero-orb3-y 6s linear infinite alternate }
.hero-orb-3-r { animation: hero-orb-rotate-rev 9s linear infinite }
Steps to reproduce
- Open https://www.php.net/releases/8.5/en.php in Firefox.
- Leave the page idle on the hero section for a few seconds.
- Open Windows Task Manager and check GPU utilization.
- Observe that GPU utilization rises to approximately 100% and remains very high while the page is visible.
- Disable or remove the
.hero-bgSVG / its animations in DevTools and observe the GPU utilization.
Expected behavior
An idle release/documentation page should consume negligible GPU resources.
A purely decorative background animation should not continuously saturate or significantly load the GPU.
Screenshots
Additional context
The screenshot was taken in Firefox on Windows with an NVIDIA GeForce RTX 4070 Laptop GPU. GPU utilization reaches 100% while the page is simply displayed and no user interaction is taking place.
For comparison, Microsoft Edge on the same page uses approximately 12% GPU, which is substantially lower but still unusually high for a decorative background effect.
The performance issue appears to be associated with the animated .hero-bg SVG. It contains three full-size radial-gradient rectangles with multiple nested, continuously running CSS transform animations.
The current implementation also does not appear to provide a prefers-reduced-motion fallback for these animations.
- Linguagem predominante
- PHP
- Estrelas
- 1.1k
- Forks
- 641
- Merge médio
- 1d 8h
- PRs com merge (30d)
- 15
Preparar o ambiente
Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de php/web-php
-
Page: downloads
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
php/web-php#1946 · 2 reações ·
Mantenedores costumam responder em até 1 dia
-
Page: downloads
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
Bug Status: Needs Triage
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
php/web-php#1906 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
Bug Status: Needs Triage
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 45/100
php/web-php#1905 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
-
Bug Status: Needs Triage
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 50/100
php/web-php#1878 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de php/web-php
Issues semelhantes
-
cloning objets from planningAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
glpi-project/glpi#25922 ·
Mantenedores costumam responder em até 1 dia
-
Translation TwigBridge
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
symfony/symfony-docs#23308 ·
Mantenedores costumam responder em até 3 dias
-
sync-en
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 84/100
Mantenedores costumam responder em até 1 dia
-
sync-en
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 84/100
Mantenedores costumam responder em até 4 dias
-
Перевод устарел
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100