DLSS

Deep Learning Super Sampling (בראשי תיבות: DLSS; בתרגום חופשי לעברית: סופר-דגימות בלמידה עמוקה) היא טכנולוגיית רינדור וטכניקת החלקת עקומות (Anti-aliasing) המפותחת על ידי Nvidia אשר מבוססת על למידה עמוקה בבינה מלאכותית ליצירת תמונות ופריימים באיכות גבוהה מדגימות באיכות נמוכה, תוך שמירה על ביצועים מיטביים בכרטיסים גרפיים וכתחליף לטכניקות החלקת עקומות מסורתיות. עד לאפריל 2020, הטכנולוגיה הייתה זמינה רק לבעלי כרטיס גרפי מסדרת GeForce RTX 20.

הטכנולוגיה המקבילה של חברת AMD היא FidelityFX Super Resolution.

== היסטוריה ==
Nvidia פרסמה את הטכנולוגיה בתור פיצ'ר עיקרי בסדרת ה-GeForce RTX 20, כאשר היא יצאה בספטמבר 2018. באותו הזמן, הטכנולוגיה הוגבלה למספר משחקי וידאו בודדים בלבד (לרבות Battlefield V ו-Metro Exodus) כיוון שהאלגוריתם עבד על כל משחק בנפרד ותוצאות שעובדו ברשת העצבית למשחק אחד, לא תאמו לשום משחק אחר וכמו כן, התוצאות לא היו טובות כל כך בניגוד לאלגורתמים מסורתיים.

ב-2019, משחק הווידאו Control שוחרר וכלל בתוכו ניתוב קרניים וגרסה מוקדמת של סופר-דגימות שלא השתמשה בלמידה עמוקה.

באפריל 2020, חברת Nvidia שחררה את הגרסה 445.75 לדרייבר של הכרטיסי הגרפיים שלה, אשר כולל בין היתר משופרת של DLSS אשר מכונה DLSS 2.0, אשר הייתה זמניה למספר משחקים שיצאו כבר, כמו Control ו-Wolfenstein: Youngblood ותהיה זמינה למשחקים אחרים אשר ישוחררו. הפעם, האלגוריתם חזר להשתמש שוב בלמידה עמוקה ובניגוד לגרסאות הקודמות, אין צורך "לאמן" את הרשת העצבית על כל משחק בנפרד.

תופעת לוואי ניכרת של DLSS 2.0 היא שהתוצאה המתקבלת נפגעת אם מפעילים טכניקות החלקת עקומות כמו MSAA או TSAA , כאשר הביצועים נפגעים קשה, אם הטכניקות האלו פועלות על גבי DLSS.

נכון לאפריל 2020, מפתחי המשחקים צריכים להכליל את הטכנולוגיה בעצמם אם הם יחפצו בכך, בניגוד לטכניקות החלקת עקומות מסורתיות אשר יכולות להיות מופעלות ישירות מהדרייבר ללא כל התערבות של המפתחים.

=== היסטוריית גרסאות ===
{| class="wikitable"
|-
! גרסה !! תאריך שחרור !! הערות
|-
| DLSS 1.0 || פברואר 2019|| הגרסה הראשונה שיצאה, משתמשת בבינה מלאכותית אשר "מאומנת" לעבוד עם משחקים מסוימים, ביניהם - Battlefield V ו-Metro Exodus.
|-
| DLSS 2.0 (האיטרציה הראשונה) || אוגוסט 2019 || הגרסה הראשונה ל-2.0, לא משתמשת בלמידת מכונה ומותאמת במיוחד למספר משחקים, כמו Control.
|-
|| DLSS 2.0 (האיטרציה השנייה) || אפריל 2020|| הגרסה השנייה ל-2.0, השימוש בלמידת מכונה חזר והרשת העצבית מתוכננת לעבוד באופן כללי. הרנדור בפועל חולק ל-3 קטגוריות: ביצועים, מאוזן ואיכות, כאשר רזולוציית הרנדור היא 25%, 50% ו-75% מהרזולוציה המקורית בהתאמה.
|-
| DLSS 3.0 || ספטמבר 2022 || נבנתה על בסיס גרסה 2.0 בתוספת אלגוריתם לייצור פריימים בצורה מלאכותית על מנת להגדיל את קצב הפריימים לשנייה.
|-
| DLSS 3.5 || ספטמבר 2023 || נבנתה על בסיס גרסה 3.0 בתוספת אלגוריתם להרכבה מחדש של קרניים, המחליף אלגוריתמי סינון רעשים עם מודל בינה מלאכותית יחיד שאומן על כמות מידע שהיא פי 5 מגרסה 3.0.
|}

