Posts filed under 'linux'

Synclientin perusteita

Linuxin hiiripädituki on monipuolinen ja äärimmäisen tarkkaan säädettävä, mutta tavalliset asetustyökalut eivät tarjoa paljonkaan optioita, minkä lisäksi vakioasetukset voivat toimia aika heikosti, riippuen pitkälti koneesta. Tärkein hienosäätötyökalu on Synclient, joka tarjoaa suuren joukon viritettäviä parametreja – oikeastaan liiankin suuren, sillä vasta-alkajalla menee sisu kaulaan kymmenien mystisten numeroiden äärellä. Välttelin vuosikaudet Synclientiä juuri tästä syystä (sekä laiskuuttani), mutta lopulta sekin oli opeteltava pakon edessä. Seuraavassa tukea muiden ensiaskeleisiin.

Herkkyys

Hiiripädin liika herkkyys on sekä omien kokemusteni että netin lukuisten foorumien mukaan ehdottomasti yleisin ongelma. Pahimmillaan kursori liikkuu jo ennen kuin sormi edes koskettaa pädiä. Kaksi tärkeintä – hieman omituisella logiikalla nimettyä – asetusta ovat:

  • FingerHigh – kuinka lujaa pädiä pitää painaa, että hiiri alkaa liikkua
  • FingerLow – millä voimakkuudella tulkitaan, että liikutus loppuu (oltava pienempi kuin FingerHigh)

Liian pienet arvot aiheuttavat em. telekinesiaa ja tahatonta kursorin liikkumista pienimmästäkin kosketuksesta, kun taas liian suurista arvoista seuraa tahmea pädi, jota pitää survoa. 15 ja 10 ovat hyviä alkuarvauksia, mutta joillakin laitteilla tarvitaan huomattavasti suurempia arvoja. Toinen tyypillinen herkkyysongelma on kursorin vapina napauttaessa, jota voi puolestaan koittaa kohentaa kasvattamalla parametreja HorizHysteresis ja VertHysteresis. Liian suuret arvot tekevät kursorin liikkeestä tahmeaa ja kulmikasta.

Napautus

Myös täppäyksenä tunnettu napautus on vähän makuasia: itse otan sen jatkuvien virheklikkausten takia yleensä pois päältä, jos pädissä on oikeatkin napit. Päälle ja pois napautuksen voi kytkeä TapButton-parametreilla: nolla tarkoittaa, ettei näpäytystä tunnisteta, ja nollasta poikkeava arvo kertoo, miksi hiiren napiksi yhden tai useamman sormen napautus tulkitaan (1…3).

Skrollaus

Joissakin pädeissä on oikeassa reunassa kaistale, jota voi käyttää vierityspalkkina, mutta alue ei ole käsittääkseni mitenkään poikkeuksellinen, vaan vieritys tapahtuu puhtaasti ajurien tasolla. Nykyään suositun kahdella sormella vierityksen saa päälle parametrilla VertTwoFingerScroll ja vaakasuuntaan on vastaavasti Horiz-alkuisia parametreja. Nopeutta säätää VertScrollDelta, joka tosin toimii hieman epäintuitiivisesti: mitä suurempi arvo, sitä hitaampi vieritys. Applen popularisoiman “luonnollisen” eli täysin väärään suuntaan liikkuvan vierityksen saa aikaan käyttämällä deltassa miinusmerkkisiä numeroita.

Muuta

Kun käytössä on ulkoinen hiiri, voi olla kätevää laittaa päälle TouchPadOff, joka toimii taas hiukan omalla logiikallaan – miksei parametri voinut olla TouchPadOn? Näin pädiä ei tule sohittua vahingossa esimerkiksi kirjoittaessa. Uudemmat kosketuslevyt osaavat myös tunnistaa tilanteen, jossa kämmen on kirjoittaessa pädillä (PalmDetect ja sen lisäasetukset). Kaikenlaista muutakin eleentunnistuksesta softanappeihin löytyy, mutta itse en ole kokenut niitä tarpeellisiksi, kun omistamissani läppäreissä on vielä aidot hiirennapit jäljellä.

