[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT]: cicli in assembler



On Thu, 2007-09-06 at 02:03 +0200, Lucio Crusca wrote:
> Stefano Simonucci wrote:
> 
> > Nel tentativo di ottimizzare un programmino al massimo grado mi sono
> > imbattuto nell' assembler 
> Non vorrei scoraggiarti, ma normalmente i compilatori producono codice più
> ottimizzato di quello prodotto a mano dalla maggior parte dei programmatori
> assembly con esperienza. Inoltre la regola generale è che le ottimizzazioni
> non si fanno. Per gli esperti, le ottimizzazioni si fanno poi. Se hai
> problemi di prestazioni normalmente è meglio agire sugli algoritmi
> piuttosto che sulle ottimizzazioni.
> 

Per alcune operazioni non complicate (per esempio prodotti tra matrici)
non c'e' modo di raffinare l' algoritmo senza conoscere il funzionamento
della macchina. Infatti le blas (che mi pare siano programmate a livello
di assmbler) riescono a sfruttare molto bene le risorse della macchina.
Il problema e' che io ho delle matrici sparse per cui le blas non si
applicano. Tra le moltiplicazioni fatte a mano e ottimizzate dal
compilatore e le subroutine blas  ci sono differenze elevate (anche un
fattore 10). Volevo vedere se era possibile ottenere prestazioni piu'
elevate su moltiplicazioni elementari in maniera da velocizzare il
programma. Non e' la stessa cosa un programma che richiede 12 invece di
24 ore!


> 
-- 
Stefano Simonucci

GNU/Linux User: #81790  http://counter.li.org



Reply to: