llama.cpp b9931 रिलीज़ ने Mixture of Experts (MoE) prefill के लिए एक OpenCL अनुकूलन पेश किया जो प्रदर्शन में सुधार के लिए padded expert tiles को छोड़ देता है।
- अनुकूलन टोकनों को TILESIZE_N=32 प्रति-विशेषज्ञ tiles में समूहित करता है और जब एक tile के ऊपरी 16 slots सभी padding होते हैं तो दूसरे dotx16_reduce8 आधे को छोड़ देता है।
- यह दो half-tile dotx16_reduce8 कॉल्स को चार dotx8_reduce4 कॉल्स से बदल देता है, जिससे खाली trailing skip-groups का स्वतंत्र रूप से छोड़ा जा सकता है।
- इस फीचर को GGML_OPENCL_MOE_RAGGED_GRAN पर्यावरण चर द्वारा नियंत्रित किया जाता है, जो क्रमशः quarter, half या off granularity के लिए 8, 16, या 32 मान स्वीकार करता है।
- रिलीज़ में macOS (Apple Silicon और Intel), Linux (CPU, Vulkan, ROCm, OpenVINO, SYCL), Android, Windows (CPU, CUDA, Vulkan, OpenVINO, SYCL, HIP), और openEuler के लिए बाइनरी शामिल हैं।
यह अनुकूलन उपयोगकर्ताओं को नए पर्यावरण चर सेटिंग्स के माध्यम से MoE मॉडल में padded डेटा पर गणना कम करने की अनुमति देता है।