Domanda

Al momento sto imparando le API relative alle librerie di parallelizzazione di Intel come TBB, MKL e IPP. Mi chiedevo, però, se è anche la pena di guardare parte di AMD del puzzle. O sarebbe che essere solo una perdita di tempo? (Devo confessare, non ho alcun indizio circa libreria di supporto di AMD - a tutti -. Così apprezzerei tutto il consiglio si potrebbe avere)

Giusto per chiarire, la ragione per cui sto andando nella direzione Intel è perché 1) le API sono molto belle; e 2) Intel sembra prendere strumento di supporto serio come supporto API. (Ancora una volta, ho alcun indizio come AMD sta facendo in questo reparto.)

È stato utile?

Soluzione

Il MKL e le librerie IPP si esibiranno (quasi) come pure su macchine AMD. La mia ipotesi è che TBB sarà anche eseguito bene su scatole di AMD. Se dovessi suggerire una tecnologia che sarebbe vantaggioso e utile per entrambi, sarebbe quello di padroneggiare le librerie OpenMP. Il compilatore Intel con le estensioni OpenMP è incredibilmente veloce e funziona con i chip di AMD anche.

Altri suggerimenti

Solo vale la pena se siete specificamente interessati a costruire qualcosa di simile Video giochi, sistemi operativi, server di database, o software di virtualizzazione. In altre parole: se si dispone di un segmento in cui si cura abbastanza di performance di prendere il tempo per farlo (e farlo bene) in assembler. Lo stesso vale per Intel.

Se la vostra azienda vende pacchetti di soli server Intel con il software, allora si dovrebbe non preoccupatevi imparare l'approccio di AMD. Ma se si sta andando ad avere per offrire software per entrambe (o molte) piattaforme diverse, allora potrebbe essere la pena di guardare nelle diverse tecnologie. Sarà molto difficile creare i wrapper per le librerie specifiche dell'hardware. (Tanto più che la filettatura è coinvolto.)

E sicuramente non si vuole scrivere implementazione completamente separato per ogni configurazione hardware. Infatti, se il software è quello di essere consumato da un utente generico, quindi si consiglia di abbandonare la tecnologia Intel, e utilizzare le tecniche di filettatura standard. Non voglio dire di essere scoraggiante, ma credo che le librerie di threading di Intel sono un po 'in anticipo sui tempi per tutti gli effetti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top