Closed LukasSiefke closed 4 years ago
ja finde das hier dann am schoensten und wuerde dann halt irg wann mal gucken nach pinned memory limits/free zeug
ja finde das hier dann am schoensten und wuerde dann halt irg wann mal gucken nach pinned memory limits/free zeug
Also ich habe gerade mal geguckt. Prinzipiell kann man mit ulimit -l
das Limit für PinnendMemory herausfinden oder setzen.
Auf dem Agememnon liegt das Limit bei 16MB, beim Palma ist es auf unbegrenzt eingestellt.
Aber CUDA ignoriert dieses Limit einfach. Auf dem Agamemnon gibt es auch bei 1GB keinen Error. Aber es könnte die Erklärung sein wieso auf dem Agagmemnon kein so großer Unterschied beim PinnendMemory im Vergleich zum normalen Memory ist.
Man könnte vielleicht eine Compileroption erstellen, die bestimmt, ob PinnendMemory verwendet werden soll...
Nochmal. Diesmal mit Streams. Da wird halt auch PinnendMemory benutzt. Die Benchmarkfunktion ist so eigentlich ziemlich nice, weil die parallel upload, launch und download machen kann. Da entsteht dann so eine schöne Pipeline. Nur das mit dem free ist halt etwas problematisch, weil das free immer eine Synchronierung erzwingt, weshalb das in der benchmark-Funktion nur einmalig am Ende drin ist. Deswegen ist die total-time demensprechend niedrieger.