|
|
|
![]() |
|
Strumenti |
![]() |
#21 | |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 16053
|
Quote:
![]() In Linux tutto o quasi è ancora in C perché funziona sufficientemente bene e quel codice non è soggetto a modifiche, in più pensare di riscrivere una buona parte del kernel in C++ (che generalmente una volta acquisito il metodo di programmazione ad oggetti viene più naturale) sarebbe piuttosto oneroso in termini di tempo. |
|
![]() |
![]() |
![]() |
#22 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
![]() Ultima modifica di cionci : 19-07-2006 alle 19:52. |
|
![]() |
![]() |
![]() |
#23 | |
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
Ossia tentando di simulare gli oggetti in C cadremmo nelle stesse perdite prestazionali del C++?
__________________
![]() |
|
![]() |
![]() |
![]() |
#24 |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7258
|
che io sappia il C a livello teorico è più performante del C++ perchè per trattare le classi bisogna comunque tenere conto di un bell'overhead di puntatori. la cosa però all'atto pratico ha scarsa importanza perchè ormai tutti i compilatori sono ultraottimizzati, le CPU sono stratosferiche e inoltre in qualche caso la programmazione a oggetti può condurre a un miglior disegno del codice che potrebbe determinare un'efficienza migliore. fatto sta che programmare a oggetti in C si può anche se non è così comodo e si può fare anche in maniera lievemente più efficiente (in termini puramente velocistici) del C++ ma finchè mjordan non ci fa il tutorial che aveva promesso
![]() ![]() ![]() |
![]() |
![]() |
![]() |
#25 | |
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
Quando nel task manager di windows guardo i vari svchost.exe da 10mb l'uno, o quando guardo l'utilizzo ram di firefox o konqueror su linux mi viene da piangere.
__________________
![]() |
|
![]() |
![]() |
![]() |
#26 | |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7258
|
Quote:
direi che fare programmi di quella portata in C non porta a grandi vantaggi.. teoricamente l'eseguibile dovrebbe essere più veloce, ma proprio la difficoltà nel fare un'applicazione di quel genere senza un supporto alla programmazione a oggetti, porta in media a più bugs/memory leak (cioè memoria non più utile che non viene deallocata) nel codice e quindi è anche possibile (e anche frequente) che il risultato finale sia peggiore (e soprattutto ci si impiega di più ad avere un risultato). in sostanza non è vero che i programmatori se ne sbattono dell'efficienza, ma si è capito che la maniera migliore per rendere un programma efficiente è progettarlo in modo che sia efficiente, non limitarsi a scrivere codice di per se efficiente... non so se mi sono spiegato ![]() |
|
![]() |
![]() |
![]() |
#27 |
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
So perfettamente cosa intendi. Nel primo post se noti parlavo di un emulatore, RunUO, scritto in C#, che in 1 anno di sviluppo aveva già surclassato prepotentemente gli altri emulatori (scritti in C) che avevano milioni di bug ed erano molto meno performanti.
Ma è anche vero che è cmq importante badare, finchè possibile, di fare programmi il più possibile leggeri, e saper programmare in maniera efficiente in linguaggi di livello un po' + basso di quelli a oggetti, è molto utile. Pensa che in quake3 ci sono alcune parti fatte in ASM =) Ma mi sorge un dubbio cmq... il memory leak non avviene quando viene allocata (quindi prevalentemente con malloc) una zona di memoria, senza poi deallocarla? La malloc però deve essere assegnata a un puntatore... E quindi non si può fare una semplicissima utility che scannerizzi i sorgenti C e faccia una lista di tutti i puntatori che vengono fatti puntare a una zona di memoria, e che poi in un secondo tempo verifichi che TUTTI sono stati deallocati con free?
__________________
![]() |
![]() |
![]() |
![]() |
#28 | ||||
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7258
|
Quote:
![]() Quote:
![]() ![]() Quote:
Quote:
![]() |
||||
![]() |
![]() |
![]() |
#29 | |
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
Ma i memory leak si possono evitare programmando in C++? Perdonate l'ignoranza ma conosco solo C e Java al momento :P Java poi è un capolavoro... ha un garbage collector che evita i leak ma poi è la Virtual Machine ad andare in leaking (perchè chiaramente non è scritta in java ahah).
__________________
![]() |
|
![]() |
![]() |
![]() |
#30 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
![]() In realtà in C++ ci si trova negli stessi problemi del C, anche se sono sicuramente minori se si "programma bene"... |
|
![]() |
![]() |
![]() |
#31 | |
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
__________________
![]() |
|
![]() |
![]() |
![]() |
#32 | |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7258
|
Quote:
java usa un garbage collector come molti linguaggi "interpretati" (tra " perchè sono semi-compilati), ma in realtà esistono dei garbage collector anche per C++, solo che non fanno parte del linguaggio stesso. che poi la questione GC è tutt'altro che chiusa è un altro conto... però le potenzialità ci sono. si dice infatti che in java1.6 il GC sarà migliorato sensibilmente. direi che l'unica strada per evitare i memory leak è proseguire la ricerca del GC migliore ![]() ![]() |
|
![]() |
![]() |
![]() |
#33 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#34 |
Senior Member
Iscritto dal: Aug 2004
Messaggi: 311
|
Tre secoli di clima dentro un computer
il Giappone studia il riscaldamento globale TOKYO - Difficile prevedere cosa succederà al clima del nostro pianeta tra 300 anni? Forse, ma non impossibile. Soprattutto se, come ha reso noto il ministro giapponese dell'educazione, si usa il secondo computer più veloce del mondo. Che verrà messo al lavoro per predire uragani, siccità, tempeste, insomma tutto quanto possa essere messo in relazione con il riscaldamento del pianeta Terra per i prossimi 30 anni. Primo step di una ricerca più ambiziosa che intende allargare le previsioni ad un range di 300 anni. http://www.repubblica.it/2006/06/sez...oni-meteo.html http://www.thocp.net/hardware/nec_ess.htm http://www.hpfpc.org/index-E.html
__________________
Senior Member Registrato il: Jan 2001 Messaggi: 2609 |
![]() |
![]() |
![]() |
#35 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
a2000: non è che hai sbagliato thread ?
![]() |
![]() |
![]() |
![]() |
#36 | |
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#37 |
Senior Member
Iscritto dal: Aug 2004
Messaggi: 311
|
The Earth Simulator consists of 640 supercomputers that are connected by a high-speed network (data transfer speed; 12.3 GBytes). Each supercomputer (1 node) contains eight vector processors with a peak performance of 8GFlops and a high-speed memory of 16 GBytes. The total number of processors is 5120 (8 x 640), which translates to a total of approximately 40 TFlops peak performance, and a total main memory of 10 TeraBytes.
35.61 TFlops is achieved from the operation of 638 nodes (5,104 processors) and an efficiency performance percentage of 87.2%. According to the TOP500 list of supercomputers in the world, the second is the ASCI White system in the US, whose performance is 7.266 TFlops (peak performance 12.288 TFlops, peak performance percentage 58.8%). The Earth Simulator has five times the capacity of the US system. Earth-Simulator runs at 35860.00 GFlops and is installed at Earth Simulator Center Japan Research it contains 5120 vector processors and peaks at 40960.00 GFlops Based on the NEC SX architecture, 640 nodes, each node with 8 vector processors (8 Gflop/s peak per processor), 2 ns cycle time, 16GB shared memory. Total of 5120 total processors, 40 TFlop/s peak, and 10 TB memory. It has a single stage crossbar (1800 miles of cable) 83,000 copper cables, 16 GB/s cross section bandwidth. 700 TB disk space 1.6 PB mass store Area of computer = 4 tennis courts, 3 floors Rmax from LINPACK MPP Benchmark Ax=b, dense problem Linpack Benchmark = 35.6 TFlop/s Problem of size n = 1,041,216; (8.7 TB of memory) Half of peak (n ½ ) achieved at n ½ = 265,408 Benchmark took 5.8 hours to run. Software: for the most part Fortran using MPI
__________________
Senior Member Registrato il: Jan 2001 Messaggi: 2609 |
![]() |
![]() |
![]() |
#38 |
Senior Member
Iscritto dal: Aug 2004
Messaggi: 311
|
Java, nuova scossa di terremoto
torna la paura dello tsunami http://www.repubblica.it/2006/07/sez...e-tsunami.html
__________________
Senior Member Registrato il: Jan 2001 Messaggi: 2609 |
![]() |
![]() |
![]() |
#39 | |
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#40 | |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 16053
|
Quote:
![]() Quando cominceranno il porting delle GTK dal C al C#? ![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:09.