Alternatives to accumarray for faster calculations?
Al momento, stai seguendo questa domanda
- Vedrai gli aggiornamenti nel tuofeed del contenuto seguito.
- Potresti ricevere delle e-mail a seconda delle tuepreferenze per le comunicazioni.
Si è verificato un errore
Impossibile completare l'azione a causa delle modifiche apportate alla pagina. Ricarica la pagina per vedere lo stato aggiornato.
0 voti
Condividi un link a questa domanda
Risposta accettata
3 voti
Condividi un link a questa risposta
9 Commenti
Condividi un link a questo commento
- In your vectorized code, A N and B are not gpuArrays initially! Be careful not to mix GPU and CPU computations unless you mean to. Otherwise, you won't be able to trust your performance results.
- In the original code R doesn't depend on k. I took it out of the loop and pre-computed it together with the number of times you update N and B in the original code (represented by sumR).
- I made extensive use of implicit expansion which can be useful in these cases (for example R==uniqueR'). Note that implicit expansion might limit the size of the problems you can work on...but I think it'll be fine in this case.
- Also, R is very regular and you should be able to generate its values in a much faster way! You should be able to find a closed form expression to give you numR given the row index.
- If you keep working on something like this, I'm sure you can make it much faster!
Condividi un link a questo commento
Condividi un link a questo commento
Condividi un link a questo commento
Più risposte (0)
Categorie
Scopri di più su Matrices and Arrays in Centro assistenza e File Exchange
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Seleziona un sito web
Seleziona un sito web per visualizzare contenuto tradotto dove disponibile e vedere eventi e offerte locali. In base alla tua area geografica, ti consigliamo di selezionare: .
Puoi anche selezionare un sito web dal seguente elenco:
Come ottenere le migliori prestazioni del sito
Per ottenere le migliori prestazioni del sito, seleziona il sito cinese (in cinese o in inglese). I siti MathWorks per gli altri paesi non sono ottimizzati per essere visitati dalla tua area geografica.
Americhe
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