Asetuksia voi kokeilla nopeasti Synclientillä tyyliin “synclient FingerLow=10 FingerHigh=15”, mutta näin annetut arvot eivät tietenkään säästy uudelleenkäynnistyksessä. Skriptejä voisi viritellä monenlaisiin paikkoihin riippuen työpöytäympäristöstä ja distrosta, mutta yleisesti toimiva ratkaisu on luoda tiedosto /etc/X11/xorg.conf.d/70-synaptics.conf, johon voi laittaa asetuksia pysyvämmin seuraavaan tyyliin:

Section "InputClass"
    Identifier "touchpad"
    Driver "synaptics"
    MatchIsTouchpad "on"

    Option "FingerLow" "12"
    Option "FingerHigh" "16"
    Option "HorizHysteresis" "20"
    Option "VertHysteresis" "20"
    Option "VertScrollDelta" "80"
EndSection

Add comment November 22nd, 2016

Minttiä C710-Chromebookiin

Croutonin kanssa oli tullut askarreltua jo aiemmin, mutta sen rajat alkoivat tulla ikävästi vastaan: etenkin videotoisto tökki selittämättömästi, minkä lisäksi chroot-vankilat tuntuivat hiljalleen lahoavan käsiin sieltä täältä. Niin Croutonin kuin Chrome OS:nkin tulevaisuus on suuri kysymysmerkki, joten oli aika kokeilla vaihtoehtoja, jotta Acer C710:ni palvelisi vielä tulevaisuudessakin.

Eräs vaihtoehto olisi ollut Chrubuntu, mutta kun senkään jatkosta ei ole varmuutta, päädyin lopulta dramaattisempaan ratkaisuun, SeaBIOSiin, joka korvaa normaalin firmiksen pelkistetyllä BIOS-versiolla, jonka kautta voi buutata normaaleja käyttöjärjestelmiä. Seuraavaksi ulkoiseen USB-asemaan 64-bittisen Mint/MATE 18:n DVD ja normaali asennus käyntiin. Hiiripädi ei toiminut asennuksen aikana, mutta ulkoisella hiirellä sekin este voitettiin.

Toimii suorilta

  • WLAN, Ethernet
  • 3D- ja videokiihdytys, ulkoinen näyttö (ainakin VGA-liittimellä)
  • Webbikamera
  • Kortinlukija
  • Äänet ml. kuulokeliitäntä
  • Bluetooth
  • Akun varaus- ja prosessorin lämpötila-anturit

Toimii säätämällä

  • Hiiripädi: jostain syystä Mint estää oletuksena tarvittavan moduulin (i2c_i801) lataamisen. Rivi pois paikasta /etc/modprobe.d/blacklist.conf ja johan toimii. Asetukset ovat vakiona hieman huonot, mutta ohjeita kohentamiseen löytyy. Päivitän postausta, jos jaksan ruuvata synclientin asetuksia enemmän.
  • Äänensäätönapit: Fn ei ilmeisesti toimi millään viilaamisella, mutta äänensäädön voi vaihtaa normaaleihin F-näppäimiin paikasta Preferences – Keyboard shortcuts.
  • Sama juttu kirkkaussäädön kanssa. Ensimmäinen ratkaisu on asentaa alapalkkiin kirkkausappletti. Asentamalla xbacklightin voi yo. paikasta lisätä F6/F7:lle komennot “xbacklight -dec 10” ja “xbacklight -inc 10”.

Ei toimi

  • Lepotila: voisi ehkä olla mahdollista saada toimimaan isolla viilaamisella, mutta tein nyt mieluummin laiskasti niin, että kannen sulkiessa kone menee kiinni (Preferences – Power management).
  • Fn-nappi: tähän ei löytynyt oikein googlaamallakaan mitään, joten F-napeille ei saane tuplatoimintoja käyttöön. Eniten harmittaa F10:n menetys äänenvoimakkuuden säätöön, koska sitä tarvitaan emulaattoreissa.
  • ACPI: jos olen asian oikein ymmärtänyt, SeaBIOS ei tätä tue, joten nämä hienoudet jäävät kokematta. Kokeilin joitakin buuttiparametreja, mutta acpi_available ei näytä mitään.

