写文件速度测试

测试了不同方法写文件的时间,测试环境是IBM T42:

代码一:
     char   * data = new   char [ 1024 * 1024 ];
    
int  t0  =  GetTickCount();

    FILE 
* pFile  =  NULL;
    
    pFile 
=  fopen( " D:/test1MB_C.dat " " a+ " );

    fwrite(data, 
1024 * 1024 , 1 ,pFile);
    fclose(pFile);

    
int  t1  =  GetTickCount();

    delete[] data;
    data 
=  NULL;

    
char  szText[ 32 ];
    sprintf(szText, 
" use %d second(%d 毫秒). " , (t1 - t0) / 1000 , t1 - t0 );
    
this -> SetWindowText(szText);

写1MB数据到磁盘,只计算文件操作部分的时间,执行时间是50毫秒。

代码二:
     char   * data = new   char [ 1024 * 1024 ];

    
int  t0  =  GetTickCount();
    std::fstream fsFile(
" D:/test1MB.dat "  , std::ios:: out   |  std::ios::binary);
    
    fsFile.write( data,  
1024 * 1024  ); 
    
    fsFile.close();

    
int  t1  =  GetTickCount();

    delete[] data;
    data 
=  NULL;

    
char  szText[ 32 ];
    sprintf(szText, 
" use %d second(%d 毫秒). " , (t1 - t0) / 1000 , t1 - t0 );
    
this -> SetWindowText(szText);


类似代码一,但是用的是 fstream类来写文件,执行时间是300毫秒。

对比了Java写文件所需要的时间,同环境Java写1MB数据的耗时是94毫秒,比使用fstream的速度快,比fwrite的方法慢。不过java的速度还是超过我的想象。
NAND闪存的读速度可以通过以下几种测试方法进行评估: 1. 顺序读测试:这种测试方法使用连续的数据块进行读操作,以测试NAND闪存的最大读速度测试程序会向NAND闪存中入一些数据,然后立即读取这些数据。测试结果会显示出闪存的读速度。 2. 随机读测试:这种测试方法使用随机的数据块进行读操作,以测试NAND闪存的随机读速度测试程序会随机选择一个数据块并进行读操作,然后再选择另一个数据块进行读操作。测试结果会显示出闪存的随机读速度。 3. 多线程读测试:这种测试方法使用多个线程同时进行读操作,以测试NAND闪存的多任务处理能力。测试程序会启动多个线程,每个线程负责不同的读操作。测试结果会显示出闪存的多线程读速度。 4. 大文件测试:这种测试方法使用大文件进行读操作,以测试NAND闪存的读速度和稳定性。测试程序会向NAND闪存中入一个大文件,然后立即读取这个文件测试结果会显示出闪存的读速度和稳定性。 以上测试方法可以通过专业的测试工具进行实现,如ATTO Disk Benchmark、CrystalDiskMark等。在进行测试之前,需要确保测试设备和测试程序设置正确,并选择合适的测试方法。测试结果可以用于评估NAND闪存的读性能,以便选择性能更优的NAND闪存。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值