btrfs-tiedostojärjestelmälle
Ongelman ydin: alkuperäisessä toteutuksessa DISCARD suoritetaan synkronisesti muiden toimintojen kanssa, mikä johtaa joissakin tapauksissa suorituskykyongelmiin, koska asemat joutuvat odottamaan vastaavien komentojen valmistumista, mikä vaatii lisäaikaa. Tämä voi olla ongelma, jos aseman DISCARD-toteutus on hidas.
Asynkronisessa toteutuksessa ei tarvitse odottaa, että asema suorittaa DISCARD-toiminnon loppuun normaalin FS-toiminnan aikana, mikä poistaa ongelman siirtämällä tämän toiminnon taustalle. Esitetty toteutus suorittaa myös joitain optimointeja. Se esimerkiksi odottaa jonkin aikaa huolestuneena siitä, että lohkoa saatetaan pian käyttää niin, että DISCARD-proseduurin suorittamisessa ei ole mitään järkeä, ja se yrittää myös yhdistää alueita ennen varsinaista DISCARD-komennon suorittamista vähentääkseen operaatioiden kokonaismäärä.
Lähde: opennet.ru