Meni suunnilleen kuten odotinkin, eli suurin osa laitteistosta toimii suorilta, kun taas osa vaatii virittelyä. Sleepin puuttuminen on kenties ikävin juttu, kun on kyse mukaan napattavasta pikkukoneesta – toisaalta vanhahko 24-gigainen SSD:kin buuttaa virtanapista puolessa minuutissa, joten mitään massiivista odottelua ei tarvitse sietää. Hiiripädin asetuksia pitäisi jaksaa vielä viilata sujuvuuden parantamiseksi, vaikka ihan riittävän hyvin se toimii jo nytkin.

Pienten kompurointien vastapainoksi saa paljon hyvääkin: videotoisto (jopa fullhd-h264) tai äänet eivät töki, VirtualBox toimii, muistia ja suoritinaikaa ei huku Chrome OS:lle, käytössä on täysi paletti kerneliajureita, levy on selkeästi osioitu, USB-levyillä olevien tiedostojen kellonajat eivät sekoile, päivitykset tulevat kootusti, ja asiat ovat ylipäänsä varsin vapaasti konfiguroitavissa, siinä missä Chrome OS piilotti juttuja alleen. Uskon ja toivon myös, että käyttis ei lahoa samalla tavoilla yllättäen kuin Croutonin chrooteilla on tapana.

Filosofisesti ajatellen kone on nyt pitkälti menettänyt ominaispiirteensä ja on kuin mikä hyvänsä pikkuläppäri, johon on asennettu Linux. Sikäli paljon tässä oli tekemistä ja lopputulos vielä puolinainen, että sujuvinta käyttökokemusta halajavan ei kannata Chrome OS:stä luopua. Jättänen koneen itse kuitenkin toistaiseksi puhtaasti Linuxille, kun se näinkin hyvin toimii, eikä Chromen puolella toisaalta ole yhtään ohjelmaa, jota jäisin kaipaamaan.

Siinä se nyt on ihan todistettavasti.

Siinä se nyt on ihan todistettavasti.

edit: käyttämällä Chrome OS:n pädiajuria tämän mukaisesti saa satunnaiset hyppimiset ja harhaklikkailut kuriin. Asetuksia olisi hurjasti, mutta taidan jättää suhteellisen ok toimiville oletuksille, kun kone ei missään varsinaisessa tehokäytössä ole.

Add comment September 17th, 2016

Linux Mint and blinking/flashing/blanking screen

I suppose this problem will affect many people, so here’s one answer for Google to find. The latest Mint (18) has some graphics problems on at least the integrated GPU of Broadwell chips — others have reported similar issues on Skylake chips as well. It is reasonable to assume that other Ubuntu derivatives are susceptible too. It seems that kernel 4.4 introduced some bug that causes the screen to occasionally turn black for a fraction of a second. Changing the window manager or compositor do not alleviate the problem.

Mint 17.x does not suffer from blinking as it uses 3.x kernels. Updating to 4.6.3 seems to solve the issue as well, so it’s probably not a question of the X server either. The only quirk is that Mint doesn’t let you use other kernels than the 4.4 series easily. Here’s one package with instructions that did the trick, use at your own risk.

1 comment August 15th, 2016

Raspberry Pi 2: hyvät ja huonot uutiset

Lägään tällä hetkellä näiden Raspien kanssa hieman perässä, sillä rupesin vasta testailemaan synttärilahjaksi saamaani 2B-mallia. Jälleen kerran hieman nopeampi kolmonenhan tuli juuri uunista ulos.

Juhlapuheista huolimatta etenkään alkupään Raspeista ei todellakaan ollut työpöytäkäyttöön: muistia oli liian vähän, X:n ja SDL:n kiihdytykset riittämättömiä, ja jo muutenkin hitaan koneen hyydytti viimeistään käyttiksen ajaminen SD-kortilta. Muutaman vuoden aikana ytimiä on tullut kolme lisää, ja kenties vielä tärkeämpänä parannuksena muistin määrä on noussut gigatavuun. Mutta ollaanko vieläkään työpöytäkäyttöön riittävällä tasolla?

