התנועה של ה ההגירה של X11 ל-Wayland לוקחת כיוון מאוד מעניין, מכיוון שבהתחלה היו מעט יישומים, הפצות וסביבות שהסתכלו על Wayland כאופציה ריאלית לפיתוח עתידי, אבל היום זו כבר לא אופציה, אלא תנועה הכרחית.
בקטע ש NVIDIA, התנועה הזו היא לא משהו חדש, אבל זה לא משהו שקל להם גם, שכן אהרון פלטנר, אחד המפתחים העיקריים ב-NVIDIA, הציע הערכת מצב תאימות בין NVIDIA ל-Wayland.
אהרון מזכיר כי יש צורך בהערכה מאז נדרש מידע על המגבלות הנוכחיות עם תמיכה של Wayland, כמו גם תכונות בלתי צפויות עקב מגבלות של פרוטוקול Wayland ושל שרתים מרוכבים. המידע מתמקד בסניף 565 ומדגיש גם את המגבלות הטכניות של פרוטוקול Wayland וגם אזורים ספציפיים שבהם מנהלי התקן של NVIDIA עדיין נמצאים בפיגור בהשוואה לתמיכה שלהם ב-X11.
נכון לעכשיו, מנהלי התקנים של NVDIA חסרים כמה תכונות, כגון האפשרות של פלט סטריאו עם חוצצים נפרדים (משמאל וימין) באמצעות GLX, EGL או Vulkan, מצב SLI פסיפס המאפשר לשלב מספר GPUs ליחידה לוגית אחת לטיפול בתצורות תצוגה גדולות, אינו נתמך. בנוסף, קופיגורטור NVIDIA אינו יכול להציע כרגע את אותה רמת התאמה אישית במערכות Wayland, מכיוון שאין מנגנון אוניברסלי להגדרת תצוגות בין שרתים מורכבים שונים.
גם יש בעיה של תכונות שלא ניתן ליישם באופן אחיד בכל השרתים המרוכבים בשל הבדלים בעיצוב שלהם. זה יוצר חוסר עקביות שמקשה על מתן תמיכה מלאה.
פלטנר, מזכיר שהעיכוב ביישום מלא של יכולות מסוימות ב-Wayland נובע משילוב של מגבלות פרוטוקול וארכיטקטורה מבוזרת של שרתים מרוכבים. למרות ש-Vulkan מציעה חלופות מבטיחות, יישומים רבים ותצורות מתקדמות התלויות במאפיינים ספציפיים של מערכת האקולוגית X11 עדיין לא מוצאים תמיכה מקבילה ב-Wayland עם מנהלי התקנים של NVIDIA.
יתר על כן, למרות שחלק מהיכולות הללו אינן זמינות ישירות מתחת לוויילנד, NVIDIA מדגישה שניתן ליישם אותם דרך ה-API הגרפי של Vulkan וההרחבות שלו. בין הפונקציונליות המופעלות באמצעות Vulkan, הבולטות הבאות:
- פלט סטריאו: דרך VK_KHR_multiview עם תמיכה בעיבוד ריבוי צפיות.
- מצב SLI מפורש: מיושם עם VK_KHR_device_group, המאפשר ניהול מתקדם של מספר GPUs.
- קבוצות מאיץ מסגרות וסנכרון: הרחבות כגון VK_NV_present_barrier מאפשרות שימוש ב-Swap Groups, Frame Lock ו-Genlock, תכונות קריטיות עבור יישומים הדורשים סנכרון מדויק בין מספר צגים.
לבסוף מוזכר כי NVIDIA עובד באופן פעיל כדי לשפר את התאימות של הנהגים שלהם ואלה חלק מהפונקציות שנמצאות בפיתוח או שמתוכנן להיות מיושם בגרסאות עתידיות:
- קצב רענון משתנה (VRR): תמיכה בקצבי רענון משתנים בתצורות ריבוי צגים ב-Wayland. (מועד לשחרור הדרייבר הבא).
- רזולוציית פלט שגויה: פרמטר ברירת המחדל nvidia-drm fbdev=1 יוגדר, ויתקן בעיות פלט בעת מעבר בין nvidia-drm ל-simpledrm.
- הגדרת nvidia-drm modeset=1 מה שיאפשר ניהול יעיל יותר של צינור הטיוח.
- מרבב מסך: תמיכה במעבר אוטומטי ל-GPU הדיסקרטי כאשר יישום מסך מלא דורש זאת.
- תמיכה בעיוות, מיזוג, הזזת פיקסלים והגדרות מתקדמות כגון COLOR_ENCODING ו-COLOR_RANGE, המאפשרות ניהול מדויק יותר של איכות חזותית ושעתוק צבע.
- מאגר פלט מסך: זה מאפשר חציצה כפולה עם Xwayland, משפר את הביצועים הגרפיים ומפחית בעיות כמו קריעה.
- תמיכה ב-nvidia-drm: מנגנון זה יאפשר לסנכרן את פלט הפריימים עם המסך, ולשפר את הנזילות החזותית ב-Wayland.
- VDPAU API: נוספה תמיכה עבור VDPAU ב-Wayland, המאפשרת האצת חומרה עבור משימות כמו פענוח, קומפוזיציה ועיבוד וידאו לאחר מכן.
- הטמעת תמיכת vGPU: מה שיאפשר שיתוף משאבים של GPU פיזי בסביבות וירטואליזציה, אידיאלי למערכות מקצועיות ומערכות ענן.
- ספריית egl-x11: שילוב טוב יותר של EGL לתוך Xwayland, המאפשר תמיכה חזקה יותר עבור יישומי X11 ב-Wayland.
אם כן מעוניין לדעת יותר על זה, אתה יכול לבדוק את הפרטים ב הקישור הבא.