Fortran Coder

查看: 11131|回复: 8
打印 上一主题 下一主题

[文件读写] 如何快速写30M左右数据到硬盘(50ms以内,甚至10ms)

[复制链接]

13

帖子

3

主题

0

精华

入门

F 币
70 元
贡献
36 点
跳转到指定楼层
楼主
发表于 2017-12-25 22:12:54 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
正在修改热工水力程序。标题看来是不可实现。
目前存数据需要暂停程序,然后CALL SAVE,这里SAVE下面一大堆子程序了。改动里面我一时半会基本不可能了。
我想到的是:
第一种: fortran主程序不存到硬盘,而是内存,由其他程序去存
第二种:有没有可能并行单开一个线程,去专门存
求教各位大佬,有什么好方法?
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

13

帖子

3

主题

0

精华

入门

F 币
70 元
贡献
36 点
沙发
 楼主| 发表于 2017-12-27 11:03:34 | 显示全部楼层
kyra 发表于 2017-12-26 21:10
固态硬盘或RAID阵列,或许有帮助。

IO瓶颈,可以优化的空间很少,基本靠硬件 ...

应该有什么方法。现在我用的老外的平台+热工水力软件,在普通服务器上运行,能实时,不清楚实现机制。

13

帖子

3

主题

0

精华

入门

F 币
70 元
贡献
36 点
板凳
 楼主| 发表于 2017-12-27 11:17:28 | 显示全部楼层
li913 发表于 2017-12-26 14:39
fortran 有 异步 I/O,可以试试。

查了下fortran2003有了,我试试

13

帖子

3

主题

0

精华

入门

F 币
70 元
贡献
36 点
地板
 楼主| 发表于 2017-12-27 23:41:08 来自移动端 | 显示全部楼层
是二进制
回复

使用道具 举报

13

帖子

3

主题

0

精华

入门

F 币
70 元
贡献
36 点
5#
 楼主| 发表于 2017-12-27 23:44:27 来自移动端 | 显示全部楼层
用自带的异步好像不行,我需要多步存储,如果等待上一个存储完,主进程cpu是不是就在那等着?那也会耗很多时间
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-22 08:05

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表