Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare
Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare
Realizzato da Lenovo e installato presso il Cineca di Casalecchio di Reno, Pitagora offre circa 44 PFlop/s di potenza di calcolo ed è dedicato alla simulazione della fisica del plasma e allo studio dei materiali avanzati per la fusione, integrandosi nell’ecosistema del Tecnopolo di Bologna come infrastruttura strategica finanziata da EUROfusion e gestita in collaborazione con ENEA
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA
Rullo di lavaggio dei pavimenti abbinato a un potente motore da 28.000 Pa e a bracci esterni che si estendono: queste, e molte altre, le caratteristiche tecniche di Z60 Ultra Roller Complete, l'ultimo robot di Mova che pulisce secondo le nostre preferenze oppure lasciando far tutto alla ricca logica di intelligenza artificiale integrata
Renault Twingo E-Tech Electric: che prezzo!
Renault Twingo E-Tech Electric: che prezzo!
Renault annuncia la nuova vettura compatta del segmento A, che strizza l'occhio alla tradizione del modello abbinandovi una motorizzazione completamente elettrica e caratteristiche ideali per i tragitti urbani. Renault Twingo E-Tech Electric punta su abitabilità, per una lunghezza di meno di 3,8 metri, abbinata a un prezzo di lancio senza incentivi di 20.000€
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-11-2002, 02:06   #1
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Divide Et Impera 0.9.1 beta

Ragazzi e' pronta la prima beta pubblica del mio programmino...le istruzioni e le regole sono un po' lunghette, spero ci capiate...non c'e' bisogno che testiate il programma al di fuori delle regole, vi dico gia' io che non funzia. Mi interessa che facciate tante prove su diverse reti vere o no.

Siete pronti al beta-testing?

Ecco le regole...le ho scritte per un mio amico quindi sono rivolte a un "lui"...

