[voikko] voikkospell, voikkotest ja moniydinprosessorit
Harri Pitkänen
hatapitk at iki.fi
Fri Apr 9 23:06:56 EEST 2010
Muutaman viikon ajan libvoikon SVN-versio on tukenut useiden samanaikaisten
säikeiden käyttöä. Nyt myös voikkospell-komentoon on lisätty optio -j, jonka
avulla oikoluvussa voi käyttää useaa säiettä. Toiminnosta on hyötyä lähinnä
Voikon testauksessa pitkillä sanalistoilla, jos käytettävissä on enemmän kuin
yksi prosessoriydin.
Myös voikkotest-skripti osaa nyt hyödyntää tätä ominaisuutta, jos se on otettu
käyttöön asetustiedostossa voikko_dev_prefs.py. Eli lisäämällä tuohon
tiedostoon rivin
voikkospell_threads=2
komentojen "voikkotest --current" ja "voikkotest --base" yhteydessä
suoritettava pitkän sanalistan oikoluku tehdään annetulla määrällä säikeitä.
Käytännössä voikkospell kykenee hyödyntämään käytettävissä olevat
prosessoriytimet optimaalisesti, sillä ainakin minulla oikoluvun nopeus
todella kaksinkertaistui kahta säiettä käyttämällä.
Optiota -j 2 ei kannata käyttää silloin, jos halutaan oikolukea sanoja yksi
kerrallaan, koska oikoluku tapahtuu viivästetysti 500 sanan lohkoissa. Eli
optio ei myöskään sovellu käytettäväksi minkään interaktiivisen skriptin
osana. Sitä kannattaa käytännössä käyttää vain oikoluettaessa vähintään parin
tuhannen sanan listoja massa-ajona.
Optio toimii myös korjausehdotuksia ja morfologisia analyysejä generoitaessa
sekä vaihtoehtoisten taustatoteutusten (HFST) kanssa.
Muut apuohjelmat (voikkohyphenate ja voikkogc) eivät vastaavaa optiota vielä
tue, enkä ole ajatellut sitä niihin lisätäkään. Mitään estettä saman
ominaisuuden lisäämiseksi noihinkin ohjelmiin ei ole, joten jos joku haluaa
hiukan järjestellä uudelleen apuohjelmien koodia, niin toteutus otetaan kyllä
mielellään vastaan.
Harri
More information about the voikko
mailing list