llama.cpp परियोजना ने मॉडल इनफरेंस के प्रीफिल चरण को विशेष रूप से लक्षित करते हुए, Metal बैकएंड के लिए स्पार्स फ्लैश एटेंशन (FA) समर्थन पेश किया है। इस अपडेट में एक नया कर्नेल शामिल है जो सीमित मस्क एंट्रीज़ को प्रति-पंक्ति सूचकांक सूचियों में संपीड़ित करता है और वैकल्पिक स्पार्स सूचकांक संग्रह के साथ वेक्टर FA कर्नेल का विस्तार करता है।
- n_kv_max 0 से अधिक होने पर और अन्य शर्तें पूरी होने पर स्पार्स पथ को सक्षम करने के लिए एक होस्ट-साइड गेट जोड़ा गया है।
- उन स्पार्स फ्लैश एटेंशन कर्नेल्स में पंक्ति पताकरण बग को ठीक करने के लिए एक सुधार लागू किया गया था, जिसके कारण पहले बहु-पंक्ति मामलों में विफलताएं होती थीं।
- प्रति-थ्रेड रजिस्टर में सीमित स्थानों को रखकर अनावश्यक मस्क पढ़ने से बचते हुए एकल-पास स्पार्स सूचकांक संपीड़न करने के लिए अनुकूलन तकनीकें जोड़ी गईं।
- हेड साइज़, क्वांट टाइप्स और विभिन्न कॉन्फ़िगरेशन पैरामीटरों को मान्य करने के लिए टेस्ट केस और प्रदर्शन बेंचमार्क जोड़े गए हैं।
स्पार्स एटेंशन संकेतों का उपयोग करते समय प्रीफिल चरण के दौरान मेमोरी ट्राफिक को कम करके यह परिवर्तन Metal उपयोगकर्ताओं के लिए दक्षता में सुधार करता है।