Internet devient inutilisable sur un smartphone d'entrée de gamme… et c'est la faute de l'iPhone

Pierre Dandumont |

Surfer sur le web peut être très consommateur en ressources, à tel point que cela peut poser problème à des smartphones d’entrée de gamme même récents. Ce n'est pas forcément évident, mais charger une page contenant énormément de JavaScript peut nécessiter bien plus de puissance que lire une vidéo en Ultra HD. C’est ce que démontre l’ingénieur Dan Luu avec beaucoup de détails.

C'est un thème que nous avons déjà évoqué : alors que certains pensent encore que lire une vidéo est quelque chose de lourd pour un ordinateur, ce n'est plus réellement le cas. L'accélération matérielle est efficace (quand elle existe) et même un décodage logiciel demande moins de puissance que le rendu de certaines pages modernes.

Le Tecno Spark 8C, un smartphone d'entrée de gamme populaire dans certaines régions.

Sur son blog, Dan Luu a comparé le temps nécessaire pour charger les pages de plusieurs sites populaires sur différents appareils. Il y a des Mac à base de M1 Pro, M3 et M3 Max, mais surtout deux smartphones d'entrée de gamme largement employés dans les pays émergents. Le premier, le Tecno Spark 8C, est équipé d'un système sur puce avec huit cœurs, dont deux cœurs performants Cortex A75 à 1,8 GHz (l'architecture haut de gamme de 2017). Le second, l'Itel P32, se base sur une plateforme bien plus ancienne, avec quatre cœurs Cortex A7 à 1,3 GHz. Dans les deux cas, ce sont donc des appareils d'entrée de gamme à l’équipement un peu daté, mais le premier se trouve par exemple en Inde pour une centaine de dollars.

Des sites modernes qui mettent à genoux les CPU

avatar andmag | 

Hélas la progression dans le temps est souvent assimilée au progrès, terme mythique qui rassure nos cerveaux reptilohumains. À voir le déversement de couches de logiciels pour, parfois, disposer de si peu de choses, ne sommes nous pas un peu trop focalisés sur l’aspect digital qui nous éloigne du lunaire…

avatar nmo | 

“ ne sommes nous pas un peu trop focalisés sur l’aspect digital qui nous éloigne du lunaire…”

Pourtant en approchant le doigt du croissant de lune, on peut obtenir des résultats intéressants.

Mais il est vrai et les propos rapportés de développeurs dans cet article le montrent, les éditeurs préfèrent de plus en plus faire un fuck magistral aux utilisateurs (et à la planète au passage), que de se sortir leur autre digital du croissant de lune et s’atteler à optimiser leur fucking code.

avatar guigus31 | 

@nmo

Ahah pas mal du tout ce petit exposé d’astronomie 👆🌙

avatar fousfous | 

Vous dites que regarder une vidéo ne consomme pas beaucoup de ressources, mais pourtant YouTube fait bien chauffer mon ordinateur de jeu (totalement froid sinon).

avatar benspx | 

@fousfous

Si votre ordinateur est un tant soit peu récent (moins de 10 ans), le décodage des vidéos Youtube s’effectue plus que probablement de manière matérielle, via le GPU, avec une consommation de ressource très faible.

Par contre le site Youtube en tant que tel est une énorme montagne de code et de script, et afficher ce site et toutes ses interactions / contenus dynamique est très lourd, et très consommateur de ressources (à plus forte raison si cumulé à Chrome, qui est lui même un gouffre à ressources, et encore plus si vous êtes connecté a un compte Google, ce qui augmente encore la quantité de scripts et d’interactions avec la machine).

Pour illustrer mon propos, essayez Freetube, un logiciel libre (Windows, MacOS, Linux), qui se lance en local, et permet de visionner les vidéos youtube, s’abonner à des chaînes etc sans compte Google et sans le site Youtube.

Vous constaterez une énorme différence en termes de performances et de chauffe ;-)

https://freetubeapp.io

avatar Bruno de Malaisie | 

@benspx