Kyllä, ei ja ehkä. Raspi 1:een verrattuna työpöytä pyörii mainiosti, mutta toisaalta hitainkin nykypäivän Intel-pohjainen miniläppäri on edelleen nopeampi. Hitaus ja nopeus ovat pitkälti ohjelmista kiinni: mukana seuraava Web-selain ja LibreOffice ovat aivan käyttökelpoisia, kun taas Java-pohjainen Processing hyytyi varsin ikävästi. Pikaisesti kokeilemani kevyet emulaattorit toimivat sinänsä ok X:n päällä, mutta kiinteän resoluution ja puuttuvan video-overlayn vuoksi niitä ei saanut koko näytölle (resoa voisi toki pudottaa, mutta se on ongelman kiertämistä eikä ratkaisua).

Pahin pullonkaula tuntuu edelleen olevan massamuisti. Siinä missä SSD:istä on tullut päivittäistavaraa isojen koneiden puolella, pikkulaudoissa ollaan edelleen jumissa USB2:n ja muistikorttien maailmassa. Odroideissa nähty eMMC on jonkin verran parempi, mutta jää sittenkin SSD:lle mennen tullen.

Parhaimmillaan Raspit ovat niille erityisesti räätälöityjen softien kanssa: mediatoistimista, emulaattoreista ynnä muista on optimoituja versioita, jotka käyttävät videoskaalaajaa tai OpenGL ES:ää tavanomaisten kirjastojen sijaan. Yllätyin itsekin, kuinka paljon 3D-rauta jaksoi puskea, kun sitä ohjelmoi järkevästi. Ylimääräiset kerrokset, kuten Java ja JavaScript, ovat puolestaan myrkkyä suorituskyvylle.

Monia päivittäisiä asioita voi tehdä jo nykyiselläänkin riittävän sujuvasti, kunhan hyväksyy tietyn ajoittaisen tahmailun. Ainoaksi peeseen korvaajaksi en Raspia edelleenkään laittaisi, enkä usko kolmosenkaan tilannetta merkittävästi muuttavan, varsinkin kun massamuistiväylät eivät ole sen nopeammat. Toisaalta tarkkaan rajatussa yksittäisessä käytössä etenkin tämä uusi Rapsutin voi olla aivan riittävän tehokas ja hinnaltaan kymmenesosa “oikeasta” tietokoneesta. Palataan asiaan taas parin sukupolven päästä.

raspi2

1 comment February 29th, 2016

Super Meat Boy trouble on Linux

This is more of a note for myself, since I run into the same problem quite frequently and it’s kind of tricky to find the fix even with Google. So… the next time you get this dreaded error message from Super Meat Boy:

Fatal Error: MojoShader compile failed!

Download this and extract it in your supermeatboy directory (local copy here in case the file disappears). It will replace the binaries for both 32- and 64-bit, after which you should be able to play the game again. The problem seems to have to do with Mesa’s Intel integrated graphics support, which lacks a required feature.

Note that the fix is for the downloadable copy only. No idea if it is needed or works with the Steam version at all.

Add comment January 24th, 2016

AMD-ATI ja videon repeily (lisää kökköä)

Taannoisen Nvidia-valitusvirren vastapainoksi vielä samasta aiheesta AMD/ATI-perspektiivistä, eli mitä tehdä, jos video repeilee? Asetelma on lähtökohtaisesti hieman samanlainen kuin Nvidiallakin: tarjolla on sekä avoimen sorsan (xserver-xorg-video-ati) että suljettu ajuri (fglrx eli Catalyst), joista suljettu on se nopeampi ja samalla ongelmallisempi. Vakiona näistä AMD:llä tulee avoin versio, jolla repeilyä ei nähdä, mutta samalla menetetään tehoja OpenGL:stä sekä kätevä hallintapaneeli, ja pelien toimivuus heikkenee.

Netistä löytyy yhtä sun toista vanhahtavaa ohjetta, joissa sorkitaan xorg.confiin välillä TexturedVideota päälle ja välillä pois. Itse en saanut niillä mitään näkyvää vaikutusta aikaan, eikä xvinfo koskaan tunnistanut video-overlaytä. Toisin sanoen ollaan jumissa OpenGL-ikkunan kanssa, jossa video repeilee – jos nyt ei järin pahasti. Perfektionistille repeily sattuu kuitenkin silmään, joten järjestelmäasetuksista AMD Catalyst Control Center auki ja Näyttövalintojen alta Repeytymätön työpöytä päälle (miksi nämä tekstit näkyvät suomeksi?).

