微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

写多个文件比 写一个大文件

(我无法find明确的答案,也许我用了错误的search词)

我想logging许多来自摄像机的图像,没有压缩或无损压缩,在一个不太强大的设备与一个单一的固体驱动器。 经过调查,我已经决定,如果有的话,压缩将是简单的PNG图像(这不是讨论的一部分)。 鉴于这些限制,我希望能够以最大可能的频率从相机logging。 瓶颈是(只有一个)硬盘的速度。 我想要使​​用RAM来排队,而less数可用的核心可以并行地压缩图像,这样写入的数据就less了。

一旦数据被压缩,如果我把所有的字节stream在一个单一的文件中,或者考虑到我使用的是固态驱动器,我可以写一个文件(比如1或2 MB)每张图像仍在最大磁盘带宽下工作? (或非常接近,就像> 90%)?

我不知道是否重要,这将使用C ++及其库。

HTTP基本authentication,读取密码文件性能

测量性能时是否需要防止抢占?

代码移入内核空间会提供更精确的时序吗?

在Windows中等效的任务集

了解Linux最高cpu利用率输出

如何强制两个进程在同一个cpu上运行?

Phabricator极其缓慢

我可以从Windows中的用户模式程序读取cpu性能计数器吗?

在Windows上的Python。 为什么阅读文本比二进制慢8倍?

.net File.copy复制许多小文件时(非networking)很慢,

我的问题是“简单”,如果通过在单个文件中写入输出而不是在许多2MB文件中,我可以预期在使用固态驱动器时会带来显着的好处。

一个好处,而不是一个重要的。 用于固态驱动器的文件系统驱动程序已经知道如何将文件的数据分布到许多不相邻的群集中,所以自己做这个并不合适。 将一个文件放在已经包含文件的驱动器上是必要的。 通过分解它,您可以强制执行额外的写操作,为这些段添加目录条目。

固态驱动器的类型很重要,但是驱动程序通常已经完成了“磨损均衡”。 换句话说, 有意将数据分散到驱动器中。 这样可以避免闪存单元被磨损,它们的数量有限,可以在物理磨损和故障之前写入。 传统上只保证在10,000次写入,他们已经变得更好。 你当然会练习这个。 值得注意的是,闪存驱动器读取速度快,但写入速度慢,这对您的情况很重要。

将图像数据分解为单独的文件一个显着的优势:从驱动器错误中恢复更容易。 无论是来自灾难性的失败,还是驱动力不足,都无法及时停下来。 你不会失去整个镜头。 但不管什么程序读取驱动器上的图像,都必须将它们粘合在一起。 这也是一个重要的设计目标,如果你使用非标准的非压缩文件格式太不切实际,或者传输速度太慢,或者一般来说太不方便,那么它就不会经常使用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