Est-ce que vous connaissez un équivalent pour iOS ou iPadOS.
Je regarde pas mal YouTube avec mon vieil iPad Pro 11” (Safari, DuckDuckGo en tant que moteur de recherche et Vinegar pour supprimer les pubs)
Le dos de l’iPad est tiède, ce qui n’est jamais le cas autrement, quoi que je fasse avec.
Pas de souci avec mon MacBook Air M1 (même configuration Safari / DuckDuckGo et Vinegar)

avatar balooforever | 

Yattee, avec un serveur Invidious :)

avatar Bruno de Malaisie | 

@balooforever

Je vais regarder!
Merci

avatar benspx | 

@Bruno de Malaisie

Hélas non.

NewPipe sous Android répond parfaitement à ce besoin, mais je ne connais pas d’équivalent sous iOS, désolé. :(

avatar Bruno de Malaisie | 

@benspx

Merci pour ce retour!

avatar pat3 | 

@Bruno de Malaisie

J’utilise Tube Browser (essentiellement parce qu’il fait sauter les pubs YouTube): https://apps.apple.com/fr/app/tube-browser-adblocker/id1447070587

avatar Bruno de Malaisie | 

@pat3

Merci. Je vais tester cela!!!!

avatar raoolito | 

interessant merci !
du ocup youtube est effectivement un exemple parfait du soucis soulevé ci-dessus, on pense que c'est la video mais non, c'est bien le site en lui-meme qui rame.

avatar fousfous | 

@benspx

J'ai une 6800XT, donc en théorie niveau puissance pour décoder les vidéos, j'ai ce qu'il faut (d'ailleurs les autres sites ne posent pas de problèmes).
J'ai quand même l'impression que c'est que quand je regarde les vidéos que ça fait chauffer, pas quand je navigue juste sur YouTube (j'utilise brave et non chrome).

J'essayerai le logiciel pour voir ce que ça donne.

avatar benspx | 

@fousfous

Ce n’est pas une question de puissance, mais d’implémentation matérielle au sein du GPU d’unités de décodage vidéo.

Dans votre cas, une 6800xt, basée sur un GPU Navi 21, en architecture RDNA 2, intègre les décodeurs suivants :

Décodage 4K H264: Oui
Décodage H265/HEVC: Oui
AV1 Decode: Yes

Les vidéos en H264, HEVC et AV1 sont donc décodés matériellement, avec une très faible consommation de ressources.

Si vos drivers sont à jour et que vous utilisez Chrome comme navigateur, il est probable (sous Windows 10 ou 11) que Youtube vous propose les flux en AV1 (facile à vérifier sous Youtube, avec l’option « stats pour les nerds).

Ces flux sont alors décodés par le décodeur matériel de la carte graphique et non par le cpu, ce que vous pouvez très facilement vérifier dans la section « gpu » du gestionnaire de tâches Windows (ctrl / alt / suppr) , sous l’intitulé (de mémoire) « Vidéo Decode ».

Note : le décodeur AV1 des Navi21 est de toute première génération et moins efficace que les suivants. La consommation de ressources GPU sur du AV1 au delà du 1080p sera supérieure à ce qu’elle serait sur un décodeur RDNA 3. Dans votre cas, il n’est pas impossible que le cpu effectue partiellement une partie du décodage.

Dans tous les cas, les drivers de votre GPU vont jouer un rôle non négligeable, il est impératif de les maintenir à jour.

avatar fousfous | 

@benspx

Visiblement je suis en VP1, ce qui pourrait expliquer un manque d'optimisation.
Y a t il moyen de forcer YouTube à utiliser du H265?
Les pilotes sont à jours, bien évidement.

avatar Artefact3000 | 

@benspx

Merci pour Freetube. Je vais tester ça.

avatar benspx | 

@Artefact3000

Cela reste du Chromium encapsulé, en Electron, donc fondamentalement lourd et non optimisé…

… mais cela reste moins lourd que le site Youtube + Chrome ! C’est dire à quel point ce site et ce navigateur sont lourds et gourmands en ressources… :/

avatar gyomba | 

