Frage

Jetzt CUDA ermöglicht die dynamische Zuordnung auf dem globalen Speicher. Aber ich konnte keinen Hinweis auf die Skalierbarkeit dieser malloc Funktion finden: es ist besser, als zum Beispiel preallocate einen Teil des Speichers und weisen Sie dann einfach den nächsten Speicher Futter zu einem Faden durch atomar eine globale ganze Zahl erhöht wird? Diese letzte „home-made“ Lösung funktioniert, aber es ist ein offensichtliches Problem mit Skalierbarkeit, so dass ich, ob malloc frage mich, dies irgendwie kümmert.

War es hilfreich?

Lösung

Ich denke, während die „home-made“ Lösung, die derzeit nur so gut sein könnte, obwohl gleichzeitige Anrufe auf einen globalen integer es verlangsamen könnten, würde Malloc meine Wahl sein.

Das ist, weil es ermöglicht Nvidia mit den Kopfschmerzen Skalierbarkeit zu bewältigen und Verbesserungen zu machen, entweder in der Hardware oder Software-Implementierung, dass Sie die Vorteile des nur durch erneute Kompilierung Code zu einem späteren Zeitpunkt getroffen werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top