I am working on Cypress FX3 USB3.0.I am using EZ USB FX3 SDK/1.3/Application/cpp/Streamer.Now in streamer.h code ,there is one function called "Xferloop()".In this function, I collected the data of "buffer" character by character basis and stored in "myfi

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
shduc_3538066
Level 1
Level 1
First like given

I am working on Cypress FX3 USB3.0.I am using EZ USB FX3 SDK/1.3/Application/cpp/Streamer.Now in streamer.h code ,there is one function called "Xferloop()".In this function, I collected the data of "buffer" character by character basis and stored in "myfile.txt".The throughput of the streamer utility decreased from 395MBytes per sec to 110MBytes per sec because of writing and saving data into the myfile(I used ofstream as output method for writing data into myfile.txt).How to increase this reduced throughput.Please help.

0 Likes
1 Solution
SrinathS_16
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hello,

This is an expected behavior since the host application is busy writing the data onto the file and is not able to issue further IN requests to the device. To improve the throughput, you can implement the writing of data on to the disk in a separate thread instead of performing it in XferLoop() function block.

Best regards,

Srinath S

View solution in original post

0 Likes
1 Reply
SrinathS_16
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hello,

This is an expected behavior since the host application is busy writing the data onto the file and is not able to issue further IN requests to the device. To improve the throughput, you can implement the writing of data on to the disk in a separate thread instead of performing it in XferLoop() function block.

Best regards,

Srinath S

0 Likes