Pagina 2 di 2
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: mercoledì 26 maggio 2010, 14:02
da einstein1969
il_muflone ha scritto:
l'I/O wait è il tempo di attesa che finisca il disco, per diminuirlo devi aumentare la velocità del disco.
con un throughtput di picco di 72 MB non penso tu possa mai andar lontano, soprattutto nel caso di un notebook dotato di dischi lenti.
Allora...
Mi sa che non ci stiamo capendo. Io so come funziona il meccanismo dell'IO/wait etc.
Uno dei parametro dell'IO/wait e' il tempo dovuto al seek della testina.
Se si riesce ad ottimizzare (come ho fatto con la deframmentazione) il movimento della testina del disco si ha un calo del tempo di IO e quindi un minor wait di IO.
Per il throughtput di 72 MB/s che quello massimo e' , se leggo bene il grafico, solo in una parte del grafico.
Inoltre dal grafico , sempre se lo leggo bene, la parte di ureadahead sembra bloccante per il resto dell'avvio del sistema. In quel momento la CPU e' inutilizzata. Ma perche' c'e' un solo processo in attesa... Se ce ne fosse un'altro che non deve fare IO verrebbe utilizzata...
Sono stato chiaro?
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: mercoledì 26 maggio 2010, 16:04
da il_muflone
no, non sei stato chiaro, o meglio lo sei linguisticamente ma non tecnicamente.
non puoi chiedere di diminuire l'I/O wait, esso è una conseguenza di un'operazione meccanica che porta via tempo. ciò che è ottimizzabile ti è stato già detto, lo fa ureadahead evitando il seek nella ricerca dei files. non puoi quindi ottimizzare l'I/O wait di ureadahead.
inoltre ureadahead carica solo una certa parte dei files di avvio, tu innocentemente chiedi di renderlo non bloccante senza pensare che ciò che viene dopo ha bisogno di ciò che viene prima. ureadahead si comporta come una sorta di ripresa dall'ibernazione. fino a che non ha terminato di caricare tutto ciò che ha memorizzato, non potrà partire nessun altro processo.
rendere ureadahead non bloccante non ha granché significato, le applicazioni successive hanno bisogno dei moduli caricati e di tutte le altre cose memorizzate da ureadahead.
io comprendo il tuo desiderio di ottimizzare ma secondo me hai mal interpretato le parole di shuttleworth intorno al boot di 10 secondi. con la tua macchina stai a circa 25 secondi
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: mercoledì 26 maggio 2010, 16:34
da einstein1969
il_muflone ha scritto:
no, non sei stato chiaro, o meglio lo sei linguisticamente ma non tecnicamente.
non puoi chiedere di diminuire l'I/O wait, esso è una conseguenza di un'operazione meccanica che porta via tempo. ciò che è ottimizzabile ti è stato già detto, lo fa ureadahead evitando il seek nella ricerca dei files. non puoi quindi ottimizzare l'I/O wait di ureadahead.
inoltre ureadahead carica solo una certa parte dei files di avvio, tu innocentemente chiedi di renderlo non bloccante senza pensare che ciò che viene dopo ha bisogno di ciò che viene prima. ureadahead si comporta come una sorta di ripresa dall'ibernazione. fino a che non ha terminato di caricare tutto ciò che ha memorizzato, non potrà partire nessun altro processo.
rendere ureadahead non bloccante non ha granché significato, le applicazioni successive hanno bisogno dei moduli caricati e di tutte le altre cose memorizzate da ureadahead.
io comprendo il tuo desiderio di ottimizzare ma secondo me hai mal interpretato le parole di shuttleworth intorno al boot di 10 secondi. con la tua macchina stai a circa 25 secondi
Secondo quanto ho sperimentato dal defrag l'ottimizzazione del tempo di IO e' possibile. Sono passato da 60 secondi a 50 secondi.
Ora vorrei ottimizzare ancora. Se i file sono piu' vicini tra loro il tempo di seek puo' essere minore specialmente se il disco e' molto grande.
Da quello che sto vedendo il tempo di caricamento di 90MB e' circa 10-15 secondi il che mi sembra un po' eccessivo.
Ho trovato che altri stanno lamentando quello che sto dicendo qui in questo bug
https://bugs.launchpad.net/ubuntu/+sour ... bug/492841
Inoltre rispetto al fatto di caricare prima in memoria quello che serve... Si potrebbe pensare di caricare quello che serve e cominciare a lavorare su quello che si e' caricato prima di caricare tutto... tecnicamente penso sia corretto.
Ho trovato anche i comandi per controllare la situazione ed avere la lista dei files.
Codice: Seleziona tutto
sudo /sbin/ureadahead --debug
sudo ureadahead --dump --sort=open | grep '^/'
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: lunedì 31 maggio 2010, 11:03
da mrcrowley
Scusate ragazzi, se mi intrometto in questa discussione ma ha visto che si parla di tempi di avvio ....
Ho fatto l'avanzamento a Kubuntu 10.04 e il mio sistema impiega 1'15" dal grub al login grafico, dandomi un messaggio di errore di Udev e uno di Ureadahead terminated with status 5.
Potete aiutarmi ???
Devo postarvi il Bootchart ??
Saluti
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: martedì 1 giugno 2010, 13:44
da einstein1969
Penso che dovresti aprire un 3D apposito per il tuo caso.
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: martedì 1 giugno 2010, 13:48
da mrcrowley
C'ho provato, ma senza risposte.
Comunque scusa l'intrusione.
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: martedì 1 giugno 2010, 19:32
da einstein1969
Mandami il link del 3D che hai aperto via messaggio privato!
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: lunedì 14 giugno 2010, 17:20
da edyday
Up+1 Einstein
Anche io ho pensato che si potrebbe fare un sort dei file caricati durante ureadahead e sono abbastanza sicuro che velocizzerebbe i tempi (di quanto e da vedere) perchè la testina dell'hd non avrebbe tempi morti nel cercare ogni volta l'inizio del file da leggere.
Se vi può interessare ho trovato un articolo in cui si spiega come testare l'avvio del sistema con e senza ureadahead e che , alla fine, conviene sempre farlo con.
http://ubuntuforums.org/showthread.php?t=1434502
Ho testato la "nuova creazione" del file di ureadahead e posso dire che mi è servita molto (avevo un tempo molto lungo tra logine d utilizzo del desktop).
EDIT: @einstein: questo link potrebbe descrivere quello che volevi fare tu con la partizione di boot
http://ubuntuforums.org/showpost.php?p= ... stcount=13
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: lunedì 14 giugno 2010, 22:01
da einstein1969
Grazie dei link edyday!!!!
proseguo da
qui e posto la parte di codice che sto sviluppando.
Ancora scheletro ma gia' qualcosa
Versione 0.1
Codice: Seleziona tutto
#!/bin/bash
#riferimenti ext2/3
#http://e2fsprogs.sourceforge.net/ext2intro.html
#http://e2fsprogs.sourceforge.net/extensions-ext23/
#http://tldp.org/HOWTO/Filesystems-HOWTO-6.html
#http://www.science.unitn.it/~fiorella/guidelinux/tlk/node95.html
#http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html
#http://www.nongnu.org/ext2-doc/ext2.html#DEF-INODES
#http://ext2.sourceforge.net/2005-ols/paper-html/
#http://uranus.chrysocome.net/explore2fs/es2fs.htm
#http://ext2.sourceforge.net/2005-ols/paper-html/node3.html
#http://lxr.linux.no/#linux+v2.6.29/Documentation/filesystems/ext2.txt
#https://ext4.wiki.kernel.org/index.php/Publications
#info:
# ordinare per inode dovrebbe aiutare... con i tempi di seek, provare...
# ricordarsi di montare il fs veloce con "noatime","async" e "data" (vedi il manuale)
echo "elenco files in ordine di apertura (open)"
sudo ureadahead --dump --sort=open | grep '^/' | grep -v created |cut --delimiter="(" -f 1 | while read iname
do
[[ -f "$iname" ]] && (( total += `du -b "$iname" | cut -f 1`)) && echo -ne "\r$total";
#[[ -f "$iname" ]] && (( tot += `stat --printf=%s "$iname"` )) && echo -ne "\r$tot";
# calcolo i frammenti con filefrag
#echo Processo: "$iname" `basename "$iname"` `dirname "$iname"` "$somma"
done && echo
#Pseudo Codice per spostare i files ed eventualmente TORNARE INDIETRO!!!:
#cp -a <nomefile> /dirdestinazione
#per tornare indietro
#echo cp -a /dirdestinazione/basename dirname > reverse.sh
#rm <nomefile>
#ln <nomefile> ....
questo e' il metodo per testare i tempi
Codice: Seleziona tutto
sudo /sbin/ureadahead --debug
/var/lib/ureadahead/pack: created mer, 26 mag 2010 09:48:28 +0000 for hdd 7:0
53 inode groups, 3867 files, 3169 blocks (91924 kB)
Read pack: 0.048s
Preload ext2fs inodes: 2.428s
ureadahead:/home/fra/.local/share/gvfs-metadata/home-77b2d91b.log: Nessun file o directory
Open files: 1.861s
Readahead: 5.677s
vediamo che ci vogliono 2,5 secondi per gli inodes, 2 secondi per aprire i files e 6 secondi per la lettura.
Totale circa 10 secondi a sistema scarico. Che e' quello mostrato da readahead. Sono circa 90MB
Questa e' la parte per creare la partizione apposita... (io ho tutto su filesystem montato via loop quindi va riadattata)
Passi da seguire:
1) creare una partizione di 128MB o piu' e aggiungerla
dd if=/dev/zero of=/host/ubuntu/disks/avvio.disk bs=128M count=1 (non uso il seek per allocare subito tutto lo spazio)
mkfs -V -t ext3 /host/ubuntu/disks/avvio.disk
2) montarla per copiarci dentro i files
mkdir /tmp/avviotmp
sudo mount -o loop /host/ubuntu/disks/avvio.disk /tmp/avviotmp
per fstab:
sudo mkdir /avvioveloce
e aggiunta questa riga in /etc/fstab:
/host/ubuntu/disks/avvio.disk /avvioveloce ext3 loop,errors=remount-ro,user_xattr 0 1
3) fare l'elenco dei file
Questa parte e' quella che sto sviluppando sopra!!!!
Aggiorno ogni tanto , se volete sviluppare pezzi ben venga!!!!
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: martedì 15 giugno 2010, 1:13
da edyday
Per il punto 3, se ho ben capito, c'è già il comando nel post che ti ho linkato. Cerca la parola "dump" in quel post e dovresti trovare il comando che ti elenca i file, spero sia quello che cerchi:D
Tuttavia già un altro utente aveva proposto una situazione simile, ma anche lui ha ammesso che non è pratica e soprattutto comoda:(
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: martedì 15 giugno 2010, 1:27
da einstein1969
Si , si il dump l'ho gia' sviluppato devo solo raffinarlo. Se vedi sopra c'e' nel primo riquadro.
Lo so che non e' comoda... io volevo fare dei comandi semplici per renderla comoda...
Piu' che altro e' una curiosita' per capire quanto influisce la posizione dei file nel disco... visto che un deframmentatore ancora non esiste...
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: lunedì 13 settembre 2010, 21:51
da vismund
Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead
Inviato: lunedì 13 settembre 2010, 21:58
da il_muflone
hai un boot di 35 secondi, non c'e` niente da toccare e non aspettarti di migliorar nulla