Jo vain toistuvat videot kauniisti, minkä lisäksi työpöydän normaalit ikkunat liikkuvat pehmeästi. Varjopuolena on lisääntynyt kuormitus, mutta asetus on helppo käydä muuttamassa, jos vaikkapa haluaa peleille parempaa päivitystaajuutta. Vaikkei AMD/ATI ole perinteisesti mikään Linuxin paras ystävä ollutkaan, niin ainakin koko ruudun kompositointi toimii paremmin kuin Nvidialla.

edit: Compiz hoitaisi luultavasti homman sekin, mutta ainakaan itse en sitä suostu käyttämään muista syistä. Samoin Compton tekee kompositoinnin raudalla, mutta on AMD:n omaan toteutukseen verrattuna kömpelö.

Add comment January 22nd, 2016

2015 touhut

Mennyt vuosi jää mieleen etenkin stressin vuoksi: monenlaista velvollisuutta, vaatimusta ja haastetta oli niskassa lähes koko ajan niin töiden, opintojen kuin siviilielämänkin taholta. Pitkään jatkunut synkeä sää tekee loppuvuoden tunnelmista ehkä vieläkin lakonisemmat — toivottavasti 2016 jo hieman helpottaa, tosin tuskin ainakaan ennen kesää. Jälleen siis kootusti touhuja vuoden varrelta:

Skenetykset

Vuosi jäi taas kovin epätuotteliaaksi, vaikka jotain sentään tuli tälläkin saralla näppäiltyä. Paybackeille saatiin aikaiseksi pieni yhden osan MSX-intro Suksimme kuuhun, Assemblyille ei mitään, ja Vammala partyille yhden osan demo sekä ihan virallisestikin julkaistu PETSCII-kuva. Zoot jäivät perhe- ja majoitussyistä harmillisesti väliin, mutta tulevathan ne sieltä taas kahden vuoden päästä.

PETSCII-editori palasi reilun vuoden tauon jälkeen elävien kirjoihin, ja tunkkasin mukaan yhtä sun toista pientä parannusta. Bugikorjausten lisäksi tein myös uusia ominaisuuksia, kuten asetustiedoston ja optimoidumman piirtokoodin. Uskollisia käyttäjiä tuntuu edelleen löytyvän, vaikka suurin PETSCII-huuma jo laantuikin. Zoon tekstigrafiikkakompossa kaikki paitsi yksi tekele olivat edikalla tehtyjä, minkä lisäksi loppuvuodesta Debris työsti useita Star Wars -aiheisia kuvia.

Metaskeneilyn puolella tapahtui sentään enemmän: artikkeli kräkki-introista päätyi ihan merkittävälle foorumille ja väitöskirjakin eteni kymmeniä sivuja. Demoscene Researchiin tippui päivityksiä melko tasaisesti ja mukaan saatiin uusi ylläpitäjäkin. Assemblyillä päädyin Ylen haastateltavaksi demojen tiimoilta (pitkät jäykät horinat leikattiin hienosti luontevan näköiseksi pikku pätkäksi).

Kirjoitushommia

Kaikenlainen kirjoittelu vei suuren osan vuoden ajasta. Väitöskirjan raakatekstistä lienee n. 2/3 valmiina, joten tänä vuonna lienee ihan realistista saada se kaavittua kasaan ja sitä myötä lopultakin pois päiväjärjestyksestä. Julki tuli seuraavia:

Tavalla tai toisella eteeni päätyi myös muutama arvioitava artikkeli, ja kun kutsuivat Puolaankin keynote-puhujaksi, niin akateemisten luottamustehtävien osalta 2015 oli oikein huippuvuosi. Vastapainoksi olin kylläkin joutua kilometritehtaalle, kun määräaikainen lehtoraatti loppui ja jouduin hakemaan paikkaani uudestaan.

Virittelyjä

