GDAL内存大小限制问题
在使用GDAL的时候,当数据的量大于2GB的时候,就无法再向系统申请内存了,请问大家有人遇到这个问题吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
在使用GDAL的时候,当数据的量大于2GB的时候,就无法再向系统申请内存了,请问大家有人遇到这个问题吗?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(15)
哈、、、能找到当然好!一个软件bug很好找到,然后分析错误,最后更正!现在如果让你修改微软操作系统的消息机制与为系统打补丁感觉怎么样?
我建议还是开发一套分布式内存缓存来解决这个问题较好,效率上和读取大小限制的问题都解决了、、、
我处理的img的数据一个就是50G以上的,GDAL吞吐太慢了,并且软件调用的时候也经常崩溃,所以我就采用了以上的办法、、、这个是没办法的、、、你对GDAL不是很熟,改起来很难、、、在说你改了GDAL你的稳定性就得不到保证,GDAL发布的版本一般都没什么问题了,所以要解决海上的从自己上面想办法、、、
我处理的img的数据一个就是50G以上的,GDAL吞吐太慢了,并且软件调用的时候也经常崩溃,所以我就采用了以上的办法、、、这个是没办法的、、、你对GDAL不是很熟,改起来很难、、、在说你改了GDAL你的稳定性就得不到保证,GDAL发布的版本一般都没什么问题了,所以要解决海上的从自己上面想办法、、、
我处理的img的数据一个就是50G以上的,GDAL吞吐太慢了,并且软件调用的时候也经常崩溃,所以我就采用了以上的办法、、、这个是没办法的、、、你对GDAL不是很熟,改起来很难、、、在说你改了GDAL你的稳定性就得不到保证,GDAL发布的版本一般都没什么问题了,所以要解决海上的从自己上面想办法、、、
我处理的img的数据一个就是50G以上的,GDAL吞吐太慢了,并且软件调用的时候也经常崩溃,所以我就采用了以上的办法、、、这个是没办法的、、、你对GDAL不是很熟,改起来很难、、、在说你改了GDAL你的稳定性就得不到保证,GDAL发布的版本一般都没什么问题了,所以要解决海上的从自己上面想办法、、、
但是我现在的数据是只是mapinfo的tab数据,就需要用GDAL来读取,不修改GDAL的话,就比较麻烦
一般都不是修改GDAL,而是在数据上着手,就如上我所说的,把你数据化大为小,读入内存,在由GDAL处理、、、我就是这样处理的、、、我还特意用c++写了一
个分布式内存缓存在里面、、、现在的效果很好、、、
但是数据的那些内容我都需要呀,目前就是向OGRDatasourcr中加载数据时出的错,这个修改GDAL里面的那个地方可以让它继续读数据呀,我想知道这个问题
你还没明白我的意思是化大为小,cpu处理存储在内存数据速度那是杠杠的、、、你在外围处理后,最后由你由大化小的数据进去处理、、、
不行,是OGRDataSource中存储的数据量到了2GB就无法申请了,跟线程没有关系
采取多线程内存读取,xp都有独立内存4G,将数据连续按每一小格存储到里面,然后交由GDAL进行处理即可、、、
在GDAL里面是如何解决的呐
回复
采取多线程内存读取,xp都有独立内存4G,将数据连续按每一小格存储到里面,然后交由GDAL进行处理即可、、、
遇到过,我在用GDAL解析img的时候,如果数据大于2G,数据处理有问题,并且效率也不够快,为此我在公司里开发了一套高性能处理,可以采取多线程内存读取,xp都有独立内存4G,将数据连续按每一小格存储到里面,这样就解决了大数据读取,而且效率更快!同行啊、、、