Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Installazione, configurazione e uso di programmi e strumenti.
einstein1969
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 931
Iscrizione: mercoledì 7 dicembre 2005, 11:52

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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?
Avatar utente
il_muflone
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 18878
Iscrizione: venerdì 1 maggio 2009, 15:31
Desktop: GNOME Shell
Distribuzione: Arch Linux x86_64
Località: Profondo sud
Contatti:

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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
http://www.muflone.com - I miei contatti e i miei progetti - La guida completa a VirtualBox
Non mandatemi messaggi privati per chiedere aiuto, li cancello senza rispondere nemmeno.
einstein1969
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 931
Iscrizione: mercoledì 7 dicembre 2005, 11:52

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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 '^/'
mrcrowley
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 435
Iscrizione: mercoledì 9 dicembre 2009, 21:21

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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
einstein1969
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 931
Iscrizione: mercoledì 7 dicembre 2005, 11:52

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio da einstein1969 »

Penso che dovresti aprire un 3D apposito per il tuo caso.
mrcrowley
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 435
Iscrizione: mercoledì 9 dicembre 2009, 21:21

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio da mrcrowley »

C'ho provato, ma senza risposte.
Comunque scusa l'intrusione.
einstein1969
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 931
Iscrizione: mercoledì 7 dicembre 2005, 11:52

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio da einstein1969 »

Mandami il link del 3D che hai aperto via messaggio privato!
Avatar utente
edyday
Prode Principiante
Messaggi: 75
Iscrizione: sabato 15 agosto 2009, 10:07
Desktop: ubuntu 14.04 lts 64bit
Distribuzione: ubuntu 14.04 lts 64bit
Località: Reggio Emilia

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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
Ultima modifica di edyday il lunedì 14 giugno 2010, 17:25, modificato 1 volta in totale.
einstein1969
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 931
Iscrizione: mercoledì 7 dicembre 2005, 11:52

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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!!!!
Ultima modifica di einstein1969 il martedì 15 giugno 2010, 1:31, modificato 1 volta in totale.
Avatar utente
edyday
Prode Principiante
Messaggi: 75
Iscrizione: sabato 15 agosto 2009, 10:07
Desktop: ubuntu 14.04 lts 64bit
Distribuzione: ubuntu 14.04 lts 64bit
Località: Reggio Emilia

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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:(
einstein1969
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 931
Iscrizione: mercoledì 7 dicembre 2005, 11:52

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio 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...
vismund
Prode Principiante
Messaggi: 40
Iscrizione: martedì 17 marzo 2009, 1:53
Desktop: ubuntu
Distribuzione: Ubuntu 12.04.1 LTS x86_64

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio da vismund »

Avatar utente
il_muflone
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 18878
Iscrizione: venerdì 1 maggio 2009, 15:31
Desktop: GNOME Shell
Distribuzione: Arch Linux x86_64
Località: Profondo sud
Contatti:

Re: Avvio ubuntu 10.04, defrag ext3, uso ext4 e ureadahead

Messaggio da il_muflone »

hai un boot di 35 secondi, non c'e` niente da toccare e non aspettarti di migliorar nulla
http://www.muflone.com - I miei contatti e i miei progetti - La guida completa a VirtualBox
Non mandatemi messaggi privati per chiedere aiuto, li cancello senza rispondere nemmeno.
Scrivi risposta

Ritorna a “Applicazioni”

Chi c’è in linea

Visualizzano questa sezione: Dromji e 15 ospiti