首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更改stxxl:vector缓存的大小

更改stxxl:vector缓存的大小
EN

Stack Overflow用户
提问于 2015-08-07 04:32:17
回答 1查看 137关注 0票数 0

在我的算法中,我有两个阶段:

1)使用占用尽可能多RAM的大数据结构X用记录填充文件2)对文件进行排序。现在,由于X已释放,因此存在大量内存

所以我想用STXXL来处理文件及其排序。但是,在第一阶段,STXXL缓存的空间非常有限,而在第二阶段,应该有足够的空间。

因此,理想情况下,我希望在第一阶段使用小缓存创建一个stxxl::vector,填充它,然后在排序过程中增加它的大小以加快速度。然而,我找不到一个函数来改变向量的缓存大小。

我看到的一种解决方案是在第一阶段写入一个普通的“虚拟”二进制文件,并从它创建一个stxxl::vector,但这将导致空间的双重使用,因为“虚拟”文件和stxxl::vector将在某一时刻同时存在。那么,利用stxxl实现此目的的真正方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2015-09-21 18:58:19

一般来说,stxxl::vector的缓存大小可以通过设置CachePages-Parameter来更改,如stxxl::VECTOR_GENERATOR中所述。这回答了您的问题吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31865255

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档