Multicore e ottimizzazione software
La prossima disponibilità di architetture multicore richiede un lavoro di ottimizzazione da parte dei programmatori; Intel sviluppa a riguardo alcuni nuovi tool
di Paolo Corsini pubblicata il 28 Agosto 2006, alle 13:29 nel canale ProcessoriIntel
Il mercato dei processori si sta spingendo chiaramente, da alcuni anni a questa parte, nella direzione delle architetture dual core, nelle quali cioè siano integrati due distinti core di processore che possano operare in modo indipendente tra di loro.
Il prossimo futuro vede all'orizzonte il debutto delle architetture quad core, nelle quali pertanto il numero di core integrati raddoppierà rispetto alle attuali proposte di mercatodi Intel e AMD.
Le prime soluzioni di questo tipo sono attese al debutto nel corso della fine dell'anno, nella forma dei processori Kentsfield di Intel della famiglia Core 2 Extreme.
L'avere a disposizione più core di processori, operanti in parallelo tra di loro, non implica tuttavia un diretto e immediato incremento delle prestazioni velocistiche che con questi processori è possibile ottenere. E' necessario, infatti, che le applicazioni che vengono utilizzate siano in grado di beneficiare della presenza di un secondo o più core di processore.
Per questo motivo è indispensabile che i programmatori e gli sviluppatori abbiano a disposizione tool che permettano di ottimizzare i propri programmi per le architetture di processore multicore.
Intel è da sempre molto attiva in questo settore, potendo vantare nel proprio organico un gran numero di sviluppatori software. Intel Threading Building Blocks è il nome di un'applicazione sviluppata da Intel che verrà presentata proprio questa settimana: si tratta di un tool, che opera come estensione del linguaggio di programmazione C++, che permette agli sviluppatori di ottimizzare le proprie applicazioni per un loro migliore utilizzo in ambiti multicore, facilitando la scrittura di routine o threads che operino in parallelo, e che quindi possano venir destinate a ciascun core presente nel sistema.
Intel ha già sviluppato applicazioni di questo tipo, attualmente a disposizione pe gli sviluppatori: si tratta di Intel Thread Checker 3.0 e Intel Thread Profiler 3.0, ottimizzate per applicazioni sia a 32 che a 64bit anche con sistema operativo Linux.
Del resto, non ha alcun senso l'avere a disposizione un elevato numero di processori in un sistema, nel momento in cui questi non possono essere sfruttati in parallelo così da ridurre i tempi di elaborazione dello specifico software.









Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea
Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere?
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Il razzo spaziale NASA SLS per la missione Artemis III è in fase di assemblaggio al Kennedy Space Center
Ci potrebbero essere altri due lanci del razzo spaziale Lunga Marcia 10A entro la fine dell'anno
Sul razzo spaziale della missione Soyuz MS-29 c'era la pubblicità di una bibita energetica russa
Dal 2028 autorizzazioni solo con carburanti alternativi: cosa cambia per i distributori
Microsoft blocca gli aggiornamenti di Windows 11 su alcuni PC Dell: cosa succede
OAuth Client ID Spoofing, la nuova minaccia cloud scoperta da Proofpoint
Un clic falsificato dirotta Claude for Chrome su Gmail e agenda
Tamron 12-20mm F2.8: 570 grammi, un terzo in meno del Sony 12-24 GM
NextGO Epi punta a usare l'ossido di gallio per portare la ricarica dei veicoli elettrici a soli 10 minuti
Panico per Samsung Health, ma c'era un errore: ecco cosa succede davvero ai tuoi dati
L'IA ha reso le aziende incapaci di gestire i log, secondo Dynatrace
Occhiali smart e Apple Watch: l'UE cancella l'obbligo di batteria removibile per i wearable
Dyson V8 Origin oggi a 249€ su Amazon: perché questa scopa elettrica senza filo è la scelta giusta per la pulizia domestica
Virtua Fighter Crossroads e i futuri titoli Sega offriranno pieno supporto a NVIDIA RTX Spark









17 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoSe lo fa solo Intel (quale monopolista) in formato unicamente proprietario, tutte le case concorrenti ne avrebbero solo degli handicap... che ovviamente pagheremmo comunque noi.
Comunque i dual core sono fuori da un pezzo... di ottimizzazioni ancora un pò pochine... si dessero una mossa...
Ciao
Se lo fa solo Intel (quale monopolista) in formato unicamente proprietario, tutte le case concorrenti ne avrebbero solo degli handicap... che ovviamente pagheremmo comunque noi.
Comunque i dual core sono fuori da un pezzo... di ottimizzazioni ancora un pò pochine... si dessero una mossa...
Ciao
non solo... i dual processors lo sono anche da molto di piu'
quasi tutti i software applicativi per server sono multithread, le cose devono invece ancora maturare per gli applicativi client.
thread crackers e profilers sono ottimi strumenti, ma la cosa piu' importante e' programmare pensando di far girare poi il software su n processori (o cores/threads)
purtroppo nella realtaà troppo spesso ci si mette ad ottimizzare il codice in ottica multithreading solo quando ci si rende conto che l'applicativo sta diventando un autentico collo di bottiglia..(di solito in seguito alle lamentele dei clienti
Non mi stupisce che ora si stiano muovendo verso l'ottimizzazione per i multicore considerando che nel loro compilatore hanno il miglior vettorizzatore in grado di sfruttare al massimo le chiamate alle SSE.
Sul fatto che invece AMD traesse vantaggio dal Intel C/C++ Compiler ho i miei forti dubbi dato che gli AMD64 venivano forzati sul code path del Pentium 3 quando sarebbe stato meglio forzarli sul code path dei Pentium M, oppure venivano indirizzati su code path non ottimizzati (senza SSE).
Problema di licenza
Scusate una domanda: ma dato che la licenza di Windows è legata al numero di CPU presenti nel sistema, ed il kernel penso non possa utilizzarne più di 2, come si pone il problema davanti a 4 core?La tecnologia HT ovvia a questo problema in quanto il secondo processore è logico e non fisico, ma con 4 core? Conta il package o il numero di core?
Scusate se sono OT.
Ciauz!
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".