llama.cpp परियोजना ने b10353 बिल्ड जारी किया, जो CUDA और Metal backends में ggml_roll ऑपरेशन में एक महत्वपूर्ण बग को संबोधित करता है। पहले, permuted (non-contiguous) source tensors ने मौन रूप से गलत परिणाम उत्पन्न किए क्योंकि इन backends ने stride जानकारी को नजरअंदाज कर दिया।

  • ठीक करने में CUDA और Metal roll kernels दोनों के लिए contiguous source आवश्यकता जोड़ी गई है, मौजूदा GGML_OP_ROPE guard से मेल खाती है।
  • यह बदलाव सुनिश्चित करता है कि scheduler non-contiguous inputs के लिए CPU implementation पर fallback करेगा, जो strides को सही ढंग से संभालता है।
  • ठीक करने की पुष्टि के लिए एक permuted test_roll case जोड़ा गया था।

यह अपडेट उन मॉडल्स में डेटा क्षति को रोकता है जो non-standard memory layouts के साथ ROLL operations पर निर्भर हैं।