RenderingNG layihəsi tərəfindən həyata keçirilən Chromium optimallaşdırma nəticələri

Chromium tərtibatçıları Chrome-un performansını, etibarlılığını və genişlənməsini artırmaq üçün davamlı işlərə yönəlmiş 8 il əvvəl istifadəyə verilmiş RenderingNG layihəsinin ilk nəticələrini yekunlaşdırıblar.

Məsələn, Chrome 94 ilə müqayisədə Chrome 93-də əlavə edilmiş optimallaşdırmalar səhifənin göstərilməsində gecikmənin 8% azalması və batareyanın ömrünün 0.5% artması ilə nəticələndi. Chrome-un istifadəçi bazasının ölçüsünə əsasən, bu, hər gün 1400 ildən çox CPU vaxtına qlobal qənaət deməkdir. Əvvəlki versiyalarla müqayisədə müasir Chrome qrafikləri 150%-dən çox daha sürətli təqdim edir və problemli aparatda GPU sürücüsünün qəzalarına 6 dəfə az həssasdır.

Performans artımına nail olmaq üçün həyata keçirilən üsullar arasında GPU tərəfində müxtəlif piksellərin rasterləşdirmə əməliyyatlarının paralelləşdirilməsini və prosessorların müxtəlif CPU nüvələri arasında daha aktiv paylanmasını (JavaScript-in icrası, səhifənin sürüşdürülməsi, videoların və şəkillərin dekodlanması, proaktiv render) qeyd etdik. məzmun). Aktiv paralelləşdirmə üçün məhdudlaşdırıcı amil CPU-da artan yükdür, bu, temperaturun yüksəlməsi və artan enerji istehlakı ilə əks olunur, buna görə də performans və enerji istehlakı arasında optimal tarazlığa nail olmaq vacibdir. Məsələn, batareya gücü ilə işləyərkən, göstərmə sürətini qurban verə bilərsiniz, lakin ayrıca bir mövzuda sürüşdürmə emalını qurban verə bilməzsiniz, çünki interfeysin həssaslığının azalması istifadəçi üçün nəzərə çarpacaqdır.

RenderingNG layihəsi çərçivəsində həyata keçirilən texnologiyalar kompozisiyaya yanaşmanı tamamilə dəyişdirir və ekran həlli və yeniləmə dərəcəsi kimi xüsusiyyətləri nəzərə alaraq səhifələrin ayrı-ayrı hissələrinə münasibətdə GPU və CPU-da hesablamaları optimallaşdırmaq üçün müxtəlif texnologiyalardan adaptiv şəkildə istifadə etməyə imkan verir. , həmçinin Vulkan, D3D12 və Metal kimi qabaqcıl qrafik API-lərə dəstək sistemində olması. Optimallaşdırma nümunələrinə GPU teksturalarının keşləşdirilməsinin aktiv istifadəsi və veb səhifələrin hissələrinin nəticələrinin göstərilməsi, həmçinin render zamanı istifadəçiyə görünən səhifənin yalnız sahəsinin nəzərə alınması daxildir (şəkillərin hissələrini göstərməyin mənası yoxdur). digər məzmunun əhatə etdiyi səhifə).

RenderingNG-nin mühüm elementi həmçinin səhifələrin müxtəlif hissələrini emal edərkən performansı təcrid etməkdir, məsələn, iframe-lərdə reklamların göstərilməsi, animasiyaların göstərilməsi, audio və videoların səsləndirilməsi, məzmunun sürüşdürülməsi və JavaScript-in icrası ilə bağlı hesablamaları təcrid etməkdir.

RenderingNG layihəsi tərəfindən həyata keçirilən Chromium optimallaşdırma nəticələri

Tətbiq edilmiş optimallaşdırma üsulları:

  • Chrome 94 veb-səhifələrin ayrı-ayrılıqda göstərilən hissələrinin birləşməsini təmin edən və GPU-dakı yükü dinamik şəkildə miqyaslandırmağa imkan verən CompositeAfterPaint mexanizmini təklif edir. İstifadəçi telemetriya məlumatlarına görə, yeni kompozisiya sistemi sürüşmə gecikməsini 8% azaldıb, istifadəçi təcrübəsinin cavab vermə qabiliyyətini 3% artırıb, göstərmə sürətini 3% artırıb, GPU yaddaş istehlakını 3% azaldıb və batareyanın ömrünü 0.5% artırıb.
  • GPU tərəfi rasterləşdirmə mühərriki olan GPU Raster 2020-ci ildə bütün platformalarda təqdim edilib və MotionMark göstəricilərini orta hesabla 37%, HTML ilə əlaqəli göstəriciləri isə 150% sürətləndirib. Bu il GPU Raster, Canvas elementlərini göstərmək üçün GPU tərəfi sürətləndirmədən istifadə etmək imkanı ilə təkmilləşdirildi, nəticədə konturların 1000% daha sürətli göstərilməsi və 1.2% daha sürətli MotionMark 130 göstəriciləri əldə edildi.
  • LayoutNG etibarlılığı və proqnozlaşdırıla bilənliyi artırmağa yönəlmiş səhifə elementlərinin tərtibatı alqoritmlərinin tam yenidən dizaynıdır. Layihənin bu il istifadəçilərə təqdim edilməsi planlaşdırılır.
  • BlinkNG - Blink mühərrikinin refaktorinqi və təmizlənməsi, pəncərədəki obyektlərin görünməsini nəzərə alaraq keşləmə səmərəliliyini artırmaq və tənbəl göstərməni sadələşdirmək üçün göstərmə əməliyyatlarını ayrıca icra olunan mərhələlərə bölmək. İşlərin bu il başa çatdırılması nəzərdə tutulub.
  • Ayrı-ayrı mövzulara sürüşdürmə, animasiya və təsvirin dekodlanması işləyicilərinin köçürülməsi. Layihə 2011-ci ildən inkişaf edir və bu il o, cizgi CSS çevrilmələrini və SVG animasiyalarını ayrı-ayrı mövzulara ixrac etmək imkanı əldə edib.
  • VideoNG veb səhifələrdə video oynamaq üçün səmərəli və etibarlı mühərrikdir. Bu il qorunan məzmunu 4K təsvir ölçüsündə göstərmək imkanı tətbiq edilib. HDR dəstəyi əvvəllər əlavə edilib.
  • Viz - brauzer interfeysinin göstərilməsini səhifə məzmununun göstərilməsindən ayıraraq rasterləşdirmə (OOP-R - prosesdən kənar Raster) və göstərmə (OOP-D - prosesdən kənar displey kompozitoru) üçün ayrıca proseslər. Layihə həmçinin platformaya məxsus qrafik API-lərdən (Vulkan, D3D12, Metal) istifadə edən SkiaRenderer prosesini inkişaf etdirir. Dəyişiklik qrafika drayverlərindəki problemlərə görə qəzaların sayını 6 dəfə azaltmağa imkan verib.

Mənbə: opennet.ru

Добавить комментарий