Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将39567865个未签名字符加载到RAM:有效方法? 我正在研究C++项目,我需要快速访问字节值。 我用内存映射文件做了很多实验,对数据进行了智能排序,以便只需读取很少的数据,等等。 我就是不能让它工作得足够快和可靠。在某些情况下,文件中的磁盘访问和查找似乎是瓶颈_C++_Optimization_Storage - Fatal编程技术网

将39567865个未签名字符加载到RAM:有效方法? 我正在研究C++项目,我需要快速访问字节值。 我用内存映射文件做了很多实验,对数据进行了智能排序,以便只需读取很少的数据,等等。 我就是不能让它工作得足够快和可靠。在某些情况下,文件中的磁盘访问和查找似乎是瓶颈

将39567865个未签名字符加载到RAM:有效方法? 我正在研究C++项目,我需要快速访问字节值。 我用内存映射文件做了很多实验,对数据进行了智能排序,以便只需读取很少的数据,等等。 我就是不能让它工作得足够快和可靠。在某些情况下,文件中的磁盘访问和查找似乎是瓶颈,c++,optimization,storage,C++,Optimization,Storage,我现在正在考虑将整个字节数据(无符号字符)加载到RAM中。 但是,它是39567865个未签名字符。它可以在我的电脑上工作,但我希望它可以在所有电脑上工作 有人能告诉我我的方法是否疯狂吗?换句话说:普通软件(不是在超级计算机上运行的某种科学方法)可以将如此大量的数据加载到RAM中,以便快速访问,这是有效的?字符的宽度为1字节,因此 39567865 / 1024 = 38,640 kb 这大约是37.7 Mb。除非你打算在内存非常少的嵌入式机器上工作,否则你会没事的。仅供参考:您正在使用的机器

我现在正在考虑将整个字节数据(无符号字符)加载到RAM中。 但是,它是39567865个未签名字符。它可以在我的电脑上工作,但我希望它可以在所有电脑上工作


有人能告诉我我的方法是否疯狂吗?换句话说:普通软件(不是在超级计算机上运行的某种科学方法)可以将如此大量的数据加载到RAM中,以便快速访问,这是有效的?

字符的宽度为1字节,因此

39567865 / 1024 = 38,640 kb

这大约是37.7 Mb。除非你打算在内存非常少的嵌入式机器上工作,否则你会没事的。仅供参考:您正在使用的机器很可能有4-8GB的RAM,内存消耗约为其中的0.4%-0.8%。

字符宽度为1字节,因此

39567865 / 1024 = 38,640 kb
这大约是37.7 Mb。除非你打算在内存非常少的嵌入式机器上工作,否则你会没事的。参考:您正在使用的机器很可能有4-8GB的RAM,您的内存消耗约为其中的0.4%-0.8%。

在今天常见的Win32(或win64)机器上,将100M文件加载到内存是完全公平的,甚至比其他选择更可取

一般的答案取决于您设置的系统要求,以及程序的通常使用模式,如果它在几秒钟内以几十个副本的形式启动,则可以考虑其他方式。

在今天常见的Win32(或win64)机器上,将100M文件加载到内存是完全公平的,甚至比其他方法更可取


一般的答案取决于您设置的系统要求,以及该程序的通常使用模式,如果它在几秒钟内以几十个副本的形式启动,则可能会考虑其他方式。

即约37.7 Mb,我不认为今天的PC无法在RAM上存储那么多内存:约37.7 Mb,我不认为今天的PC机不能在RAM:D上存储那么多内存