Guido.Kiener@xxxxxxxxxxxxxxxxx wrote: > linux-usb-owner@xxxxxxxxxxxxxxx schrieb am 15.05.2017 15:20:22: >> Von: Greg KH <gregkh@xxxxxxxxxx> >> On Mon, May 15, 2017 at 02:47:48PM +0200, Guido.Kiener@xxxxxxxxx wrote: >>> 2. As we have looked at the Linux driver, we’ve noticed that performance >>> of the usbtmc_read() function doesn’t keep up with our fastest >>> instruments. Do you have any suggestions on how to improve the read >>> performance? >> >> Where exactly are things not going fast enough? Have you found any >> specific bottlenecks? How fast are you needing to go? What type of >> interface do you expect userspace to have to handle high rates of data? > > I'm not sure for 100%, but I assume that reading the IN pipe could be > setup asynchronously (e.g. with usb_submit_urb(..)) just before sending > send_request_dev_dep_msg_in(..). > USBTMC_SIZE_IOBUFFER = 2kB is a bottleneck when dealing with data size > > 1MB (Need of Scatter/Gather). The major problem with usbtmc_read() is that it sends a new TMC read request for every 2033-byte buffer it wants to read. As a first step, try enabling the "rigol" quirk, which simply uses a single read request for the entire buffer. (I don't know why the driver author thought this shouldn't be done for every device.) Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html