关于SD卡随着写入文件的增多时间变慢原因以及解决办法

  问题:

       SD卡随着文件增多,建立文件的时间变慢。假如你本想1s建立一个文件,随着文件增多可能导致2s 3s或者更久才建立一个文件。  

原因分析:

       在SD卡写数据文件的时候,我们通常会建立以日期为名字的文件夹,在文件夹下建立以时间为名字的文本文件。假设1S中创建一个文本文件,一天下来我们建立文件24*60*60=86400文件 。这些文件都存放在一个文件夹下(日期文件夹),会导致一个问题就是以后建立一个文件的时间越来越长。原因就是我们每次创建一个文件FATFS系统都要进行扫描有没有这个文件,没有就创建,随着新建文件的增多会导致扫描的时间变长,导致文件建立效率降低,时间变慢。

解决办法:

      在同一个文件夹下,不要存放太多的文件!

      在同一个文件夹下,不要存放太多的文件!

      在同一个文件夹下,不要存放太多的文件!

     例如以当天日期为文件名,在该文件下在建立一个以小时为名字的子文件,在子文件下建立这一个小时内的文件。

 

### YOLO训练速度变慢原因 YOLO训练过程中速度逐渐变慢可能由种因素引起,以下是主要原因及其对应的解决方案: #### 1. 磁盘I/O瓶颈 如果硬盘的缓存读取速度(Cached Read Speed)和不带缓存的读取速度(Buffered Disk Read Speed)较低,则可能导致数据加载缓慢,从而影响整体训练速度[^1]。 #### 2. Batch Size过大 过大的Batch Size不仅会增加内存消耗,还可能导致显内存不足的问题。此外,较大的Batch Size会使损失函数(Loss Function)难以收敛,并且随着Batch Size的增大,达到相同精度所需的Epoch数量也会增多[^2]。 #### 3. 数据预处理耗时 复杂的图像预处理操作(如高分辨率输入、过的数据增强策略等),可能会显著延长每轮迭代的时间。因此,在不影响模型性能的前提下简化这些过程是非常重要的[^4]。 #### 4. GPU资源利用率低 当GPU未能被充分利用时,即使硬配置足够强大也无法有效加速训练进程。这可能是由于程序本身存在同步等待时间或者线程管理不当等原因造成的。 #### 解决方案 针对以上提到的各种潜在原因,可以采取如下措施来提升YOLO模型训练的速度: - **优化磁盘访问**: 使用更快的存储介质(SSD代替HDD), 并确保操作系统已开启文件系统的写入缓冲功能; 同时考虑采用分布式计算框架以分摊单节点上的压力. - **调整超参数设置**: - 减少`batch size`, 这样既能缓解显存占用又能促进更稳健的学习动态; - 调整合适的`image resolution`(图片尺寸); - **改进数据管道效率**: 实现异步数据加载机制, 预先准备好下一批次所需样本而无需阻塞主线程执行流程. - **升级算法版本或引入新技术** 结合最新的研究成果不断改良原有体系结构, 如尝试新型激活函数ReLU替代传统sigmoid/tanh形式等等[^3]. ```python import torch.optim as optim def adjust_learning_rate(optimizer, epoch): """Sets the learning rate to the initial LR decayed by 10 every X epochs""" lr = args.lr * (0.1 ** (epoch // args.step)) for param_group in optimizer.param_groups: param_group['lr'] = lr optimizer = optim.SGD(model.parameters(), lr=args.lr, momentum=0.9, weight_decay=1e-4) for epoch in range(start_epoch, start_epoch + num_epochs): train_loader.sampler.set_epoch(epoch) adjust_learning_rate(optimizer, epoch) train(train_loader, model, criterion, optimizer, epoch) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值