|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#21 | |
|
Senior Member
Iscritto dal: Nov 2001
Città: Vicenza
Messaggi: 319
|
Quote:
immagino che tu sia un sistemista esperto e competente che utilizzi solo Linux... Perchè sputi sentenze così? Hai avuto modo di provare con le tue mani o ti riferisci al costo delle licenze? o cos'altro? |
|
|
|
|
|
|
#22 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
x grobbio Concordo: si paga in base all'uso che se ne deve fare. Un sistema a n processori non ce l'ha pinco pallino, ma un'azienda che lo usa per guadagnarci. Sviluppare un s.o. multiprocessore non è una cosa semplice: è giusto che venga pagato.
Tra l'altro la notizia di questa news mi sembra un ottimo passo di MS: va a vantaggio degli utenti, visto che ci stiamo avviando a delle soluzioni multicore per il futuro anche nei sistemi desktop...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
|
|
|
|
#23 | |
|
Senior Member
Iscritto dal: Jun 2001
Città: treviso
Messaggi: 443
|
Quote:
2 - se avessi lavorato almeno per qualche giorno nell'ambito IT sapresti che esistono centinaia di applicativi che funzionano solo sotto windows e che non hanno ancora i porting per linux, cosa fare? non utilizzare un applicativo che mi permette di risparmiare decine di migliaia di euro perche' gira su windows e secondo te non va bene? 3 - ho ciofeche con hardening adeguato con uptime superiori ad un anno......sono proprio un pazzo
__________________
AMD 3800X2, 3 x maxtor 300, Ati X700 VIVO, NEC 4550, Asus A8n-SLI, 2gb RAM2, ati 550PRO, Skystar2, Pinnacle 310i, Accent 200 |
|
|
|
|
|
|
#24 | |
|
Senior Member
Iscritto dal: May 2003
Messaggi: 380
|
Quote:
la M$ detiene praticamente un monopolio in un settore cruciale come l' IT e devo confessarvi che 'sta cosa mi terrorizza più dell' antrace, la mucca pazza, il terrorismo islamico, le varie 'emergenze mal tempo', il taglio delle tasse, il non taglio delle tasse ecc ecc... |
|
|
|
|
|
|
#25 |
|
Senior Member
Iscritto dal: Jun 2001
Città: treviso
Messaggi: 443
|
x sheijtan
le colpe sono in parte del monopolio microsoft, ma sono anche da attribuire alla comunita' linux, troppe distribuzioni con compilatori, librerie, kernel ....differenti, sviluppi un software compatibile con quale distribuzione? le uniche che hanno fatto un po' di starada in tal senso sono redhat, suse e quelle che si basavano su unitedlinux. Altra cosa sono certificazioni e supporto, molte grandi aziende e PA esigono software certificati e supporto, le certificazioni ci sono parzialmente persino per applicativi diffusissimi come oracle, sap, il supporto per un applicativo installato su una gentoo ad esempio chi lo da? la community? vallo a spiegare al cliente che vuole un responsabile in carne ed ossa se una cosa non funziona. Sono il primo a non essere contento della situazione, ma allo stato attuale ci sono ancora vincoli che impediscono l'entrata di linux in tutti gli ambiti. |
|
|
|
|
|
#26 | |
|
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
Quote:
Inoltre, un server potrebbe servire più utenti contemporaneamente, facendo girare più processi della stessa applicazione su ciascuna cpu, ciascuna con la sua ram eventualmente dedicata; nel caso in cui i processi da gestire fossero superiori al numero dei processori disponibili (diciamo il doppio), ciascun "sottosistema" gestirebbe più processi/utenti con le sue risorse, come se fosse una macchina distinta (il quadro si complica considerando la possibilità di gestire in modo comune lo scheduling dei processi, ma l'esempio IMHO resta valido): possiamo ancora considerarla come una singola installazione? Io credo di no: ancora una volta le prestazioni sarebero nettamente differenti, in particolare sarebbe come se il sw in questione fosse installato su più macchine "fisiche", ciascuna con una sola cpu e una parte della ram installata sul server multiprocessore. Ancora: potrebbe esserci la possibilità far migrare dei processi su più macchine, ed eseguire quindi la stessa applicazione (interamente o un insieme di suoi thread, sottoprocessi) su macchine diverse da quella sulla quale è stata installata: in questo caso come valutiamo l'installazione? Se ritieni ammissibile (non dico giusto, ma almeno non scorretto) legare il prezzo del sw al numero di macchine su cui verrà/potrà essere eseguito, anche parlando di "numero di installazioni", credo che troverai ammissibile pensare che si possa cercare un modo diverso dall'installazione "fisica" del sw su una macchina specifica (ovvero la memorizzazione dell'applicazione e delle sue impostazioni) in uno scenario come questo (più macchine possono eseguire processi di quel sw pur non possedendone una copia "indipendente" nella propria memoria di massa). Un modo possibile è quello di considerare la cpu fisica come l'elemento che individua il numero di copie "indipendenti" (nel senso di copie del sw aventi a disposizione delle risorse da non contendere ad altre copie dello stesso sw, come se fossero installate su macchine diverse) da considerare come installazioni diverse, piuttosto che il "sistema" di storage su cui è materialmente memorizzata la versione rilocabile dell'applicazione. Quanto alle licenze, capisco perfettamente il tuo punto di vista da "estimatore dell'open source", però è sicuramente meglio che sopravvivano i due modelli: non essendo MAI (in nessun campo, nella vita) poter determinare/raggiungere l'ottimo "assoluto" il pluralismo è essenziale. Inoltre esistono molte licenze open source diverse, alcune delle quali tutelano in modo più o meno marcato i diritti dell'autore del sw, e se riteniamo ammissibile che l'autore di una certa applicazione possa voler limitare la tua libertà d'uso del sw, allora dobbiamo accettare che possano esistere degli strumenti "burocratici" atti a garantire questo diritto. La licenza è proprio uno strumento di questo tipo: per l'utente finale, che si limita ad utilizzare il sw, la licenza è poco più che una formalità burocratica, una formalità che però gli impedisce di redistribuire gratuitamente quella copia del sw, o di venderla ad un prezzo più basso rispetto a quello stabilito dall'autore, come se ne fosse egli stesso l'autore, facendo quindi una concorrenza spietata e sleale al vero ideatore di quel programma, cosa che in teoria si potrebbe fare acquistando non una licenza d'uso, ma una copia del sw. Se acquisto un'automobile di un certo modello e una certa macchina posso rivenderla, nessuno può impedirmelo; è vero però che le licenze su sw closed source sono in genere non trasferibili (cioè non posso rivendere un sw come se fosse di "seconda mano"), ma questo ha una sua logica: sempre nell'esempio dell'automobile, se anche dopo anni di utilizzo non subisse alcun "degrado" e fosse rivendibile come nuova, allo stesso prezzo di una "copia" nuova, ma io la rivendessi a un prezzo inferiore, o anche allo stesso prezzo, il produttore ne trarrebbe uno svantaggio (chi acquista un auto usata se ne assume i "rischi" e comunque acquista qualcosa che ha una valore sicuramente inferiore al nuovo, quindi non si pone in diretta concorrenza con il nuovo); in altri termini, una copia di qualsiasi applicazione, per quanto "usata", non si può considerare "di seconda mano" e non in competizione con una copia "nuova" nel caso venga rivenduta, pertanto la non trasferibilità delle licenze, in quest'ottica, può essere anche non condivisibile, ma sicuramente comprensibile. Per quanto riguarda la revocabilità, infine, se io vendessi delle copie della mia copia licenziata, una volta "scoperto", potrei essere suscettibile di sanzioni volte a risarcire il legittimo autore del sw (e, in quanto proprietario di quella copia e di tutte le riproduzioni, anche l'unico autorizzato a venderle), il quale autore potrebbe considerare la revoca della licenza come parte del risarcimento (dal momento in cui la revoca avesse atto io mi ritroverei ad aver pagato una certa cifra senza poter più fruire del bene per il cui sfruttamento a mio vantaggio ho pagato: sarebbe una sorta di "sequestro"). Ciao a tutti. |
|
|
|
|
|
|
#27 |
|
Senior Member
Iscritto dal: Aug 2004
Città: Vicenza
Messaggi: 6980
|
x Sp4arr0W
Quanti server linux amministri? E prima quanti server windows amministravi? I giorni di fermo macchina per manutenzione software sono gli stessi? Hai rapporti con aziende che forniscono assistenza a sistemi linux 24x7x365 (no forum o community)?
|
|
|
|
|
|
#28 | |
|
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
|
Quote:
Riesco a capire solo che tutta questa faccenda dipende principalmente da come l'interlocutore la pensa , è una cosa + filosofica che informatica . Mi rendo conto che la difficoltà di programmazione di un software designato per il Multi-Threading sia maggiore , ma per quello che so riprogettare un programma che gira su max 2 processori per farlo girare su 8 non è difficile quanto riprogettare un programma che ne sfrutta al max solo uno per farlo girare su 2 . QUello che intendo è che la difficoltà nella programmazione Multi-Threading non si basa sul numero di processori sul quale il programma viene fatto girare (per lo meno questo succede solo in minor parte) , ma sul Multi-Threading stesso, ossia nella creazione di un programma che esegua il suo lavoro sfruttando + threads anzichè uno solo . Quindi mi sembra ingiusto far pagare + volte un programma per ogni processore (ricordo che stiamo parlando di moltiplicazione del prezzo , come se uno che fa girare il programma su 2 processori pagasse 1500 € , e quello che lo fa girare su 4 lo paga 3000€ . Questa è una situazione che potrei capire se dovessero riprogettare interamente il software per farlo passare da 2 a 4 processori, ma non è esattamente quello che avviene ). Per la storia del fatto che il server potrebbe servire + utenti quello lo può fare anche un server monoprocessore , non deve essere necessariamente multiprocessore il server per poter servire + utenti , la differenza sta solo nella velocità (e quindi qualità) del servizio in questo caso. Ogni CPU ha la sua RAM ok, e con ciò? Il sistema operativo che gira è sempre uno e l'applicazione che ci gira è sempre quella , solo che è separata in + threads anzichè uno solo . Insomma, il senso del mio discorso è : Non credo che le aziende produttrici di software muoiano di fame non speculando sul numero di CPU con la quale facciamo girare l'applicazione per la quale abbiamo acquistato la licenza sulla nostra macchina . Per la questione sulle licenze software adesso sarebbe meglio lasciarla da parte Ciao
__________________
GPU Compiler Engineer |
|
|
|
|
|
|
#29 |
|
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
x AnonimoVeneziano
Ho capito il tuo punto di vista, e si potrebbe pensare di fare una differenziazione "minima" tra licenza per macchine monoprocessore e licenza per macchine multiprocessore. Almeno questa differenziazione dovresti considerarla valida, a meno che tu non ritenga inaccettabile dover acquistare una licenza (o se preferisci una copia) del sw per ogni macchina su cui lo installi, e in questo caso non avrebbe senso discutere sul resto di questo post. In realtà non sarebbe nemmeno necessario, per gli sviluppatori, produrre due versioni, una multithreading e una no, poichè la versione multithreading verrebbe eseguita correttamente anche sulle macchine monoprocessore, ciò che cambierebbe drasticamente sarebbe la velocità di esecuzione ed è questo il nocciolo della questione: in un certo senso, è come avere una versione (multithreading) diversa da quella "base" e intrinsecamente più veloce; in realtà la versione è unica, però si comporta in maniera intrinsecamente diversa (più o meno veloce) a seconda della macchina sulla quale viene eseguita, e si tratta di una caratteristica intrinseca perchè è insita nella "natura" del programma a prescindere dalla macchina (non si tratta di un boost prestazionale legato alla pura potenza di calcolo, come si potrebbe ottenere, ad esempio, mediante un upgrade della cpu in un desktop). Per fare un paragone, il biglietto di un treno ha un prezzo differenziato a seconda della classe in cui si viaggia, però il treno è sempre quello: cambia la comodità del viaggio, ovvero la qualità del servizio fornito, che è quella che si paga. Oppure ancora: un abbonamento a una tv via satellite ha un costo diverso a seconda del numero di canali che puoi decodificare: il prezzo varia in funzione della qualità, eppure il decoder è sempre quello, e così anche la scheda. Nel caso del sw, si paga la maggiore (o minore) qualità (in termini di prestazioni) del sw stesso, la quale è funzione del numero di cpu e del grado di parallelismo raggiunto. Poi, non è così scontato che uno stesso sw ottimizzato per il multithreading su 2 cpu possa essere facilmente ottimizzato per avere prestazioni superiori con più processori (ovvero utilizzarli tutti): in genere, maggiore è il numero di thread che si vogliono far girare contemporaneamente e più difficile potrebbe essere la determinazione delle porzioni di codice da attribuire a ciascun thread, ovvero più si cerca di parallelizzare un problema e più, in genere, risulta difficile farlo (sicuramente non lo si può fare per un editor di testo visuale, quindi un costo per le licenze legato al numero di processori per una suite di office productivity sarebbe un vero furto, si potrebbe pensare tutt'al più a una licenza multiutente vs single user), e il discorso si complica se tiriamo in ballo super computer con interconnessioni tra i cluster programmabili (scegli tu quanti e quali processori/macchine usare). In un certo senso, quindi, si potrebbe pensare di capovolgere il problema: il prezzo "vero" è quello per la licenza che contempla il numero massimo di cpu, che garantisce le prestazioni migliori (non solo per il numero di cpu, ma anche e soprattutto per le caratteristiche intrinseche all'applicazione, la quale sfrutta adeguatamente la macchina), mentre le altre si potrebbero considerare riferite a versioni "ridotte" del sw con prestazioni inferiori, per cui il costo d'acquisto è inferiore. Quanto al numeri di utenti serviti da un server, sia esso mono/multiprocessore, la velocità del servizio può diminuire anche su una macchina multiprocessore se il numero di utenti è superiore al numero di cpu presenti. Per questo motivo parlavo di "processi indipendenti", volendo distinguere tra questo caso e quello in cui, pur essendo unica la macchina nel complesso e unico il S.O. (che poi vuol dire tutto e niente: basta che lo scheduler dei processi sia diverso per ogni cpu e di fatto quel server si comporta come n server monoprocessori, con n numero delle cpu), le cpu vengono assegnate non a thread diversi della stessa applicazione, bensì a interi task distinti dello stesso sw, e in tal caso ciascuna cpu, con le sue risorse dedicate e il proprio scheduler, si comporterebbe come una macchina a sè stante, con una propria copia del programma installata. Ora, o tu rigetti totalmente l'ipotesi di dover pagare una licenza/copia per ciascuna macchina, e in tal caso nulla da obbiettare, posso solo condividere o meno il tuo pensiero, oppure spero converrai con me che non sarebbe corretto far pagare a te, che magari hai un parco macchine "vetusto", o comunque usi 2 server monoprocessore da tempo e per le tue necessità vanno più che bene, due licenze e a me, che uso un unico server dual processor, con il doppio della ram e dello spazio su disco (o su dischi in raid), una sola licenza quando le prestazioni sono identiche nei due casi. Stesso discorso nel caso in cui sia possibile far migrare i processi (anche per intero) su più macchine: io installo il sw su una e lo utilizzo su due, come se fosse installato su entrambe. In questo caso, o mi fai pagare una licenza legata al numero di processori, che potrebbero essere l'unico elemento per individuare il numero di computer su cui l'applicazione verrà eseguita, oppure mi vendi una sola licenza e mi lasci fare ciò che più mi aggrada. Che poi, senza tener conto del numero di cpu, le software house non morirebbero di fame, mi pare ovvio, però bisogna considerare che, in relazione ai costi di sviluppo, riducendo le "alternative" (ovvero la differenziazione delle licenze in base alla qualità ottenibile dallo stesso sw su macchine diverse) i prezzi aumenterebbero sensibilmente e i costi non sarebbero "correttamente" distribuiti tra i clienti in base ai vantaggi ottenuti, sia in termini di prestazioni pure, sia, indirettamente, in termini economici (per il vantaggio che si può avere utilizzando un certo sw per lavoro). E qui torniamo al discorso invidia vs equità: troveresti corretto dover pagare lo stesso prezzo (alto) per il tuo computer monoprocessore che pago io per il mio server a quattro vie, sapendo che io otterrò prestazioni quattro volte superiori alle tue per la natura stessa del programma, le stesse prestazioni che tu otterresti installando quell'applicazione su una macchina che però distribuisce il lavoro complessivamente su quattro computer facenti parte di un cluster? Ovviamente potresti tranquillamente dissentire su tutto, ci mancherebbe altro, io posso solo condividere o meno il tuo pensiero, come te del resto, e non è assolutamente mia intenzione criticarlo o stare a sindacare su chi abbia ragione e chi no Ciao |
|
|
|
|
|
#30 | ||||
|
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
|
Quote:
Quote:
Quote:
Quote:
troveresti corretto dover pagare lo stesso prezzo (alto) per il tuo computer monoprocessore che pago io per il mio server a quattro vie, sapendo che io otterrò prestazioni quattro volte superiori alle tue per la natura stessa del programma, le stesse prestazioni che tu otterresti installando quell'applicazione su una macchina che però distribuisce il lavoro complessivamente su quattro computer facenti parte di un cluster? Personalmente si , lo trovo corretto , come trovo corretto che , per esempio, un qualsiasi programma lavori + lentamente su un PC da 300 Mhz anzichè su uno da 3Ghz , questo sempre perchè considero una macchina multiprocessore come una macchina unica (questione che mi sembra il nocciolo della questione) Ciao
__________________
GPU Compiler Engineer |
||||
|
|
|
|
|
#31 | |||
|
Senior Member
Iscritto dal: Dec 2002
Città: /dev/urandom breed
Messaggi: 1689
|
Quote:
Oppure: un'applicazione che crea un numero abnorme di thread (-> piu` overhead), mettendo in crisi il sistema. Oppure, un cluster di unita` monoprocessore che fanno girare un server con multiplexing, e un ripartitore di carico. Se la potrebbe seriamente giocare in quanto a prestazioni con un unico megaserver a 8+ vie e SW multithread, che oltretutto crea anche problemi non banali per quanto riguarda la gestione della cache e la migrazione (eventuale) dei suddetti. (correzioni su eventuali errori/imprecisioni sono ben gradite) Quote:
Quote:
Comunque: esiste un OS (general-purpose) che adotta scheduler diversi per CPU diverse? |
|||
|
|
|
|
|
#32 | |||
|
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
Mi scuso per il ritardo nel rispondere, non ho avuto modo di farlo prima.
Quote:
Quote:
Faccio questa distinzione perchè, ove applicabile ovviamente, preferisco attribuire al sw una "preminenza" sull'hw, poichè quest'ultimo è solo uno strumento "inerte" ed è il sw a utilizzarlo in modo più o meno efficiente; puoi avere l'hw più performante di questo mondo, ma se il sw non è in grado di sfruttarlo pienamente le prestazioni saranno comunque limitate e paragonabili a quelle di altre macchine (a parità di sw). Ovviamente si tratta di una mia opinione personale e, di conseguenza, è opinabile. Quote:
[qluote]Mi rendo perfettamente conto che anche passare da un programma che sfrutta 2 processori a uno che ne sfrutta 8 non è una cosa immediata, ma richiede comunque del lavoro , ma non è un lavoro così duro come quello della riprogettazione di un software che da una sola ne sfrutta 2 ( come già detto sopra) , non mi sembra un lavoro così grosso da rendere necessario un sovrapprezzo , spesso si tratta solo di distribuire i vari thread su + CPU . [/quote] Dipende sempre dal problema e da quanto sia parallelizzabile: l'ottimizzazione per più processori potrebbe implicare una modifica negli algoritmi implementati per aumentare il numero dei thread eseguibili contemporaneamente; laddove invece esiste già un numero di thread "congruo" si potrebbe invece pensare di ribaltare la questione: il programma in questione è stato progettato per ottenere la massima efficienza su di un sistema con un certo numero di processori, per cui il prezzo "vero" è quello della licenza che supporta il numero massimo di cpu previsto, mentre le licenze per sistemi con meno cpu o una sola sono vendute "sottocosto" per ovvie ragioni di marketing (chi ottiene sulle proprie macchine prestazioni inferiori otterrà anche un profitto inferiore dall'uso del mio software - per il suo "comportamento" oltre che per le caratteristiche delle macchine su cui viene eseguito - e di conseguenza il costo della licenza d'uso potebbe diventare meno "appetibile"), e sempre per una questione di marketing si stabilisce il prezzo di "base" per ciascun processore/macchina/utente, in modo da semplificare la determinazione della licenza corretta (o del numero di licenze) da acquistare/vendere. Tutto, ovviamente, IMHO. |
|||
|
|
|
|
|
#33 | ||||||
|
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
Quote:
Quote:
Quote:
Se non vogliamo considerare valido questo criterio, potremmo voler giudicare un sw (le sue versioni, che in base al "mio" criterio potrebbero essere anche "virtuali") in base al suo codice; in questo caso, ritengo opportuno distinguere (comincio a sospettare di avere una natura estremamente cavillosa... Poi, tornando al multithreading, in teoria (ove applicabile in relazione al problema) si potrebbe pensare di realizzare (l'idea mi frulla in testa da un po', ma non ci ho mai provato, a dirla tutta non saprei dove mettere le mani o quasi Quote:
Quote:
Quote:
Ciao. |
||||||
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:29.



















