AnsweredAssumed Answered

Possible performance issue w/ adi_fss calls vs. c i/o api

Question asked by dmann on May 27, 2011
Latest reply on Jun 3, 2011 by dmann



I just wanted to bring something i've noticed to your attention.

I'm working on a usb hosted fss and noticed that I was getting sporatically bad performance through the use of the AD_FSS API calls:


adi_fss_FileOpen() vs. fopen

adi_fss_FileWrite() vs. fwrite

adi_fss_FileClose() vs. fclose


Under my use case, I am using the MP3 Encoder to encode audio buffers and then write them to file opened on the USB Memory Stick device. To process 60 seconds of sythesized sine stereo data, the processing times were:


ADI_FSS API (Sporatic Performance)

Best Case ~=  5 Secs

Worst Case ~= 18 Secs


C I/O API (Predictable Performance)

Average Case ~= 5 Secs


I am using data and instruction cache as per the requirements of the MP3 encoder. I was wondering whether there might be some collision due to the underlying resources used by the ADI_FSS calls that is not present in the standard c i/o api. For my application, the standard c i/o works great, but was surprised that the ADI_FSS did not perform in a similar manner.