Google поліпшить роботу Chrome з пам’яттю у Windows 10
У цьому місяці Google випустила Chrome 87, з яким браузер отримав найбільший приріст продуктивності за останні роки. Хоча оглядач став працювати ще швидше, він як і раніше витрачає багато оперативної пам’яті, що не подобається багатьом користувачам. Тепер же стало відомо про те, що Google працює над тим, щоб істотно зменшити обсяг споживаної під час роботи Chrome оперативної пам’яті.
За даними джерела, інженери Google працюють над функцією PartitionAlloc FastMalloc, завдяки якій рівень використання активної пам’яті для певних процесів не буде перевищувати 10%. Іншими словами, Google має намір поліпшити управління оперативною пам’яттю та кешуванням, щоб зробити браузер більш продуктивним і менш ресурсномістким.
Спочатку Google планувала використовувати для зниження обсягу споживаної Chrome пам’яті функцію Segment Heap («сегмент купи»). Ця функція допомогла розробникам з Microsoft скоротити обсяг споживаної пам’яті браузером Edge на базі Chromium на 27%. Нагадаємо, «купою» прийнято називати спосіб організації динамічної пам’яті комп’ютера. Під «купу» ОС визначає частину оперативної пам’яті, яка може виділятися за запитом будь-якої програми під час його роботи. Схоже, що Google вирішила повністю відмовитися від використання Segment Heap, оскільки Microsoft не реалізували можливість контролю типів купи. Також виявилося, що Segment Heap викликає зниження продуктивності в процесах, які інтенсивно використовують ЦП.
Таким чином, Google розраховує знизити обсяг споживаної пам’яті за допомогою згаданої вище функції, повністю відмовившись від використання Segment Heap. Функція PartitionAlloc FastMalloc дозволить розподіляти пам’ять для одночасного підвищення безпеки та продуктивності. При її активації кількість операцій в Chrome буде оптимізовано, що дозволить надзвичайно швидко розподіляти ресурси в процесі роботи.
Згідно з наявними даними, згадана функція вже була включена в Chrome Canary. Очікується, що вона стане доступна в стабільних версіях оглядача в наступному році.