== האלגוריתם ==
=== DLSS 1.0 ===
החברה הסבירה כי DLSS 1.0 עובדת בכל משחק המתוכנן לעבוד איתה כך: תחילה, הפריים מרונדר במלואו באמצעות טכניקה סופר-דגימה מסורתית, משם התוצאה נשלחת לרשת העצבית שהוקמה בשרתי החברה, על מנת שתוכל ללמוד ולחזות את הפריימים. בשלב הבא, הבינה המלאכותית למדה לנתח קלטים דומים מהתוצאה הראשונית. בכך, נוצר מצב שבו המשחק מרונדר בפועל ברזולוציה נמוכה יותר והבינה המלאכותית משלימה את הפיקסלים החסרים באמצעות חיזוי והפריים הסופי הוא ברזולוציה גבוהה יותר ממה שרונדר בפועל ובסופו של דבר מתקבלת תוצאה טובה יותר תוך שמירה על ביצועים מיטביים (כיוון שהסצנה כולה מרונדרת ברזולוציה נמוכה יותר).

=== DLSS 2.0 ===
ב-DLSS 2.0, החברה שינתה את דרך הפעולה של האלגוריתם:
* תחילת, הרשת העצבית "מאומנת" על ידי Nvidia, באמצעות פריימים "אידיאלים" ממשחקי וידאו ברזולוציה מאוד גבוהה (פי 64) שרונדרו במחשבי על ואותם פריימים שרונדרו ברזולוציה נמוכה. התוצאה נשמרת בדרייבר של הכרטיס הגרפי. Nvidia משתמשת בשרת ה-DGX-1 שלה על מנת לבצע את פעולות ה-"אימון" לרשת העצבית.
* הרשת העצבית אשר מאוחסנת בדרייבר משווה בין הפריים ברזולוציה נמוכה לבין הפריים באיכות הגבוהה אשר עובד בשרתי החברה ובסופו של דבר מתקבל פריים באיכות גבוהה יותר מאשר אם הפריים היה מרונדר ברזולוציה הטבעית. הקלטים שמשמשים את הרשת העצבית הם הפריימים באיכות נמוכה אשר מרונדרים על ידי המנוע הגרפי וכן את הווקטורי-תנועה של הפיקסלים של אותם הפריימים, אשר גם כן מרונדרים על ידי המנוע הגרפי באיכות נמוכה. וקטורי-התנועה מכווינים את הרשת העצבית לאן כל אובייקט בכל פריים נע, על מנת לחזות מה יהיה הפריים הבא. כך נוצר מצב בו המשחק מרונדר בפועל ברזולוציה נמוכה יותר (עד 75% מהרזולוציה המקורית), אך התוצאה הסופית איכותית וטובה יותר מאשר התוצאה המתקבלת ברנדור ברזולוציה טבעית.

== ארכיטקטורה ==
DLSS זמינה בכרטיסי מסך מסדרת GeForce RTX 20 ומעלה, בליבות המיועדות להאצת בינה מלאכותית המכונות "ליבות טנזור" (Tensor cores) המאפשרות ריצה בדיוק מעורב .

ליבות טנזור נמצאות החל מארכיטקטורת וולטה, אשר שולבה לראשונה בכרטיסים מסדרת ה-Tesla V100. כל ליבת טנזור עובדת על 16 ביט של נקודה צפה במטריצה של 4 על 4 ומתוכננת להשתמש בסביבת CUDA, גם ברמת המהדר.

== קישורים חיצוניים ==
* 
* 
* 
* יאן לנגרמן, [https://www.gadgety.co.il/248031/nvidia-dlss-2/ NVIDIA מכריזה על טכנולוגיית ה-DLSS 2.0 – מנגנון שיפור ביצועי משחקים משופר], באתר גאדג'טי, 24 במרץ 2020
* 
* 

== הערות שוליים ==

קטגוריה:מוצרי Nvidia
קטגוריה:תוכנות בינה מלאכותית
קטגוריה:למידה עמוקה
קטגוריה:תוכנות שהושקו ב-2019