aalto1 untyped-item.component.html

Exploring the Effect of Quantization on Large Language Models for C++ Programming on Home Hardware

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Master's thesis

Department

Major/Subject

Mcode

SCI3042

Language

en

Pages

60

Series

Abstract

Large Language Models (LLMs) have become increasingly popular for a variety of applications due to their powerful capabilities. While typically run in cloud by third-party providers, there is an increasing interest in running open-source LLMs locally due to privacy concerns and fine-tuning possibilities. The goal of this thesis is find out how feasible code LLMs are to run on limited hardware locally, as well as how well they perform in C++ programming featuring algorithmic problems as well as open-source library usage. Experiments are conducted on a popular coding benchmark HumanEval and a custom C++ dataset created for this thesis with the results evaluated using a \textit{pass@k} metric. Additionally, time is measured for how long these code LLMs need to complete a benchmark to evaluate their average output times on the hardware used. The experiments are run with and without 4-bit quantization to measure if quantization is a feasible method to improve LLM performance on limited hardware. The findings of this thesis show that 4-bit quantization is a useful method to achieve significantly faster output times on LLMs that surpass the hardware's VRAM capacity. In addition, no accuracy loss was noticed in the benchmark results.

Laajat kielimallit ovat yleistyneet monissa sovelluksissa niiden tehokkaiden ominaisuuksien ansiosta. Yleensö kielimalleja ajetaan kolmansien osapuolien pilvipalveluissa, mutta viime aikoina kiinnostus avoimen lähdekoodin kielimallien ajamiseen paikallisesti on kasvanut tietoturvan ja hienosäätömahdollisuuksien vuoksi. Tämän diplomityön tavoitteena on selvittä,ä kuinka toteuttamiskelpoista on ajaa laajoja kielimalleja paikallisesti rajoitetulla laitteistolla, ja kuinka hyvin mallit selviytyvät C++ ohjelmointihaasteista, jotka koostuvat algoritmisista ongelmista sekä avoimen lähdekoodin kirjastojen käytöstä. Kokeet suoritetaan suositun HumanEval-ohjelmointi-benchmarkin avulla sekä tämän tutkielman C++ ongelmajoukolla. Tulokset arvioidaan \textit{pass@k}-metriikalla. Lisäksi mitataan aika, joka näillä laajoilla kielimalleilla menee HumanEvalin suorittamiseen, jotta mallien suorituskykyä voidaan arvioida ja vertailla. Kokeet suoritetaan sekä 4-bittisellä kvantisoinnilla että ilman, jotta voidaan selvittää parantaako kvantisointi mallien suorituskykyä rajoitetulla laitteistolla. Tämän diplomityön tulokset osoittavat, että 4-bittininen kvantisointi on hyödyllinen menetelmä parantamaan merkittävästi laajojen kielimallien suorituskykyä, kun ne ylittävät laitteiston VRAM-kapasiteetin. Kvantisoinnin käytön ei myöskään havaittu heikentävän mallien tarkkuutta.

Description

Supervisor

Hellas, Arto

Thesis advisor

Piiroinen, Markku

Other note

Citation

Endorsement

Review

Supplemented By

Referenced By