Натиҷаҳои оптимизатсияи Chromium, ки аз ҷониби лоиҳаи RenderingNG амалӣ карда мешавад

Таҳиягарони Chromium натиҷаҳои аввалини лоиҳаи RenderingNG-ро, ки 8 сол пеш оғоз шуда буд, ҷамъбаст карданд, ки ба кори доимӣ барои баланд бардоштани самаранокӣ, эътимоднокӣ ва васеъшавии Chrome нигаронида шудааст.

Масалан, оптимизатсияҳое, ки дар Chrome 94 дар муқоиса бо Chrome 93 илова карда шудаанд, боиси 8% кам шудани таъхири намоиши саҳифа ва 0.5% зиёд шудани мӯҳлати батарея гардид. Бар асоси андозаи пойгоҳи корбарии Chrome, ин сарфаи глобалии беш аз 1400 соли вақти CPU дар ҳар рӯз аст. Дар муқоиса бо версияҳои қаблӣ, Chrome муосир графикҳоро беш аз 150% тезтар медиҳад ва ба садамаҳои драйвери GPU дар сахтафзорҳои мушкил 6 маротиба камтар осебпазир аст.

Дар байни усулҳои амалӣ барои ноил шудан ба дастовардҳои кор, мо параллелизатсияи амалиёти растеризатсияи пикселҳои гуногунро дар тарафи GPU ва тақсимоти фаъолтари протсессорҳоро дар ядроҳои гуногуни CPU (иҷрои JavaScript, коркарди ҳаракати саҳифаҳо, рамзкушоӣ кардани видеоҳо ва тасвирҳо, намоиши фаъолонаи мазмун). Омили маҳдудкунандаи параллелизатсияи фаъол афзоиши сарбории CPU мебошад, ки бо болоравии ҳарорат ва афзоиши истеъмоли қувваи барқ ​​инъикос меёбад, аз ин рӯ ноил шудан ба мувозинати оптималии байни кор ва истеъмоли нерӯ муҳим аст. Масалан, ҳангоми кор бо қувваи батарея, шумо метавонед суръати намоишро қурбон кунед, аммо шумо наметавонед коркарди ҳаракатро дар як риштаи алоҳида қурбон кунед, зеро коҳиши вокуниши интерфейс ба корбар намоён хоҳад шуд.

Технологияҳое, ки дар доираи лоиҳаи RenderingNG татбиқ мешаванд, равишро ба композитсия комилан тағир медиҳанд ва ба шумо имкон медиҳанд, ки технологияҳои гуногунро барои оптимизатсияи ҳисобҳо дар GPU ва CPU нисбат ба қисмҳои алоҳидаи саҳифаҳо бо назардошти чунин хусусиятҳо ба монанди ҳалли экран ва суръати навсозӣ истифода баред. , инчунин мавҷудият дар системаи дастгирии API графикаи пешрафта, ба монанди Vulkan, D3D12 ва Metal. Намунаҳои оптимизатсияҳо истифодаи фаъоли кэшкунии матнҳои GPU ва намоиш додани натиҷаҳои қисмҳои саҳифаҳои веб, инчунин ба назар гирифтани танҳо майдони саҳифаи ба корбар ҳангоми визуалӣ намоёнро дар бар мегиранд (барои додани қисмҳои он ҳеҷ маъное нест. саҳифае, ки бо мундариҷаи дигар фаро гирифта шудаанд).

Унсури муҳими RenderingNG инчунин ҷудо кардани иҷроиш ҳангоми коркарди қисмҳои гуногуни саҳифаҳо мебошад, масалан, ҷудо кардани ҳисобҳои марбут ба хидматрасонии таблиғот дар iframes, намоиши аниматсияҳо, навохтани аудио ва видео, паймоиши мундариҷа ва иҷрои JavaScript.

Натиҷаҳои оптимизатсияи Chromium, ки аз ҷониби лоиҳаи RenderingNG амалӣ карда мешавад

Усулҳои оптимизатсияи татбиқшуда:

  • Chrome 94 механизми CompositeAfterPaint-ро пешниҳод мекунад, ки маҷмӯи қисмҳои алоҳидаи саҳифаҳои вебро таъмин мекунад ва ба шумо имкон медиҳад, ки сарбориро дар GPU динамикӣ миқёс кунед. Тибқи маълумоти телеметрии корбар, системаи нави таркибӣ таъхири ҳаракатро 8% коҳиш дод, посухгӯии таҷрибаи корбарро 3% афзоиш дод, суръати намоишро 3% афзоиш дод, истеъмоли хотираи GPU-ро 3% кам кард ва мӯҳлати батареяро 0.5% дароз кард.
  • GPU Raster, як муҳаррики растеризатсияи паҳлӯи GPU, дар соли 2020 дар тамоми платформаҳо ҷорӣ карда шуд ва нишондиҳандаҳои MotionMark-ро ба ҳисоби миёна 37% ва нишондиҳандаҳои марбут ба HTML 150% суръат бахшид. Имсол, GPU Raster бо қобилияти истифодаи шитоби паҳлӯи GPU барои намоиш додани унсурҳои Canvas такмил дода шуд, ки дар натиҷа 1000% тезтар намоиши контур ва 1.2% тезтар нишондиҳандаҳои MotionMark 130 гардид.
  • LayoutNG як тарҳи пурраи алгоритмҳои тарҳбандии унсурҳои саҳифа мебошад, ки ба баланд бардоштани эътимоднокӣ ва пешгӯишаванда нигаронида шудааст. Қарор аст, ки лоиҳа имсол ба истифодабарандагон пешкаш карда шавад.
  • BlinkNG - рефакторинг ва тоза кардани муҳаррики Blink, тақсим кардани амалиёти визуалӣ ба марҳилаҳои алоҳида иҷрошуда барои баланд бардоштани самаранокии кэш ва содда кардани намоиши танбал бо назардошти намоёнии объектҳо дар тиреза. Имсол ба анчом расондани кор пешбинй шудааст.
  • Гузаронидани коркардкунандагони ҳаракат, аниматсия ва рамзкушоӣ ба риштаҳои ҷудогона. Лоиҳа аз соли 2011 инҷониб рушд мекунад ва имсол он имкони содироти трансформатсияҳои аниматсионии CSS ва аниматсияҳои SVG ба риштаҳои ҷудогонаро ба даст овард.
  • VideoNG як муҳаррики муассир ва боэътимод барои навозиш видео дар саҳифаҳои интернетӣ мебошад. Имсол, қобилияти намоиш додани мундариҷаи муҳофизатшуда дар ҳалли 4K амалӣ карда шуд. Дастгирии HDR қаблан илова карда шуда буд.
  • Viz - равандҳои ҷудогона барои растеризатсия (OOP-R - Растр берун аз раванд) ва рендеринг (OOP-D - Композитори намоиши берун аз раванд), ҷудо кардани намоиши интерфейси браузер аз намоиши мундариҷаи саҳифа. Лоиҳа инчунин раванди SkiaRenderer-ро таҳия мекунад, ки API-ҳои графикии платформаи мушаххасро истифода мебарад (Vulkan, D3D12, Metal). Тағйирот имкон дод, ки шумораи садамаҳо аз сабаби мушкилот дар драйверҳои графикӣ 6 маротиба кам карда шавад.

Манбаъ: opennet.ru

Илова Эзоҳ