Discussion and technical support related to USRP, UHD, RFNoC
View all threadsHi,
The rx_samples_to_file example uses 'dd' to estimate disk throughput. It is not done correctly. The code below uses /dev/random as the data source. This was OK for old SATA drives, but for fast NMVE drives the rate is limited by the random number generator (which maxes out at around 1 GB/s on a modern machine). Therefore the example incorrectly reports that the disk throughput is too low if the expected write rate is > 1 GB/s (well within modern drives). I suggest replacing /dev/random with /dev/zero.
std::string disk_check_proc_str =
"dd if=/dev/random of=" + temp_file.native()
+ " bs=" + std::to_string(samps_per_buff * channel_count * sample_type_size)
+ " count=100";
On 14/01/2025 11:40, Eugene Grayver wrote:
Hi,
The rx_samples_to_file example uses 'dd' to estimate disk throughput.
It is not done correctly. The code below uses /dev/random as the data
source. This was OK for old SATA drives, but for fast NMVE drives the
rate is limited by the random number generator (which maxes out at
around 1 GB/s on a modern machine). Therefore the example incorrectly
reports that the disk throughput is too low if the expected write rate
is > 1 GB/s (well within modern drives). I suggest replacing
/dev/random with /dev/zero.
|std::string disk_check_proc_str =|
|"dd if=/dev/random of="||+ temp_file.||native||()|
|+ " bs="||+ std::to_string(samps_per_buff * channel_count *
sample_type_size)|
|+ " count=100";|
USRP-users mailing list --usrp-users@lists.ettus.com
To unsubscribe send an email tousrp-users-leave@lists.ettus.com
Good catch! I've run into this problem in another context.