Kaapit ovat sen verran täynnä jo koneenraatoja, että tänä vuonna ei tullut juuri uusia hankintoja — jouluksi sentään Mikolta paketissa oleva Canon X-07. Säätöhommat keskittyivät lähinnä tuoreempaan rautaan ja Linuxiin: Minttiä meni useampaan koneeseen, Mac Minit saivat uutta tekniikkaa sisuksiinsa ja Shuttle-raato palasi elävien kirjoihin.

Vuoden avainsana on Linuxin lisäksi ollut SSD: kaikki vähänkään modernimmat koneet on nyt varustettu sellaisella. Ja miksipä ei, kun nopeusero on parhaimmillaan moninkertainen. Erityisesti Linux tuntuu hyötyvän SSD:stä, sillä ohjelmien käynnistysajat ovat pudonneet sekuntiin pariin, eikä koneen käynnistymistäkään tarvi pitkään odotella. Toki Mäkitkin nopeutuvat, mutta eivät aivan samassa suhteessa.

Eläviä kuvia

Kuten toissa vuonnakin, elokuvia tuli katseltua reippaasti. Mitään tarkkaa laskuria ei ole, mutta lukema lienee pitkällä kahdensadan päällä. Länkkärien osalta pidin oikein kirjaa: 160 aiemmin näkemätöntä, minkä lisäksi jonkin verran klassikkojen uudelleenkatseluja. DVD-hylly tursuaa jo siinä määrin, että pitää ruveta keksimään jotain sijoitusratkaisua tyyliin imaget talteen ja levyt varastoon. Tai vaihtoehtoisesti levyt ja kannet talteen ja kuoret kuuseen.

Ihan tätä tahtia tuskin jatkuu enää 2016, sillä länkkärien osalta merkittävimmät teokset on jo nähty, ja luvassa on enää valtaisaa bulkin kaapimista, harvakseltaan ilmestyviä uusia leffoja sekä HD-julkaisuja klassikoista. Länkkärimaratoneja pitää jatkaa edelleen niiden viihdearvon takia: menneenä vuotena oli kaksi virallista ja yksi epämuodollisempi sessio.

2 comments January 1st, 2016

Intel MEI + Linux + fan control

Everything related to meifand was moved to its separate project page: http://www.kameli.net/marq/?page_id=4263

Add comment December 12th, 2015

Nvidia ja videon repeily (voi kökkö)

Ehdin jo tottua Intelin integroidun näyttiksen kanssa siihen, että video toistuu nätisti repeilemättä VLC:llä, mutta nyt palasin Nvidia-maahan ja ongelmia ilmeni saman tien. Alla on Mint/MATE ja ikkunamanagerina vsyncin päälle huonosti ymmärtävä Marco. Useamman tunnin googletuksella tuli vastaan seuraavia paremmin ja huonommin toimivia ehdotuksia:

  1. Käsienheiluttelut. Laita Nvidian asetuksista täydet tehot päälle, poista käytöstä X-palvelimelta backing store jne. Ei auta.
  2. VLC:n videoulostulo. Xvideo repeilee pahasti, normaali X11 on kohtuuttoman hidas ja vielä GLX:kin repeilee tarpeettoman paljon. Ei auta.
  3. Compiz. Marcon vaihtaminen Compiziin tosiaankin auttoi asiaa, koska jälkimmäinen kompositoi koko ruudun. Valitettavasti bugeja tuli vastaan lyhyelläkin käytöllä ihan liikaa, enkä saanut asetuksia muutenkaan mieleisikseni.
  4. Compton. Marcon kanssa toimiva pelkkä komposiittori (kompostori?) ratkaisi sekin repeilyn kunnialla, mutta vei valitettavasti aivan liikaa tehoa, minkä lisäksi päivitystaajuus lerpahti.
  5. Nvidian kikkale. Nvidiakin tukee kaikessa hiljaisuudessa kompositointia, vaikkei sitä saakaan normaaleista asetuksista päälle. Jonkin verran vie tehoja sekin, mutta vähemmän kuin Compton.

Kohta 5 vaatii seuraavanlaisen, ei aivan ilmeisen /etc/X11/xorg.confin:

