Llama.cpp b10327 ஒரு முக்கியமான CUDA quantization பிழையைச் சரிசெய்கிறது, இது NVIDIA கார்டுகளில் உள்ளூர் GPU inference-ஐ நிலைப்படுத்துவதோடு, அதே வன்பொருளிலிருந்து கூடுதல் வேகத்தையும் பெற உதவுகிறது. நுகர்வோர் தரத்திலான (consumer-grade) GPU-களில் LLaMA-பாணி மாடல்களை இயக்கும் எவருக்கும் இந்தத் திருத்தம் முக்கியமானது, ஏனெனில் அங்கு செயலிழப்புகள் (crashes) மற்றும் துல்லியத்தன்மை குறைவு ஆகியவை தொடர்ச்சியான பிரச்சனைகளாக இருந்து வருகின்றன.
உள்ளூர் inference-ஐத் தடுத்த பிழை
கிளவுட் சேவை இல்லாமலேயே CPU மற்றும் GPU-களில் பெரிய மொழி மாதிரிகளை (large language models) இயக்குவதற்கான சிறந்த திறந்த மூல (open-source) இயந்திரமாக Llama.cpp விளங்குகிறது. குறைந்த அளவுள்ள GPU-களில் குவாண்ட்டைஸ்டு மாடல்களை (quantised models)—அதாவது குறைந்த பிட் வடிவங்களில் சேமிக்கப்பட்ட எடைகளை (weights)—இயக்கும் திறன் இதன் மிகப்பெரிய ஈர்ப்பாகும். b10327 வெளியீடு, NVIDIA-இன் CUDA தளத்தில் அந்த குவாண்ட்டைஸ்டு kernels-களைத் தொடங்கும் போது பயன்படுத்தப்படும் thread மற்றும் block-count கணக்கீடுகளைச் சரிசெய்கிறது.
முந்தைய கணக்கீடுகள் பணிப் பொருட்களை (work-items) தவறாக வரிசைப்படுத்தியிருக்கலாம், இது இரண்டு நடைமுறைப் பிரச்சனைகளுக்கு வழிவகுத்தது:
- நினைவகக் கையாளுதல் பிழை (Memory mishandling) – kernels சில நேரங்களில் ஒதுக்கப்பட்ட பஃபருக்கு (buffer) வெளியே உள்ள நினைவகத்தை அணுகின, இது செயலிழப்புகள் அல்லது தரவு சிதைவுக்கு (silent corruption) வழிவகுத்தது.
- கணிதத் துல்லியமின்மை (Math inaccuracy) – மிதப்புப்புள்ளி செயல்பாடுகள் (floating-point operations) சரியாகச் செயல்படவில்லை, இது உருவாக்கப்பட்ட உரையின் தரத்தைக் குறைத்தது.
இந்த இரண்டு சிக்கல்களும் குவாண்ட்டைஸ்டு inference-இன் கடுமையான நினைவகக் கட்டுப்பாடுகளின் கீழ் மட்டுமே தோன்றின, இதனால் பெரிய அளவிலான, முழுத் துல்லியமான (full-precision) செயல்பாடுகளில் இவற்றை மீண்டும் உருவாக்குவது கடினமாக இருந்தது.
இந்தத் திருத்தம் ஏன் சாதனத்தில் இயங்கும் AI-க்கு ஒரு வெற்றி?
தரவுத் தனியுரிமையைப் பேணவும், கிளவுட் அழைப்புகளால் ஏற்படும் தாமதத்தைத் (latency) தவிர்க்கவும் மற்றும் இயக்கச் செலவுகளைக் குறைக்கவும் டெவலப்பர்களும் ஆர்வலர்களும் உள்ளூர் inference-ஐ நம்பியிருக்கிறார்கள். இந்த பிழை காரணமாக, ஒரு மாடல் GPU நினைவகத்திற்குள் பொருந்தினாலும் கூட, அது கணிக்க முடியாத வகையில் தோல்வியடையக்கூடும். திருத்தப்பட்ட தொடக்க அளவுருக்களுடன் (launch parameters), அதே வன்பொருள் இப்போது பின்வருவனவற்றை வழங்குகிறது:
- அதிக நம்பகமான இயக்கம் – குறைவான out-of-memory செயலிழப்புகள் மற்றும் சீரான தொகுதி செயலாக்கம் (batch processing).
- மேம்படுத்தப்பட்ட வேகம் – இந்தத் திருத்தம் நம்பகத்தன்மை மற்றும் Throughput ஆகிய இரண்டையும் அதிகரிக்கிறது.
ஒரு நுகர்வோர் தரத்திலான GPU-வைப் பொறுத்தவரை, இந்த வேறுபாடு ஒரு பயனுள்ள உரையாடல் சாட்போட் (chatbot) மற்றும் ஒரு நிலையற்ற டெமோ (flaky demo) ஆகியவற்றிற்கு இடையிலான எல்லையாக இருக்கலாம்.
பரந்த அளவிலான GPU AI புதுப்பிப்புகள் குறித்த தொகுப்பு
Llama.cpp திருத்தம் முக்கியச் செய்தியாக இருந்தாலும், பிற வெளியீடுகளும் உள்ளூர் AI சூழலை முன்னோக்கித் தள்ளுகின்றன:
- NVIDIA NeMo Speech 3.0 தானியங்கி பேச்சு அங்கீகாரம் (automatic speech recognition), உரையிலிருந்து பேச்சு (text-to-speech) மற்றும் பேச்சு சார்ந்த பெரிய மொழி மாதிரிகளுக்கான (speech-large language models) புதுப்பிக்கப்பட்ட கருவித்தொகுப்பை வழங்குகிறது. இதன் புதிய அமைப்பு சிறப்பு குரல் உதவியாளர்களை (voice assistants) உருவாக்குவதை எளிதாக்குகிறது.
- AMD ROCm, Quark library மூலம் SVDQuant ஆதரவைச் சேர்க்கிறது, இது Stable Diffusion போன்ற diffusion மாடல்களை AMD GPU-களில் குறைந்த நினைவகப் பயன்பாட்டுடன் இயக்க அனுமதிக்கிறது. இதனுடன் வரும் VSA (Video Sparse Attention) மாட்யூல், diffusion நிலைகளுக்குத் தேவையான கணிதத்தைக் குறைப்பதன் மூலம் வேகமான வீடியோ உருவாக்கத்திற்கு உறுதியளிக்கிறது.
- Linux kernel 7.3, கிராபிக்ஸ் நினைவகம்க்காக மிகவும் மேம்பட்ட TTM (Translation Table Maps) துணை அமைப்பை அறிமுகப்படுத்தும். இந்த மாற்றம் கணக்கீட்டுத் திறன் அதிகம் கொண்ட பணிகளுக்கான (compute-heavy workloads) நினைவக மீட்பைப் (memory reclamation) பெறுவதை நோக்கமாகக் கொண்டுள்ளது, இது Linux அடிப்படையிலான இயந்திரங்களில் AI inference-க்கு மறைமுகமாகப் பயனளிக்கும்.
யார் பயனடைவார்கள், யார் எச்சரிக்கையாக இருக்க வேண்டும்?
சுயாதீன டெவலப்பர்கள், சிறிய ஸ்டார்ட்அப்கள் மற்றும் ஏற்கனவே நுகர்வோர் தரத்திலான NVIDIA வன்பொருளில் முதலீடு செய்துள்ள தனியுரிமை சார்ந்த குழுக்கள் இதன் உடனடிப் பலன்களைப் பெறுவார்கள். அவர்களின் பணிப்பாய்வுகள் (pipelines) மிகவும் கணிக்கக்கூடியதாக மாறும், மேலும் செயல்திறன் அதிகரிப்பு பெரிய குவாண்ட்டைஸ்டு மாடல்களைச் சோதிப்பதற்கான தடையைக் குறைக்கும்.
ஏற்கனவே கிளவுடில் inference இயக்கும் நிறுவனங்கள், இந்தத் திருத்தத்தை ஒரு கலப்பு உத்தியின் (hybrid strategy) அங்கமாகப் பார்க்கலாம்—அதாவது தாமதத்திற்கு முக்கியமான முன்முனைப் பணிகளை (front-ends) உள்ளூரிலும், கனமான தொகுதிப் பணிகளை (heavy batch jobs) கிளவுடிலும் இயக்குவது. இருப்பினும், இந்தத் திருத்தம் VRAM வரம்புகள் அல்லது குவாண்ட்டைஸ்டு மற்றும் முழுத் துல்லியமான மாடல்களுக்கு இடையிலான தர இடைவெ差距 போன்ற சாதனத்தில் இயங்கும் AI-இன் ஆழமான வரம்புகளை நீக்காது.
அடுத்து கவனிக்க வேண்டியவை
- மேலும் Llama.cpp மேம்படுத்தல்கள் – வரவிருக்கும் திருத்தங்கள் kernel fusion-ஐச் செம்மைப்படுத்தும் மற்றும் புதிய NVIDIA கட்டமைப்புகளுக்கான (architectures) ஆதரவைச் சேர்க்கும்.
- பல்வேறு நிறுவனங்களுக்கிடையிலான குவாண்ட்டைசேஷன் தரநிலைகள் (Cross-vendor quantisation standards) – AMD-இன் ROCm, SVDQuant-ஐப் பெறுவதால், சமூகம் ஒரு பொதுவான குறைந்த பிட் வடிவத்தைச் சுற்றி ஒன்றிணையக்கூடும், இது மாடல் இடமாற்றத்தை (model portability) எளிதாக்கும்.
- NeMo Speech கூறுகளின் ஒருங்கிணைப்பு சாதனத்தில் இயங்கும் ரன்டைம்களில் (runtimes) இணைக்கப்படும்போது, தற்போது உரை மாடல்களை நம்பகமான முறையில் இயக்கும் அதே உள்ளூர் inference கட்டமைப்பிற்கு குரல் திறன்களையும் கொண்டு வரக்கூடும்.
தொடக்க வடிவியலில் (launch geometry) செய்யப்படும் ஒரு வரி அளவிலான திருத்தம் கூட, உள்ளூர் AI-இன் பயன்பாட்டில் மிகப்பெரிய தாக்கத்தை ஏற்படுத்தும் என்பதை b10327 திருத்தம் நிரூபிக்கிறது. நீங்கள் இன்னும் நுகர்வோர் GPU-வில் செயலிழப்புகளுடன் போராடிக்கொண்டிருந்தால், நிலையான மற்றும் வேகமான inference அனுபவத்தைப் பெற இப்போதே llama.cpp-ஐப் புதுப்பிக்கவும்.
