Oracle accorcia i tempi del boot del Kernel

2

Per molti, Oracle è uno sciacallo del mondo open-source: compra (o copia) progetti gestiti da una community e ne vende il prodotto derivato, spesso rendendo disponibili eventuali migliore solo a pagamento.
Del resto, abbiamo visto applicato questo schema a parecchi progetti: Java e OpenOffice (dopo l’acquisto di SUN), MySQL e Unbreakable Linux (che sembra sempre una copia di Red Hat).

Ma questa volta siamo testimoni di un contributo concreto alla community.
Settimana scorsa è infatti comparsa una proposta di patch nella newsletter dedicata al Kernel a firma di Daniel Jordan, sviluppatore di Oracle.
La patch migliora un meccanismo di gestione dei thread interna al Kernel, permettendo non solo l’esecuzione parallela di più task (che potremmo impropriamente chiamare processi) di thread singoli, ma anche la gestione di task di thread multipli.

Questa capacità risulta particolarmente importante nelle fasi di boot: molte operazioni sono di inizializzazione, con scoperta dei vari componenti. Queste operazioni sono normalmente single threaded, quindi (spesso) svolte in parallelo, ma la singola operazione non è possibile distribuirla tra i vari processori disponibili. Quindi, specialmente in sistemi server con molti componenti (come parecchi banchi di memoria), si creano dei colli di bottiglia: invece di inizializzare tutti i banchi in contemporanea, vanno fatti uno per uno. E i risultati sembrano ben promettenti:

This has been tested on a variety of x86 systems and speeds up kernel
boot by 6% to 49% by making deferred init 63% to 91% faster. Patch 6
has detailed numbers. Test results from other systems appreciated.

Questa [patch] è stata testata su un certo numero di sistemi x86 e i miglioramenti nei tempi del boot del Kernel sono stati tra il 6% e il 49%, facendo l’iniziazione differita tra il 63% e il 91% più veloce. La patch 6 ha i numeri al dettaglio. I risultati dei test su altri sistemi sono molto apprezzati.

Il lavoro è una chiara prosecuzione di quanto già presentato nel blog di Oracle a febbraio (con coautore proprio Daniel Jordan), quando i test si concentravano sulle prestazioni del reparto crypto del Kernel (reparto per cui questa funzionalità è nata). E quanto fornito sembra essere solo l’inizio: è stato pubblicato anche il branch di sviluppo, dedicato all’integrazione di altri users (gli altri sottosistemi del Kernel, in questo contesto tecnico).

Se i vantaggi potranno essere davvero estesi a molti (se non tutti) i sottosistemi del Kernel, i miglioramenti potenziali sono davvero interessanti. E per una volta non potremo lamentarci di Oracle che si appropria di qualcosa, ma – anzi – la dovremo ringraziare per averci dato qualcosa!

Ho coltivato la mia passione per l’informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.

2 risposte a “Oracle accorcia i tempi del boot del Kernel”

  1. Avatar Mauro Miatello
    Mauro Miatello

    quali sarebbero le migliorie apportate a OpenOffice? il fine vita senza accanimento forse… 😀

  2. Avatar Marco Bonfiglio
    Marco Bonfiglio

    Tutte precisazioni valide, grazie.
    Il paragrafo di apertura serviva a inquadrare rapidamente la situazione, con una dose – necessaria – di semplificazione dozzinale, ed evocare solo qualche situazione di conoscenza comune, senza volerne essere un riassunto fedele. Come ben evidenziato dall’articolo, la sola storia di OpenOffice avrebbe bisogno di un articolo tutto per sé, per essere spiegata a dovere.

    Per quanto riguarda il “copia” non voleva essere un’accusa, ma il riporto di un’opinione (“Per molti…”), per altro tra parentesi proprio per rendere evidente che ha un valore diverso dal “compra” lì vicino. Concetto esplicitato per Unbreakable Linux (“che sembra…”) poco dopo.

    P.S Grazie ancora: fa piacere avere lettori tanto preparati e attenti! 🙂

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *