set_compute_device_param
— Setzen von Parametern eines Compute Devices.
set_compute_device_param( : : DeviceHandle, GenParamName, GenParamValue : )
set_compute_device_param
setzt die Parameter des Compute
Devices DeviceHandle
für den aktuellen HALCON Thread.
Die folgenden Parameter können gesetzt werden:
Wenn 'alloc_pinned' auf 'true' gesetzt ist werden die Ausgabebilder aller folgenden Operatoraufrufe (egal ob auf dem Device ausgeführt oder nicht) dieses Threads in page locked (oder 'pinned') Speicher erzeugt. Das beschleunigt den Transfer zwischen dem Hauptspeicher und dem Speicher des Devices. Zu exzessive Verwendung von page locked Speicher kann aber negativen Einfluss auf die Geschwindigkeit des Systems nehmen. 'alloc_pinned' sollte aktiviert werden, wenn das Ausgabebild des nächsten Operatoraufrufs auf das Device transferiert werden soll. Für Operatoraufrufe, deren Ausgabebilder nicht auf dem Device verwendet werden, sollte 'alloc_pinned' deaktiviert werden (siehe Beispiel).
Werte: 'true' oder 'false'
Default: 'true'
Ist 'asynchronous_execution' auf 'true' gesetzt, warten
Operatoren, die auf dem Device ausgeführt werden, nicht
auf das Ende der Berechnungen, sondern enden, sobald die
Berechnungen angestoßen wurden.
Alle Berechnungen auf dem Device werden synchronisiert
sobald die Ausgabe einer Device Berechnung auf der CPU
benötigt wird (z.B. von disp_image
).
Werte: 'true' oder 'false'
Default: 'true'
Maximale Größe (in Byte) des Compute Device Buffer Caches.
Wert: Größe in Byte
Default: 1/3 des verfügbaren Device Speichers
Maximale Größe (in Byte) des Compute Device Bild Caches.
Wert: Größe in Byte
Default: 1/3 des verfügbaren Device Speichers
Maximale Größe (in Byte) des page locked Speicher Caches.
Wert: Größe in Byte
Default: 4 MByte
DeviceHandle
(input_control) compute_device →
(handle)
Compute Device Handle.
GenParamName
(input_control) string →
(string)
Name des zu setzenden Parameters.
Defaultwert: 'buffer_cache_capacity'
Werteliste: 'alloc_pinned' , 'asynchronous_execution' , 'buffer_cache_capacity' , 'image_cache_capacity' , 'pinned_mem_cache_capacity'
GenParamValue
(input_control) string(-array) →
(string / integer / real)
Neuer Wert des Parameters.
activate_compute_device (DeviceHandle) read_image (Image, 'fuse') set_compute_device_param (DeviceHandle, 'alloc_pinned', 'true') * filter on compute device, output image is page locked derivate_gauss (Image, DerivGauss, 3, 'gradient') * filter result on the CPU, output image should not be page locked set_compute_device_param (DeviceHandle, 'alloc_pinned', 'false') median_image (DerivGauss, ImageMedian, 'circle', 1, 'mirrored')
Sind alle Parameterwerte korrekt, liefert set_compute_device_param
den Wert 2 (H_MSG_TRUE) zurück.
Andernfalls wird eine Fehlerbehandlung durchgeführt.
Foundation