Teadusarvutuse tööaja ennustaja

dc.contributor.advisorKull, Meeliset
dc.contributor.advisorLaur, Svenet
dc.contributor.authorMasing, Karl-Oskaret
dc.contributor.otherTartu Ülikool. Matemaatika-informaatikateaduskondet
dc.contributor.otherTartu Ülikool. Arvutiteaduse instituutet
dc.date.accessioned2013-09-06T11:07:56Z
dc.date.available2013-09-06T11:07:56Z
dc.date.issued2013et
dc.description.abstractTöö koosneb kahest suuremast osast. Esimeses osas tutvustame meetodit, kuidas ennustada suvalise arvutuse tööaega, kasutades eelnevate jooksutamiste tulemusi. Teises osas tutvustame implementatsiooni koos kasutusjuhendi ja näidetega. Tööaja ennustamine tugineb järgnevale tähelepanekule. Me saame eristada erinevaid programmi jooksutamisi jooksutamise tööaega potentsiaalselt mõjutavate parameetrite abil. Talletades jooksutamiste parameetreid ja kulunud aega, saame andmetest tuletada mudeli, mis hindaks parameetrite alusel programmi kestust. Olles huvitatud mudeli arusaadavusest, ei saa me kasutada tavalisi mitteparameetrilise regressiooni meetodeid. Seetõttu kasutame üldistatud lineaarset regressiooni erinevate baasfunktsioonidega nagu n*n, n*log(n) ja n*n*n*log(n). Lähenedes lihtsa ja täpse mudeli leidmise probleemile mudelite ruumis genereerimise abil, võivad baasfunktsioonid ka keerulisemaid kujusid võtta, avaldudes näiteks erinevate astmetega parameetrite korrutise kaudu. Leitud mudeli ja parameetrite abil on juba võimalik ennustada programmi kestust. Tööga on kaasas ka Pythoni teek, mis rakendab kirjeldatud meetodit, ennustamaks suvalise programmi tööaega.et
dc.description.abstractThe thesis consists of two major parts. In the first part, we present a technique to predict an arbitrary computation’s running-time based on data gathered from previous executions. In the second part, we present an implementation along with a user manual and an example. Running-time prediction is based on the following observation. We can distinguish between different program calls using parameters that potentially affect the running time. By recording both parameters and elapsed time, we can derive a model from the data that would estimate the running time. As we are interested in the comprehensibility of the model, we cannot use regular non-parametric regression methods. Hence, we use generalised linear regression with different basis functions such as n*n , n*log(n) and n*n*n*log(n). However, as we approach the problem of finding a relatively simple yet accurate model while traversing the search space by generating different models, basis functions can get even more complicated, involving multiplications of multiple parameters with different powers. Using the found model, it is then possible to predict the running time when parameters are known. Thesis comes also with a Python library that uses the described method to estimate an arbitrary program’s running-time.et
dc.identifier.urihttp://hdl.handle.net/10062/32842
dc.language.isoetet
dc.publisherTartu Ülikoolet
dc.subject.otherbakalaureusetöödet
dc.subject.otherinformaatikaet
dc.subject.otherinfotehnoloogiaet
dc.subject.otherinformaticsen
dc.subject.otherinfotechnologyen
dc.titleTeadusarvutuse tööaja ennustajaet
dc.title.alternativePredicting scientific computation's running timeet
dc.typeThesiset

Files

Original bundle
Now showing 1 - 2 of 2
Loading...
Thumbnail Image
Name:
thesis.pdf
Size:
15.25 MB
Format:
Adobe Portable Document Format
No Thumbnail Available
Name:
extra.zip
Size:
8.42 KB
Format:
Compressed ZIP