Section "Screen"
  Identifier "nvidia"
  Device "nvidia"
  Option "TripleBuffer" "True"
  Option "metamodes" "nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"
EndSection

Tämän jälkeen Nvidian ajuri kompositoi ja synkronoi ruudunpiirron ja videot toistuvat kauniisti, eivätkä ikkunatkaan splittaile liikutellessa. Pienenä kauneusvirheenä Xvideo on hidas, joten VLC:hen kannattaa vaihtaa ulostuloksi GLX. Ei tämäkään mikään täydellinen ratkaisu ole, sillä X vie nyt tyhjän panttina jonkin verran prosessoritehoa ja kuormitettuna enemmän, minkä lisäksi OpenGL hidastuu jonkin verran. Riittää kuitenkin tähän hätään tilapäisratkaisuksi parempaa etsiessä — vinkkejä otetaan mielellään vastaan.

edit: eihän tämä ollut tietenkään koko kuva vielä. Kävi ilmi, että Nvidian ajuri hukkaa kompositoinnin, jos kone käy nukkumassa. Tilannetta voi korjailla palauttamalla kompostorin nvidia-settingsin avulla. Itse laittoin paikkaan /etc/pm/sleep.d ajettavan tiedoston 20_nvidia seuraavilla sisuksilla:

#!/bin/sh
case "${1}" in
    resume|thaw)
        nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline=Off }"
        nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline=On }"
    ;; 
esac

Hieman kludge, mutta tuntuu toimivan toistaiseksi.

edit 2: Ruudunsäästäjä tuhoaa kompositoinnin myös! Tämän saa kierrettyä poistamalla ruudunsäästäjän kokonaan käytöstä ja pimentämällä näytön virransäästöasetuksilla.

Add comment December 2nd, 2015

Sekalaisia Linux-juttuja

Lähinnä itselleni muistiin, kun näitä taas joskus tarvii. Jos on iloa jollekulle muullekin, niin sen parempi.

ATA Secure Erase

Käytetty SSD on huomattavasti uutta hitaampi, etenkin kirjoituksessa, jos TRIM ei ole ollut käytössä: levy joutuu lukemaan, muokkaamaan ja kirjoittamaan blokin, vaikka alueella olisi vain poistettuja tiedostoja. Onneksi nopeus on myös palautettavissa ennalleen helposti. Jekun nimi on ATA Secure Erase, joka merkitsee kaikki blokit käyttämättömiksi. Lyhyesti ja ytimekkäästi keskeisin litania:

hdparm --user-master u --security-set-pass PasSWorD /dev/sdX
hdparm --user-master u --security-erase PasSWorD /dev/sdX

Jossa X:n tilalle vaihdetaan tietysti se haluttu levy (kohtuullista tarkkuutta ja varovaisuutta noudattaen). Tyhjennyksessä voi kestää pieni tovi.

MacBookin hiiripädi

Hiiripädin asetukset ovat oletuksena aika epämukavat Mint+MacBook-yhdistelmällä: pädiä pitää painaa reippaasti ja liike on hyppivää. Onneksi netistä löytyi tähänkin lääkkeet:

synclient FingerHigh=10
synclient FingerLow=1

Luonnoton skrolli

Jos joku oikeasti haluaa hiiripädinsä skrollaavan kahdella sormella samalla tavoin kuin Applen mielestä on “luonnollinen” suunta, niin tätä voi kokeilla:

synclient VertScrollDelta=-100

Levyliikenteen optimointi

Perinteinen mekaaninen kiintolevy hyötyy siitä, että levypyyntöjä puskuroidaan ja ryhmitellään siten, että lukupään tarvitsee liikkua mahdollisimman vähän. SSD:llä hakuajat eivät ole samanlainen ongelma, joten uudelleenjärjestelystä voi olla jopa haittaa latenssin muodossa. Ohjelmien ja levyn välissä istuu IO scheduler eli elevator, jota voi vaihtaa levykohtaisesti:

echo elevator >/sys/block/sdX/queue/scheduler

Missä X on aseman nimi ja elevator yksi seuraavista (tyypillisimmät, muitakin on olemassa):

  • noop – pyynnöt menevät saapumisjärjestyksessä levylle.
  • deadline – korostaa levypyyntöjen ajallaan suorittamista.
  • cfq – jakaa io-aikaa prosesseille tasaisesti ja optimoi kiintolevyn hakuaikoja.

