martedì ott 14, 2008

Annunci di benchmark e record nei sistemi con 4 processori

...con l'annuncio nella famiglia CoolThreads del nuovo sistema Sun SPARC Enterprise T5440 Server (che può ospitare fino a 4 processori UltraSPARC T2 Plus, ciascuno con 8 core) sono stati presentati anche i risultati dei principali benchmark di mercato, sia quelli più "tecnici" (come SPECcpu2006, SPECjbb2005, SPECjAppServer2004) che quelli più "realistici", basati su applicazioni "vere" (ad esempio SAP e Siebel).

La maggior parte delle informazioni utili sono state raccolte nel blog del collega Allan Packer.

Il sistema include le funzionalità di virtualizzazione e partizionamento delle risorse sia a livello firmware (tramite i Logical Domain) che di sistema operativo (con i Solaris Container). In particolare con i Solaris Container è possibile consolidare in uno stesso sistema fisico ambienti Solaris 8, Solaris 9 e Solaris 10.

Ricordo che è possibile approfondire "a piacere" l'architettura hardware e software del sistema, dato che sono distribuite in modalità open source rispettivamente nei progetti OpenSPARC e OpenSolaris.

venerdì lug 25, 2008

Sun, OpenSPARC e Haskell per il multi-core

Nell'ambito dell'iniziativa OpenSPARC, Sun ha donato un sistema T5120 (e $10.000 per una borsa di studio per uno studente) per ottimizzare l'uso di Haskell (un linguaggio di programmazione puramente funzionale) su sistemi multi-core. Gli sviluppi saranno focalizzati sul compilatore GHC.

venerdì set 14, 2007

Creare una partizione con i Logical Domain (LDom)

Sui sistemi CoolThreads (come i Sun Fire T1000 e T2000) Sun ha reso gratuitamente disponibile i Logical Domain (LDom), una tecnologia che permette di partizionarr logicamente le risorse. All'interno di tali partizioni è possibile installare un sistema su tutti i sistemi, sia in architettura SPARC che x86/x64.

Per predisporre un sistema e scaricare il software di gestione degli LDom è sufficiente seguire questo link.

Installati l'LDom Manager ed il Security Toolkit, si può partire con il partizionamento. Il primo passo è di ridurre le risorse associate al dominio principale (l'unico ad oggi presente sul sistema) per renderle disponibili per le nuove partizioni.

# pkgadd SUNWldm
# svcadm ldmd start

Quando l'LDom Manager è attivo si possono cominciare ad utilizzare i comandi di gestione: 

# ldm list

Ora vi è solo un dominio attivo e tale dominio utilizza tutte le risorse disponibili. Per iniziare aggiungiamo i servizi di base del Control Domain, ovvero un Disk Server, un Virtual Switch ed una Virtual Console:

# ldm add-vdiskserver primary-vds0 primary

Il Disk Server pemette la condivisione di device virtuali ai domini guest, che utilizzeranno in questa configurazione un I/O virtualizzato attraverso il Control Domain.

# ldm add-vswitch net-dev=e1000g0 primary-vsw0 primary

Il Virtual Switch crea un canale di comunicazione Layer 2 tra i guest domain. Serve un Virtual Switch per ogni rete (logica) aggiunta all'interno del sistema.

# ldm add-vconscon port-range=5000-5100 primary-vcc0 primary

Le console per i domini guest sono fornite come un servizio del Control Domain e le porte di rete sono assegnate in modo sequenziale nel range deinito, quindi in questo caso il primo guest domain userà la porta 5000.

Adesso assegnamo un insieme ridotto di risorse al dominio primario (il Control Domain). Tutte le risorse non assegnate faranno parte di un pool disponibile per gli altri domini (guest).

# ldm set-crypto 1 primary
# ldm set-vcpu 4 primary
# ldm set-mem 1g primary

Con questi comandi abbiamo assegnato al Control Domain 1 MAU (acceleratore crittografico), 4 vCPU (4 hardware thread dei 32 disponibili su un sistema con 1 processore UltraSPARC T1) ed 1 GB di memoria (RAM).

# ldm add-config initial

In questo modo abbiamo salvato la configurazione attuale nel Service Processor del sistema e possiamo riavviarlo per attivare i cambiamenti ed attivare i servizi di Virtual Terminal.

# shutdown -i6 -g0 -y
# svcadm enable vntsd

Al termine del reboot il sistema avrà 4 CPU ed 1 GB RAM. Possiamo ora definire il primo guest domain utilizzando le risorse disponibili:

# ldm create domain1
# ldm set-vcpu 2 domain1
# ldm set-mem 2g domain1

Questo dominio avrà quindi 2 CPU e 2 GB RAM.

# ldm add-vnet vnet1 primary-vsw0 domain1

Il dominio è ora connesso al Virtual Switch precedentemente creato.

# ldm add-vdiskserverdevice /dev/dsk/<some_device> vol1@primary vds0
# ldm add-vdisk vdisk0 vol1@primary-vds0 domain1

Dobbiamo ora fornire un device da utilizzare come disco di boot per il nuovo dominio. Possiamo utilizzare un disco intero (interno o esterno), uno slice di un disco, un volume ZFS o anche un file (come immagine di un disco). Su tale device sarà poi possibile installare Solaris (o Linux). Per i successivi domini sarà possibile copiare/clonare tale device in modo da rendere ancora più rapida l'installazione (e usare il clone di ZFS per risparmiare spazio).

Per poter utilizzare il nuovo dominio è necessario effettuare il "bind" delle risorse, in modo da riservarle per un uso esclusivo anche se il dominio non è ancora attivo.

# ldm bind domain1

E' possibile salvare la configurazione attuale con un altro nome, ed avere differenti configurazioni in modo da poter passare dall'una all'altra:

# ldm add-config config1

Per attivare il dominio, il comando è il seguente:

# ldm start domain1

Ora possiamo entrare in console nel dominio, effettuare il boot su un immagine esistente o installare il sistema oprativo tramite Jumpstart. Si possono anche configurare le variabili dell'open boot, come il boot device, l'auto boot del dominio, ecc. Ulteriori informazioni sono indicate nell'Administration Guide.

E' importante sottolineare che è possibile aggiungere o rimuovere vCPU a caldo da un dominio attivo (sia il primario che quelli creati in seguito) con il comando:

# ldm {add-vcpu|remove-vcpu} <number> domain1

giovedì gen 25, 2007

CoolThreads Selection Tool

Per verificare se un carico elaborativo è un possibile candidato per le piattaforme CoolThreads, basate sul processore UltraSPARC T1 (come i sistemi Sun Fire T1000 e T2000), Sun mette a disposizione il CoolThreads Selection Tool (cooltst).

Il tool, compatibile sia con Solaris che Linux, va lanciato come utente root durante un momento di carico del sistema e scrive il risultato dell'analisi (sono necessari circa 2 minuti) su standard output e su file (cooltst.out).

L'applicazione la si può scaricare qui, dove vi è anche un esempio dell'output prodotto, e fa parte di un insieme di strumenti per le piattaforme CoolThreads denominati "Cool Tools" disponibili seguendo questo link.


About

Un diario digitale sui miei interessi: Internet, Solaris, Java, Fotografia, ecc.

Search

Archives
« aprile 2014
lunmarmergiovensabdom
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    
       
Today