从以太网捕获数据分析后原始数据文件保存入文件。现在的设计是:1、线程1负责捕获,尽快的从数据源捕获数据,有自己的内核级buffer、用户级数据buffer(20MB)
2、线程2负责处理,从线程1读取数据,处理速度非匀速,由于数据的不确定性,这里微观上可以认为是不均匀的
3、线程3负责File写盘,根据线程2提交的数据缓存到一定数量(1~3MB)后写入各个线程之间使用CRITICAL_SECTION、EVENT进行同步控制。在大数据量情况下始终觉得性能不是很好,具体可能的瓶颈不在捕获和处理这里。但又对于文件写入这块的设计不得要领,始终觉得有那么一层窗户纸没有突破。请教各位DD指教,分析各种方案的效率和场景。
2、线程2负责处理,从线程1读取数据,处理速度非匀速,由于数据的不确定性,这里微观上可以认为是不均匀的
3、线程3负责File写盘,根据线程2提交的数据缓存到一定数量(1~3MB)后写入各个线程之间使用CRITICAL_SECTION、EVENT进行同步控制。在大数据量情况下始终觉得性能不是很好,具体可能的瓶颈不在捕获和处理这里。但又对于文件写入这块的设计不得要领,始终觉得有那么一层窗户纸没有突破。请教各位DD指教,分析各种方案的效率和场景。
解决方案 »
- 显示上下文菜单后为什么要SendMessage
- 感谢captain_x 无私、不厌其烦的帮忙,帮我解决了大问题,第四个送分帖
- 把原来的SVN代码仓库转移到另一个新的WINDOWS系统,结果代码无法导出?
- VC+ADO+Access添加记录出错!
- 关于文档模板的问题(在线等,立刻送分)
- MS的正版MSDN官方下载,速度飞快,大家快去啊晚了就没了
- 怎样把大面积纹理进行分块并分别贴图?
- 单文档应用程序上的“无标题”怎么改成其他的名字?--超级笨菜鸟:)见笑了
- 关于GDI画图的问题(回答就有分!!!!)
- 帮忙看一下怎么用这个
- VC中读文件怎么实现类似VB中的Input函数
- MFC ODBC数据库问题求助!
问题还没有定位。现在的处理是从硬盘读取文件然后处理再写回硬盘新的文件,所以涉及到read and write,具体的硬盘IO性能肯定是有所下降的,每分钟处理数据最好能够达到2~3GB的性能,硬盘考虑采用HDD ARRAY RAID 0配置。我现在在台式机以及笔记本上测试都感觉性能似乎没有达到一个较为理想的程度,所以一直想理理这块的设计实现思路优化下。由于测试环境限制,不能到真实的环境里面测试。现在我的怀疑是,两个线程之间的数据交接有问题,线程切换或者别的?我也不太清楚。有点头昏。如果从理论层面分析,目前的方案先请DX看看。