C’est encore timide mais depuis quelques années on commence à parler d’ecoconception dans le milieu du web (ça a vraiment explosé l’an dernier, presque tout le monde se met à en parler).
Et l’un des effets vertueux de cette démarche, c’est qu’elle nous enjoint à plus de sobriété dans les sites que nous concevons, moins de JavaScript, moins d’effet « wow », avec un incitation à ne conserver que les fonctionnalités vraiment utiles.
Autant de concepts qui vont peut-être venir contrebalancer la gourmandise croissante de nos sites.

avatar guigus31 | 

@gyomba

Ça me fait penser au concours « 10k apart » du debut des années 2000, qui consistait à créer des pages web de moins de 10ko !

avatar 9 | 

@gyomba

M'enfin ?! La sainte Église de JavaScript EveryWhere laisse faire ?!

avatar pat3 | 

@gyomba

"plus de sobriété dans les sites que nous concevons, moins de JavaScript, moins d’effet « wow »"

Je pense que le JavaScript est bien utilisé pour la récolte de données, le suivi et la pub, qui n’ont pas d’équivalent en CSS, alors que les effets « wow » sont pour beaucoup développables en CSS.

avatar gyomba | 

@pat3

"Je pense que le JavaScript est bien utilisé pour la récolte de données, le suivi et la pub, qui n’ont pas d’équivalent en CSS, alors que les effets « wow » sont pour beaucoup développables en CSS."

Je cite deux éléments différents : l’usage du JS et la recherche d’effets visuels impressionnants, qu’ils soient obtenus par JS (certaines animations ne sont possibles qu’à grand renfort de JS) ou de CSS.

Pour ce qui est de l’usage du JS, il y a deux grands principes d’amélioration : sobriété des usages et qualité du code.

Avec la sobriété, l’idée est justement de moins récolter de données, de réduire les interfaces complexes, etc. qui nécessitent l’usage du JS. L’idée est de se poser la question à chaque fois : « que vais-je faire de cette information ? Mon utilisateur a-t-il besoin de cette fonctionnalité ? »
Un exemple concret : au lieu d’intégrer Google maps directement dans mon footer (présent sur toutes mes pages !) pour indiquer où se trouve ma boutique (Google maps nécessite bcp de JS), je vais juste mettre l’adresse et un lien vers Google maps pour les utilisateurs qui sont intéressés par cette fonction.

Ensuite il y a la qualité du code. Lune des caractéristiques de JavaScript c’est que c’est un langage très tolérant. On peut faire du très mauvais JavaScript qui marche quand même… et c’est très fréquent ! Il y a pleins de sites aujourd’hui qui utilisent du JS à mauvais escient, par exemple pour reproduire des effets qui pourraient être obtenus par du CSS. Ou alors qui consomment inutilement des ressources parce que les méthodes utilisées ne sont pas du tout optimisées.

Bref. On pourrait parler pendant des heures de l’optimisation des sites (je n’ai même pas évoqué tout ce qu’il est possible de faire côté CSS). Ce qu’il faut retenir c’est qu’il y a plein de choses que l’on retrouve aujourd’hui dans la « nature » qui sont de mauvais usages mais qui perdurent car sans effets directement visibles. Et c’est cette prise de conscience qui est en train d’émerger progressivement dans le métier.

avatar NoID | 

Et avec l'utilisation d'un bloqueur de publicité, quel serait le résultat ? Les pubs et autres outils de suivi consomment un max

Chrome fait s'emballer le processeur windows de mon ordi du boulot alors qu'ils recommandent de l'utiliser pour leur site....
C'est pas mieux 😁

avatar calotype | 

@NoID

Je serais aussi curieux de voir la différence avec et sans aussi. C’est connu, que fut un temps du moins, les pubs et tout les accès de médiametrie et compagnie, peuvent alourdir les processeurs et /ou les accès web.

Mais le pire pour moi, ça reste le p*tain de « faux clic » sur le mauvais lien à cause du décalage de mise en page un dixième de seconde plus tôt dû au chargement décalé d’un bandeaux ou autre élément.
J’imagine que le phénomène est accentué quand le processeur est à la traîne et/ou que ce n’est pas le même serveur qui charge les données et la pub.

