Data Transfer Rate Test Program

The Data Transfer Rate Test Program (DTR) can be used to measure the effective PCI Express data transfer rate in real conditions.
Host PC requirements
● | The Host PC must be equipped with at least one CoaxlinkEuresys product series name of CoaXPress frame grabbers card. |
● | Driver version 12.4 or higher must be installed on the Host PC. |
Camera requirements
● | The camera must be configured to deliver continuously image data. |
Installation
The DTR is included in gentl.exe, a command-line tool that is delivered with the eGrabber driver. No further installation is required.

The DTR measures the data transfer rate by completely filling the internal frame store and only then transferring images to the host computer:
1. | All buffers are unqueued (the data stream cannot use them) |
2. | The data stream and remote device are started |
3. | When the frame store is full, the remote device is stopped |
4. | Current timestamp is retrieved (t0) |
5. | All buffers are queued to the data stream and transfers start |
6. | Buffers are popped from the data stream |
7. | When the frame store is empty and all buffers have been retrieved, the data stream is stopped |
The DTR program computes the data transfer rate
as follows:
- byte count = sum of each buffer's BUFFER_INFO_SIZE_FILLED
- t1 = last buffer's BUFFER_INFO_CUSTOM_EVENT_TIMESTAMP
- duration = t1 - t0
- data transfer rate = byte count / duration

GenTL Explorer gentl [COMMAND] ... [OPTIONS] Commands: info Show detailed information about the transport layer system report Generate a GenTL report archive (for Euresys tech support) xml Download GenApi files (XML register descriptions) play Open a data stream and acquire images (no display) view Open a data stream and display images grab Grab N images genapi Enter the GenApi command-line interface or perform a GenApi operation read Read data from a GenTL port write Write data to a GenTL port event Wait for events and display information about them script Execute script run Run an action dtr Measure PCIe data transfer rate ber Measure bit error rate confidence level (a.k.a. link validation tool) Common flags: --cti=LIBPATH Path to GenTL producer library. Default: use EURESYS_COAXLINK_GENTL64_CTI and GENICAM_GENTL64_PATH environment variables to locate the library. -j=N Limit the number of CPU cores to use to N (default: 2) -h --help Display help message -V --version Print version information --numeric-version Print just the version number -v --verbose Loud verbosity -q --quiet Quiet verbosity

GenTL Explorer gentl dtr [OPTIONS] Flags: --if=ID Interface ID --dev=ID Device ID --ds=ID Data stream ID --device-access=ACCESS Access flags used to open the device (GenTL standard access flags: DEVICE_ACCESS_READONLY, DEVICE_ACCESS_CONTROL, DEVICE_ACCESS_EXCLUSIVE; Coaxlink custom access flags: DEVICE_ACCESS_CUSTOM_READONLY_DEVICE_READONLY_STREAM) (default: DEVICE_ACCESS_CONTROL) --ro Open the device as read-only (shorthand for --device-access=DEVICE_ACCESS_READONLY) --buffers=INT Buffer count (default: 4) --buffersize=INT Buffer size --width=WIDTH Buffer width --height=HEIGHT Buffer height --pixelformat=ITEM PFNC Pixel format --bayer=BAYERDECODINGMETHOD Bayer method (Legacy, Advanced) (default: Advanced) --set=SETTINGS GenApi settings, such as Module.Feature=INT --setup=FILE Path to script to execute before starting stream --run=FILE Path to script to execute concurrently --timeout=INT Acquisition timeout, in milliseconds (default: infinite) --zero Zero memory when queuing buffers (default: memory is only zeroed when buffers are allocated) --remotexml=FILE Use FILE as register description (default: register description is read from remote device) -n --repeat[=N] Measure data transfer rate N times (default: 1) Common flags: --cti=LIBPATH Path to GenTL producer library. Default: use EURESYS_COAXLINK_GENTL64_CTI and GENICAM_GENTL64_PATH environment variables to locate the library. -j=N Limit the number of CPU cores to use to N (default: 2) -h --help Display help message -V --version Print version information --numeric-version Print just the version number -v --verbose Loud verbosity -q --quiet Quiet verbosity