Quali strumenti esistono per determinare la velocità di una GPU su un algoritmo?

1

Fondamentalmente, mi chiedo quale velocità otterrò parallelizzando un algoritmo per lavorare con le GPU. Mi chiedo se qualcuno ha implementato la teoria delle code / la legge di Amdahl con un'interfaccia utente o se ognuno implementa la propria soluzione?

PS: Sì, sono consapevole che tutto dipende dalla natura dell'algoritmo (perché pensi che mi riferisca alla legge di Amdahl). Sono anche consapevole del fatto che molti produttori presentano cose in termini di FLOP e che questa non è necessariamente la migliore metrica da usare.

Inoltre, tende ad essere una sola pipa che entra ed esce, quindi c'è probabilmente una buona quantità di dati da trasferire sulla carta e fuori dalla carta.

Dal momento che nessuno ha commentato uno strumento generale che potrebbe aiutare qualcuno a sviluppare algoritmi / codice per GPU, ci sono delle regole pratiche per aiutarli a personalizzare il loro codice per l'esecuzione su una GPU specifica?

    
posta Robert Baron 30.04.2018 - 18:34
fonte

1 risposta

2

Esistono alcuni approcci che ti supportano per la previsione delle prestazioni. Tuttavia, ad essere onesti, molti di loro (se non tutti) hanno un carattere leggermente speculativo, quindi la previsione non sempre soddisfa la realtà.

Puoi iniziare le indagini usando PEPS (vedi ad esempio link ),

o questo: link

o PACE et al: link

o la mia ricerca link

Riguardo l'uso di una GPU, considera l'aspetto su come nascondere l'elaborazione su un lato (il che significa che fai tutto in parallelo con una CPU e una GPU, così come gli aspetti della pipeline per la GPU).

Ancora il migliore: misura gli effetti!

    
risposta data 01.05.2018 - 16:00
fonte

Leggi altre domande sui tag