avatar balooforever | 

J'aurais bien aimé plus de détail sur la différence M1 Pro / M3. Le M3 est plus rapide dans geekbench en mono et se rapproche fortement en multi, pourquoi est il parfois 3x plus lent ?

avatar balooforever | 

@balooforever

Je me répond à moi même : la bande passante mémoire qui est du simple au double !

avatar oomu | 

javascript est une abomination

le web n'aurait jamais du prendre cette direction d'être une sorte de plateformes applicatives interprétées, mal foutues, non-conçues en un mélange dégueux de css-javascript-cadres javascript ultra consommateurs (jQuery, react...)

tous ces bidules peuvent jurer être rapides et optimisées, c'est tous du gras pour afficher la haine des humaines sur X-Anciennement-Twitter et des pubs de calgon...

(et ne me sortez pas de contre exemples de super site applicatifs super utiles, on sait tous que c'est reddit,, réserver un avion et un formulaire pour écrire ce commentaire aigri , le reste a aucun intérêt)

avatar raoolito | 

voici un contre exemples de super site applicatifs super utiles : https://oomu.universe

avatar hptroll | 

@Pierre

Quel triste titre…
Ce n’est pas l’iPhone qui rend les sites inutilisables mais les développeurs qui choisissent de ne pas s’adresser à tout le marché et ignorent au passage les conséquences environnementales (non seulement au chargement mais surtout les incitations qui en découlent pour renouveler son matériel devenu insuffisant).
Même en suivant la logique de l’article, l’iPhone est victime lui-même (baisse d’autonomie en utilisation Web et sites pénibles à utiliser avec iPhones plus anciens).
Bref, je trouve que c’est vraiment un des titres les pires choisis par Pierre, sans doute destiné à produire du clic.

Ça me rappelle la problématique similaire dans les années 90 : Microsoft sous-optimisant ses OS et les alourdissant de nombreuses fonctionnalités, poussant les utilisateurs à renouveler leur machine sans cesse avec des processeurs Intel plus puissants. Je n’ai pourtant pas souvenir qu’on ait dit à l’époque que c’était la faute d’Intel si les OS de MS étaient lourds..

avatar cricri13009 | 

@hptroll
C’était du second degré ! Mais il manquait peut-être un emoji dans le titre.

avatar raoolito | 

ya un coté "Pierre's touch" qui est desormais connu pour ne pas être tendre avec Apple :D

avatar hptroll | 

@cricri13009

La réponse de Pierre plus bas montre que ce n’était pas du second degré, hélas. En le listant au second degré, c’est plutôt drôle.

avatar cricri13009 | 

@hptroll

avatar Furious Angel | 

Je suis un peu surpris, parce qu’un critère SEO est la rapidité d’affichage des pages. Donc les sites ont un intérêt à être chargés plus vite. Dans la boîte où je suis je sais que ce facteur est pris en compte

avatar Derw | 

@Furious Angel

Tout à fait, c’est même Google qui pousse dans ce sens en utilisant les Core Web Vitals dans son calcul des notes de référencement. Le problème est que la plupart des sites cités n’en ont rien à carrer du référencement : X, Reddit, Patreon,… leurs lecteurs viennent chez eux directement… sans compter qu’à l’inverse, leur modèle économique leur « impose » de mettre plein de JS pour flicquer ces lecteurs.

avatar Furious Angel | 

@Derw

Donc il y a peut-être un biais dans l’étude, parce que ces gros services, on les utilise souvent avec une app plus que sur le web sur smartphone ^^

avatar mapiolca | 

Décidément Apple c’est le diable en ce moment.

avatar Bruno de Malaisie | 

@mapiolca

, c’est toujours le mal pour certains…

avatar Flagada | 

Intéressant aussi de considérer l’impact énergétique des langages de programmation côté serveur, où l’on s’aperçoit que PHP est une horreur, mais loin d’égaler Python (pour ne citer que les langages les plus répandus pour l’hébergement/déploiement des plateformes web) :

https://programmation.developpez.com/actu/253829/Programmation-une-etude-revele-les-langages-les-plus-voraces-en-energie-Perl-Python-et-Ruby-en-tete-C-Rust-et-Cplusplus-les-langages-les-plus-verts/

🤢

avatar raoolito | 

python c'est pire que php, c cela ? (nubby, desole)

avatar Florent Morin | 

@Flagada

Swift est très peu consommateur sur le web, probablement à peine plus que C ou Rust. Mais encore trop peu répandu.

avatar Flagada | 

@FloMo

Exact!

avatar andr3 | 

« Dan Luu explique que les processeurs des iPhone, depuis au moins l'iPhone 5, sont très nettement plus rapides que ceux des équivalents installés dans les smartphones Android »

[mode second degré = ON]
Il est temps que le DoJ US et l’Union européenne se saisissent de l’affaire et impose à Apple de faire des processeurs poussifs.
[mode second degré = OFF]

avatar El-lolo | 

Euh, je veux bien entendre plein de choses sur Apple. Le Dma, le NFC bloqué, etc.

Mais de là à dire que c’est l’iPhone qui plante le développement pour des téléphones bas de gamme ! C’est un poil exagéré quand même.

avatar Pierre Dandumont | 
Et pourtant, c'est le cas. Ce n'est pas la faute d'Apple, certes, mais le fait est que "si ça marche sur un vieille iPhone, c'est bon" réduit les performances pour les autres.
avatar Bigdidou | 

@Pierre Dandumont

« Et pourtant, c'est le cas. Ce n'est pas la faute d'Apple, certes, mais le fait est que "si ça marche sur un vieille iPhone, c'est bon" réduit les performances pour les autres. »

Sauf que ca ne fonctionne plus sur un iPhone non plus dès qu’on ouvre 3 onglets.
Pas obligé de suivre un raisonnement stupide à propos de pratiques toxiques pour les iPhones aussi de ces développeurs qui envahissent et pourrissent le web.
De plus, avoir l’iPhone dans le focus, ca ne changera rien. Pas plus que d’accuser les consommateurs de consommer pour réduire l’esclavage, hein.
Et quand on a réussi à avoir la peau de flash, c’est en s’en prenant à flash, pas à Intel.

C’est vrai,qu’au bout d’un moment, si vous détestez cette plateforme, ca sert à quoi d’écrire dessus ?
Un truc utile, ca vous dit ?
Rien qu’une fois ?

J’ai repris un abonnement, mais je réalise que je suis incapable de citer la dernière news techno utile et un peu construite vue ici à propos d’iOS depuis 3 mois.

avatar Artefact3000 | 

Jadis, avant le déluge, je me souviens d’avoir changé d’ordinateur parce qu’il était rendu trop lent pour visiter les sites web qui avaient de plus en plus d’animations. C’était la principale raison pour changer d’ordinateur. Puis, vinrent les jeux, mais au début, en DOS, ça allait.

avatar Bigdidou | 

Ca devient n’importe quoi, faut admettre. Je ne vois pas en quoi c’est la faute de l’iPhone si effectivement on devient obligé, comme je le disais ailleurs, d’acheter un Mac avec 16 Go de RAM rien que pour ouvrir 3 onglets en même temps tellement certains sites sont codés de façon délirante en bouffant du CPU et de la RAM pour rien, sinon envoyer des tonnes d’infos aux traceurs divers.

Sans cette merde, nos iPhone et nos Mac ne s’en porteraient que mieux, comme nos forfaits DATA, d’ailleurs qui fondent pour nourrir cette indigence.

S’en prendre à l’iPhone est absurde et surtout ne changera rien. La logique voudrait d’ailleurs de s’en prendre aussi dans ce cas aux Android haut de gamme.

avatar pat3 | 

@Bigdidou

"en même temps tellement certains sites sont codés de façon délirante en bouffant du CPU et de la RAM pour rien, sinon envoyer des tonnes d’infos aux traceurs divers."

Ce n’est pas rien, et pas pour rien.

Pages

CONNEXION UTILISATEUR