Regole:
- ci sara' UNA sorgenta (source) che la farai partire con ./source <numero porta> <nome file> dove il primo parametro e' il numero della porta su cui il TCP appoggera' e il secondo parametro e' il nome del file di configurazione della rete (te ne ho messo uno di esempio in network.map e uno piu' ridotto piu' avanti per spiegartelo).
- ci possono essere da 1 a N (dopo ti diro' quanti al max) host che possono essere sia destinazioni (del messaggio) che computer collegati alla rete che possono duplicare il messaggio per accelerare l'arrivo alle destinazioni, li fai partire con ./host <numero porta> stessa cosa per questo parametro a quanto detto prima.
- c'e' un file chiamato pacchetto.dat dove ci sta il messaggio da spedire. Il messaggio non puo' superare i 20000 caratteri.
- c'e' un file di configurazione, puoi farne quanti te ne pare, tanto gli passi il nome alla sorgente quando la fai partire:

ti faccio un esempio cosi' capisci:

[ALL HOSTS]
127.0.0.1:5000:0
127.0.0.1:5001:2
127.0.0.1:5002:1
[HOST CONNECTIONS]
127.0.0.1:5000 to 127.0.0.1:5001/2
127.0.0.1:5000 to 127.0.0.1:5002/4
[HOST CONNECTIONS]
127.0.0.1:5001 to 127.0.0.1:5000/2
127.0.0.1:5001 to 127.0.0.1:5002/2
[HOST CONNECTIONS]
127.0.0.1:5002 to 127.0.0.1:5000/4
127.0.0.1:5002 to 127.0.0.1:5001/2
[END NETWORK INFO]

- le parti tra parentesi [quadre] non devi toccarle
- dopo ALL HOSTS ci stanno tutti gli indirizzi degli host (non piu' di 1000 compresa la sorgente), il primo deve essere quella della sorgente, gli altri possono essere a caso, pero' sappi che dopo l'ordine che dai deve rimanere per tutto il file, poi capirai.
- c'e' prima l'ip, poi i due punti obbligatori, la porta e un numero. Quel numero funzia cosi': 0 per la sorgente e' fisso, poi tutte le destinazioni che hai prescelto (quelli che dovranno ricevere il msg nel piu' breve tempo possibile) gli dai 1, se un host non e' ne' sorgente, ne' destinazione, ma e' collegato ad una destinazione ha il n. 2. Se un host e' collegato ad un 2 ma non ad un 1 (e non e' destinazione ovvio) e' un n. 3 e cosi' via...capito?
- Dopo tutti gli host ci sono le interconnessioni, prima la sorgente con tutti gli host (la sorgente e' collegata a TUTTI gli host per forza) devi mantenere l'ordine che hai dato in [ALL HOSTS] e poi devi fare tutte le interconnessioni, se un host non e' collegato con un altro ci metti bandwith uguale a 0, dopo capirai qual'e' la bandwith.
- la parte prima della "/" viene ignorata, serve a te per ricordarti di quale connessione si parla, pero' puoi scriverci quello che ti pare. Dopo la "/" invece c'e' la bandwith, ovvero la velocita' della interconnessione in caratteri al secondo.
- Se A e' collegato a B con bandwith 5 allora quando andrai a settare il collegamento tra B e A dovrai mettere sempre 5.

Devi cercare di creare delle mappe di reti complicatine e tenere i file di configurazione, cosi' me li spedisci sia che funzioni tutto sia che no.

Quando hai settato tutto per bene e lanciato gli host, ogni host ti scrivera' che cosa sta facendo e cosi' pure la sorgente che prima ti scrivera' tutta la rete come e' stata caricata e poi parte con la spedizione delle regole e dei dati.
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 02:08   #2
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Divide Et Impera 0.9.1 beta parte 1/2

questo e' il file per la sorgente da scompattare...
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 02:08   #3
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Divide Et Impera 0.9.1 beta parte 2/2

questo e' il file per gli host...
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 10:00   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Mi spighi com'è secondo te fisicamente un host che è raggiungbile da due perscorsi diversi ?

Ad esempio :

A è connesso a B, bandwidth 10
B è connesso a C, bandwidth 10
A è connesso a C, bandwidth 5

Mi spieghi come funzionerebbe il tuo programma in questo caso ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 10:24   #5
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da cionci
[b]Mi spighi com'è secondo te fisicamente un host che è raggiungbile da due perscorsi diversi ?

Ad esempio :

A è connesso a B, bandwidth 10
B è connesso a C, bandwidth 10
A è connesso a C, bandwidth 5

Mi spieghi come funzionerebbe il tuo programma in questo caso ?
Chi e' la sorgente e chi la/le destinazioni? Comunque stai violando la regola che la sorgente deve essere collegata a tutti gli host sia che siano di destinazione che no. Comunque si, un host puo' essere raggiungibile o direttamente o tramite un altro host che a sua volta e' collegato alla destinazione...cosi' intendo.
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 10:39   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Per connessione intendevo connessione fisica...
A è la sorgente e C è la destinazione...

Il fatto è che nessuno ti garantisce che il messaggio che vuoi mandare logicamente direttamente a C non passi fisicamente dalla conenttività A-B e poi vada sulla connettività B-C... Quindi il discorso della bandwidth va a farsi benedire...capito ciò che intendo ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 10:45   #7
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da cionci
[b]Per connessione intendevo connessione fisica...
A è la sorgente e C è la destinazione...

Il fatto è che nessuno ti garantisce che il messaggio che vuoi mandare logicamente direttamente a C non passi fisicamente dalla conenttività A-B e poi vada sulla connettività B-C... Quindi il discorso della bandwidth va a farsi benedire...capito ciò che intendo ?
Perche' il TCP/IP gia' segmenta di suo senza dirti niente? Non c'e' modo di forzare il passaggio?
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 10:59   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Cimmo
[b]
Perche' il TCP/IP gia' segmenta di suo senza dirti niente? Non c'e' modo di forzare il passaggio?
La segmentazione non sempre avviene...solitamente con send piccole (intorno al Kb) non segmenta quasi mai (ma non è assicurato)... Se la send supera il valore del MTU (Maximum Transfer Unit) settata su una qualsiasi macchina che replica il pacchetto su una qualsiasi rete che trovi durante il percorso allora avviene la frammentazione...
C'è un opzione dell'header del protocollo IP che si chiama Don't fragment...ma in pratica non funziona...
Comunque con pacchetti dell'ordine dei centinaia di byte non ci dovrebbe essere frammentazione (MTU è solitamente >= 1500)...

Ma non è questo il problema principale... Metti che tu stia mandando 10 pacchetti...può succedere che 2 di essi passino da un determinato percorso...altri 5 da un altro...e altri 5 da un altro ancora...
E questo per definizione del IP che non è un protocollo orientato alla connessione...
Il percorso non predicibile...come la bandwidth quindi...

Magari il discorso è più proponibile su connessioni punto-punto...ma anche in quel caso basta spegnere un router ed ecco che il percorso diventa automaticamente un altro...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 11:07   #9
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da cionci
[b]
La segmentazione non sempre avviene...solitamente con send piccole (intorno al Kb) non segmenta quasi mai (ma non è assicurato)... Se la send supera il valore del MTU (Maximum Transfer Unit) settata su una qualsiasi macchina che replica il pacchetto su una qualsiasi rete che trovi durante il percorso allora avviene la frammentazione...
C'è un opzione dell'header del protocollo IP che si chiama Don't fragment...ma in pratica non funziona...
Comunque con pacchetti dell'ordine dei centinaia di byte non ci dovrebbe essere frammentazione (MTU è solitamente >= 1500)...

Ma non è questo il problema principale... Metti che tu stia mandando 10 pacchetti...può succedere che 2 di essi passino da un determinato percorso...altri 5 da un altro...e altri 5 da un altro ancora...
E questo per definizione del IP che non è un protocollo orientato alla connessione...
Il percorso non predicibile...come la bandwidth quindi...

Magari il discorso è più proponibile su connessioni punto-punto...ma anche in quel caso basta spegnere un router ed ecco che il percorso diventa automaticamente un altro...
Qual'e' questa opzione dell'header? Comunque per ora testate lo stesso, fate finta che tra logica e pratica non ci sia differenza...
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 11:17   #10
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Don't fragment...non so se puoi settare questa opzione con setsockopt... Ma in ogni caso Don't fragment non viene rispettato...
E comunque la frammentazione non sarebbe un problema...il problema princiapale è l'instradamento...che non è una costante come la bandwidth...
Secondo me una cosa più indicativa della bandwidth (che ha significato solo come massimo thrughput del singolo nodo) è il ping... Potresti misurare il ping come indicatore della qualità di un connessione virtuale del TCP... E misuararlo dinamicamente durante la connessione cercando di ricavarti una sorta QoS della connessione come rapporto bandwidth/ping...

A quel punto puoi sicuramente farci qualcosa...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 11:35   #11
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da cionci
[b]Don't fragment...non so se puoi settare questa opzione con setsockopt... Ma in ogni caso Don't fragment non viene rispettato...
E comunque la frammentazione non sarebbe un problema...il problema princiapale è l'instradamento...che non è una costante come la bandwidth...
Secondo me una cosa più indicativa della bandwidth (che ha significato solo come massimo thrughput del singolo nodo) è il ping... Potresti misurare il ping come indicatore della qualità di un connessione virtuale del TCP... E misuararlo dinamicamente durante la connessione cercando di ricavarti una sorta QoS della connessione come rapporto bandwidth/ping...

A quel punto puoi sicuramente farci qualcosa...
Nel senso che lui instrada come gli pare? Lasciamo perdere il segmentation, lui puo' scegliere una strada diversa dalla connessione fisica diretta se c'e'? Comunque non penso che lo cambiero'...l'obiettivo di questo progetto e' basso per ora...se me lo daranno per la tesi sara' un altro paio di maniche.
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 15:49   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Cimmo
[b]
Nel senso che lui instrada come gli pare? Lasciamo perdere il segmentation, lui puo' scegliere una strada diversa dalla connessione fisica diretta se c'e'?
Non è garantito che durante la stessa connessione TCP i dati passino tutti da uno stesso percorso...
Il discorso della connessione diretta fisica è un poì più complesso... Solitamente c'è un default gateway all'interno di una rete...e questo a meno di congestione (altri utenti usano il router per uscire e saturano la connessione punto-punto) instrada sempre i pacchetti sulla stessa connessione punto-punto...
Nel caso di congestione il router può pensare di inviare i pacchetti verso un router alternativo che li instrada su un'altra connessione punto-punto...
Questo comunque avviene in modo completamente trasparente all'utente...quindi non ti puoi rendere conto se viene usato o meno il router secondario...

Il problema della congestione (può avvenire non solo sulla congestione, ma anche nel caso di un bilanciamento del carico fra due o più router) può avvenire a qualsiasi livello durante il percorso per raggiungere il destinatario... Infatti i pacchetti TCP molto spesso arrivano fuori sequenza...e ci pensa il TCP a riordinarli simulando una connessione...

Ti spego da dove nascono tutti questi problemi... In pratica Internet è nata come progetto della DARPA (Defense Advanced Research Project Agency) del ministero della difesa degli USA...
E funziona in questo modo perchè doveva garantire la consegna del pacchetto anche nel caso che una bomba atomica avesse distrutto parte delle infrastrutture di rete...
Ed ecco perchè non è orientata alla connessione (non c'è un percorso fisso)...ma viene detta a commutazione di pacchetto...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 17:55   #13
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
cionci ho capito perfettamente quello che mi hai detto...pero' se ti va' lo stesso di testarlo mi farebbe piacere...senno' fa lo stesso.
Questo vale per tutti...ho visto che fino ad adesso l'ha scaricato solo una persona

ciao e grazie
Cimmo
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 18:08   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Purtroppo non lo posso provare xchè Linux su questa macchina mi è partito (Kernel Panic!)...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 07-11-2002, 18:38   #15
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originariamente inviato da cionci
[b]Purtroppo non lo posso provare xchè Linux su questa macchina mi è partito (Kernel Panic!)...
Peccato! Fammi sapere quando ti ritorna up che posto una versione piu' aggiornata eventualmente...a meno che a qualcuno non interessi subito...

Comunque oggi ho fatto la versione 0.9.2 beta

cambiamenti:
- risolto un bug dove anche tutti gli host che non erano destinazioni ricevevano tutto il messaggio anche se poi gliene serviva solo una piccola parte.
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 08-11-2002, 18:57   #16
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Divide Et Impera v0.9.2 beta

Ecco la nuova versione...

cambiamenti dalla v0.9.1 beta:

- nuova ottimizzazione: ora la sorgente spedisce agli host non di destinazione solo le informazioni che gli servono
- l'output della mappa della rete nella parte dell'host e' stata migliorata
- bug-fix: risolti alcuni segmentation fault che accadevano di rado
- bug-fix: ora la sorgente riprova a connettersi con l'host se fallisce
- bug-fix: ora la sorgente e gli host puliscono tutta la memoria dai jobs ancora vivi.


Dai ragazzi datevi da fare...please testatelo!
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 08-11-2002, 18:57   #17
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Ed ecco l'eseguibile per gli host...
Cimmo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Cineca inaugura Pitagora, il supercomputer Lenovo per la ricerca sulla fusione nucleare Cineca inaugura Pitagora, il supercomputer Lenov...
Mova Z60 Ultra Roller Complete: pulisce bene grazie anche all'IA Mova Z60 Ultra Roller Complete: pulisce bene gra...
Renault Twingo E-Tech Electric: che prezzo! Renault Twingo E-Tech Electric: che prezzo!
Il cuore digitale di F1 a Biggin Hill: l'infrastruttura Lenovo dietro la produzione media Il cuore digitale di F1 a Biggin Hill: l'infrast...
DJI Osmo Mobile 8: lo stabilizzatore per smartphone con tracking multiplo e asta telescopica DJI Osmo Mobile 8: lo stabilizzatore per smartph...
Tesla, Musk promette FSD 'quasi pronto' ...
BioWare conferma: il nuovo Mass Effect &...
5 robot aspirapolvere di fascia alta in ...
Xiaomi Redmi Note 14 5G a 179€ è ...
Veri affari con gli sconti de 15% Amazon...
Tutti gli iPhone 16 128GB a 699€, 16e a ...
Take-Two ammette: vendite di Borderlands...
Tutti i Macbook Air e Pro con chip M4 ch...
GeForce RTX 50 SUPER: non cancellate, ma...
Warner Bros. riporterà al cinema ...
Hai usato il 'Pezzotto'? Ora anche la Se...
TeraFab: Musk vuole costruire la fabbric...
Lo compri una volta, lo giochi dove vuoi...
Qiantinuum annuncia Helios, "il com...
Samsung Galaxy S26 Ultra: una sola novit...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:58.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v