iOS pourrait aussi compresser la mémoire

Anthony Nelzin-Santos |

À l’occasion du développement d’OS X Mavericks, Apple a revu des pans entiers du noyau XNU, en lui apportant par exemple un mécanisme de compression de la mémoire. Or iOS est lui aussi basé sur le noyau XNU : selon le chercheur en sécurité Will Estes, il dispose aussi de ce mécanisme de compression.


Traditionnellement, lorsque le système a besoin de mémoire, il écrit la mémoire inactive sur le disque avant de la libérer. Cette opération de swapping ralentit les opérations : les plus lents des modules de RAM utilisés par Apple sont douze fois plus rapides que les SSD des MacBook Pro Retina les plus performants (12,5 Go/s contre 1 Go/s), et même 135 fois plus rapides que le veau de disque dur 2,5 pouces de l’iMac 21,5 pouces (80 Mo/s).

Plutôt que de swapper, OS X Mavericks compresse d’abord la mémoire pour libérer de l’espace, ce qui est très rapide puisque les Mac sont très puissants : il peut ainsi caser l’équivalent de 6 Go de données sur 4 Go de RAM. Si cela ne suffit pas, l’écriture sur le disque est tout de même un peu plus rapide puisque les données sont compressées.

iOS 7 dispose lui aussi de ce mécanisme, mais il est inactif pour le moment : les iPhone et les iPad ne sont peut-être pas encore assez puissants pour que la compression soit suffisamment rapide et transparente pour avoir un réel impact. Reste qu’à l’exception d’un algorithme de compression adapté aux spécificités des appareils iOS, toutes les briques sont en place pour qu’Apple active la compression de la mémoire sur de futurs iPhone et iPad.

avatar FabienR. | 
Et pendant ce temps les fanboys Android crachent sur Apple et se la pètent par ce qu'ils ont 3Go de RAM quelle triste "communauté"...
avatar kalynoh | 
Parce que la ram est une fuite constante d'énergie, cette mémoire nécessite d'être alimenté en permanence même quand elle n'est pas sollicité. Du coup limiter le volume de ram permet d'économiser de la batterie, ce qui n'est pas négligeable sur les smartphones dont le principal soucis aujourd'hui est l'autonomie. Ca ne consomme pas autant que l'écran ou la puce GPS, mais une petite économie par ci et une petite économie par là ça fini par faire une bonne économie (de la même façon que le système de google qui permet d'adapter l'émission de l'antenne en fonction de la qualité de réception, ça n'économise pas beaucoup, mais c'est un petit plus).
avatar eipem | 
@iguanodon : 'C'est plus complexe que ça n'en a l'air quand il s'agit d'autonomie.' Oui. Et il semble qu'avec un algo adapté il soit plus économe de compresser la RAM que d'en alimenter plus. Apple a tout intérêt à vendre plus de RAM sur ses machines, vu la marge qu'elle se fait. Mais il n'est pas question que ça se fasse au détriment de l'autonomie. C'est son argument principal. Bien au delà de toute considération de puissance.
avatar eipem | 
"Sur un ordi, étant donné que ça permet de limiter l'accès au swap, soit. On peut en déduire que ça permet de gagner en autonomie sur une MEME machine (même quantité de RAM). Mais comparé à un PC identique avec plus de RAM de base ?" C'est bien la question posée. Est-ce qu'il vaut mieux alimenter 4Go de RAM et la compresser le cas échéant ou alimenter 6Go de RAM en permanence. Si tu utilises en permanence tes 6Go de RAM mais sans jamais swaper, c'est sans doute plus économe que 4Go +2 compressés. Si tu ne dépasses que rarement les 4Go, la compression est sans doute la plus économe. "En revanche sur un mobile ou il n'y a pas de gestion de swap ..." Effectivement, iOS ne Swape pas. Pas plus qu'il ne compresse la mémoire d'ailleurs. "Ha bon, on peut choisir la quantité de RAM sur un iPhone ? Alors pas de problème, j'en prends 4Go svp." Ce n'est pas le sujet. Je ne sais pas si t'as un peu regardé la politique tarifaire d'Apple ces derniers temps mais s'il y a bien un truc dont elle se fout c'est d'augmenter ses prix. Donc je persiste à croire que si Apple ne met pas plus de RAM dans ses téléphones ce n'est pas par souci d'économie d'argent mais plutôt par souci d'autonomie.
avatar kalynoh | 
Et comme toujours avec android pour avoir un truc à la hauteur, faut mettre les mains dans le cambouis... Le jour où android se mettra à vraiment faire des choses intéressante sans devoir faire le boulot pour lequel on paie les constructeur développeur, là on pourra dire qu'android à de l'avance, pour le moment c'est juste un bac à sable dans lequel il faut tout faire soit même...
avatar iceteax | 
Cette fonction est intéressante mais au risque de calmer les ardeurs de quelques lobotomisés du début de la file : _Apple n'a rien inventé, ce type de compression est en train d'être généralisée sur tous les systèmes. Android aussi le fera certainement bientôt. _1Go de ram seulement pour le nouvel iphone et ipad, c'est ultra mesquin. Ce sont des machines merveilleuses, mais c'est un gros défaut. Le multitâche est presque impossible, passer d'un programme à l'autre implique de relancer le programme, et même souvent passer d'un onglet à l'autre dans le navigateur implique de recharger la page. Et c'est encore plus vrai sur iOS 7 et A7, car le noyau 64 bits est bien plus volumineux qu'en 32 bits. _Non, iOS n'est pas plus optimisé qu'Android (sauf quand il y a une surcouche codée avec les pieds, et encore ça ne pèse pas si lourd) et on ne fait pas la même chose avec 1Go qu'avec 2. Les programmes sont aussi lourds d'un système à l'autre. Compression ou pas, les 1Go de mémoire sont un défaut rédhibitoire à mes yeux et j'attends, par exemple, qu'Apple passe à 2Go pour changer mon vieil iPad 2 (qui, avec 512Mo, est strictement incapable de faire du multitâche ou d'avoir plus de 2 onglets chargés en même temps, ça c'est sûr). La pérennité d'un appareil avec beaucoup de mémoire est largement supérieure à celle d'un appareil où on met le strict minimum comme le fait Apple. Je ne crois pas aux théories de l'obsolescence programmée, mais il est clair que rendre le système lent au bout de 1 ou 2 mises à jour de l'OS est une situation qui leur plaît bien car ça incite à renouveler. Et arrêtez de nous faire rire avec la consommation électrique d'1Go supplémentaire, c'est du pipeau.
avatar Mister_sam32 | 
Super je suis rassuré.

CONNEXION UTILISATEUR