Paras vaihtoehto löytyy kokeilemalla: netin tietäväiset suosittavat maksiminopeuden saamiseksi noopia SSD:lle, tosin deadline ei tukkeudu suurista siirroista. Mitään konsensusta aiheesta ei tunnu olevan, mutta raskaassa käytössä eroja on havaittu ainakin mittaamalla.

Swapataanko vaiko eikö?

Linux on oletuksena melko hanakka swappaamaan, mikä ei ole suinkaan huono asia: pitkään turhan panttina roikkuneet sivut on hyväkin siivota levylle, jotta aktiivisille ohjelmille ja levyvälimuistille on rammia tarjolla. Isoilla muistimäärillä (esim. tässä pöntössä on 16 gigatavua) moiselle ei ole kuitenkaan paljon tarvetta, minkä lisäksi SSD:llä sijaitsevaa swappia ei viitsisi kiusata jatkuvasti. Tätä varten kernelissä on asetus nimeltään swappiness. Sitä voi säätää joko väliaikaisesti:

echo 10 > /proc/sys/vm/swappiness

tai pysyvämmin lisäämällä tiedostoon /etc/sysctl.conf rivin:

vm.swappiness = 10

Mitä suurempi numero (0..100), sitä hanakammin sivuja siivotaan levylle. Jos olen asian oikein ymmärtänyt, niin lukua voi ajatella prosenttina, jonka ääripäissä ovat swapin ohittaminen kokonaan ja sivun swappaaminen aina kuin mahdollista. Oletuksena arvo on niinkin korkea kuin 60. Itse olen ollut tyytyväinen viitoseen; normitilanteessa swappia ei juuri häiritä (omassa arkikäytössäni riittäisi oikeastaan yhtä hyvin kahdeksan gigaa muistia).

VLC hiljenee kelaillessa

Etenkin hitaalla koneella ja/tai hd-matskulla käy VLC:n ja Pulseaudion kanssa toisinaan niin, että leffassa eteen- tai taaksepäin hyppiessä ääni katoaa hetkellisesti tai pysyvästi. Hieman kummallinen, mutta toimiva ratkaisu on asettaa äänirajapinnaksi ALSA ja sen ulostuloksi Pulseaudio.

Samsung 850 EVO ja TRIM

TRIM on hyvä olla päällä SSD:n kanssa, jos suinkin mahdollista, sillä muuten kirjoitukset hidastuvat pidemmän päälle. Samsungin suositun 850 EVO -sarjan kanssa havaittiin kuitenkin ongelmia TRIM:n toimivuudessa Linuxilla, johtuen käskyjen puskuroinnista, jonka levy virheellisesti mainostaa osaavansa. Vastaavaa sekoilua ilmeni myös vanhempien 840-sarjalaisten uusimmalla firmwarella. Windows ja OS X eivät puskurointia muutenkaan käytä, joten ne välttyivät ongelmilta.

Viasta seurasi melkoinen paniikki, ja EVO:t ehdittiin jo tuomita täysin käyttökelvottomiksi Linuxissa. Tilanne ei kuitenkaan ole oikeasti niin paha, sillä vakiona TRIM (discard) ei ole tiedostojärjestelmillä edes päällä, ja bugikorjauskin tuli kerneliin nopeasti, kun ongelman syy selvisi. Mitään hämminkiä ei pitäisi ilmetä, kunhan asentaa tuoreehkon kernelin ennen TRIM:n päälle kytkemistä. Ja sehän tapahtuu lisäämällä /etc/fstabiin tiedostojärjestelmän parametreihin “discard”. Itselläni esimerkiksi näin:

UUID=6c34a60f-7464-422b-892f-dd335ba1d90c / ext4 errors=remount-ro,discard 0 1

Olen käyttänyt omaa Samsungiani viitisen kuukautta TRIM päällä ilman sekoilua, joten eiköhän tuo puoli ole kunnossa.

Add comment November 29th, 2015

Previous Posts


Kommenttien virta

Aiheet