处理大数据 [英] handling large data
问题描述
有人请告诉我如何处理int 2000 * 2000的数组数据吗?
即使使用超级计算机进行文件传递,似乎calloc失败并且
分割试运行期间的错误结果。
" a" < a@a.com在消息新闻中写道:fi ********** @ justice.itsc.cuhk.edu.hk ...
有人请告诉我如何处理int 2000 * 2000的数组数据?
即使使用超级计算机进行文件传递,看来calloc失败并且
分段错误结果在试运行期间。
发生错误:
gcc -O3 -Wall -I。 vote.c datamanager.c -o vote -L。 -hhungarian
gcc:内部错误:分段错误(程序cc1)
请提交完整的错误报告。
请参阅< URL:http ://bugzilla.redhat.com/bugzilla/for instructions。
make:*** [vote]错误1
运行时(在超级计算机中制作)错误:
细分错误
程式摘要:
int r [2000 * 2000] = {
123,188,158,197,184,180,146,129,117,192,120,148, 17 5,198,153,190,135,175,158,155,157,192,108,187,148,187,199,139,158,120,174,168,184,162,132,191,166,11 3,167,148,131,159,107,120,164,115,115,110,117,105,131,1
....};
a写道:
" a" < a@a.com在消息新闻中写道:fi ********** @ justice.itsc.cuhk.edu.hk ...
>有人请告诉我如何处理int 2000 * 2000的数组数据吗?
即使使用超级计算机进行文件传递,看起来calloc失败并且在试运行期间会出现分段错误结果。
发生错误:
gcc -O3 -Wall -I。 vote.c datamanager.c -o vote -L。 -hhungarian
gcc:内部错误:分段错误(程序cc1)
请提交完整的错误报告。
请参阅< URL:http ://bugzilla.redhat.com/bugzilla/for instructions。
make:*** [vote]错误1
也许吧太空了?
>
程序片段:
int r [2000 * 2000] = {
123,188,158,197,184,180,146,129,117,192,120,148,17 5,198,153,190,158,17,15,155,15,18,120,18,18,18,18,18,18,11,120,11,120,18,11,120,11,120,11,120,11,120,11,120,11,120,11,120,11,120,11,120,11,120,11,120,11,120,11,120,11文件中的数据并在运行时读取而不是使用
静态初始化。
-
Ian Collins。
a写道:
>
有人请告诉我怎么样处理int 2000的数组数据
* 2000?即使使用超级计算机进行文件传递,似乎在试运行期间,b / b
calloc失败并出现分段错误结果。
假设你有一个相当正常的系统,其sizeof int == 4,那个
数组需要4,000,000 * 4或16 GB的内存。请注意,
保证可用大小为65k(对于C99)和32k(对于C90)。
许多系统将为您提供2千兆字节,但只有64位
系统将允许16场演出。
寻找另一种机制。
-
Chuck F(cinefalconer at maineline dot net)
< http://cbfalconer.home.att.net>
尝试下载部分。
-
通过的免费Usenet帐户发布http://www.teranews.com
Would anybody please tell me how to handle array data of int 2000 * 2000?
Even make file passes by using a supercomputer, it seems calloc fails and
segmentation fault results during a trial run.
解决方案
"a" <a@a.comwrote in message news:fi**********@justice.itsc.cuhk.edu.hk...Would anybody please tell me how to handle array data of int 2000 * 2000?
Even make file passes by using a supercomputer, it seems calloc fails and
segmentation fault results during a trial run.
Make error:
gcc -O3 -Wall -I. vote.c datamanager.c -o vote -L. -lhungarian
gcc: Internal error: Segmentation fault (program cc1)
Please submit a full bug report.
See <URL:http://bugzilla.redhat.com/bugzilla/for instructions.
make: *** [vote] Error 1
Run-time (made in a supercomputer) error:
Segmentation fault
The program snippet:
int r[2000*2000]={
123,188,158,197,184,180,146,129,117,192,120,148,17 5,198,153,190,135,175,158,155,157,192,108,187,148, 187,199,139,158,120,174,168,184,162,132,191,166,11 3,167,148,131,159,107,120,164,115,115,110,117,105, 131,1
....};
a wrote:"a" <a@a.comwrote in message news:fi**********@justice.itsc.cuhk.edu.hk...>Would anybody please tell me how to handle array data of int 2000 * 2000?
Even make file passes by using a supercomputer, it seems calloc fails and
segmentation fault results during a trial run.
Make error:
gcc -O3 -Wall -I. vote.c datamanager.c -o vote -L. -lhungarian
gcc: Internal error: Segmentation fault (program cc1)
Please submit a full bug report.
See <URL:http://bugzilla.redhat.com/bugzilla/for instructions.
make: *** [vote] Error 1
Maybe it ran out of space?
>
The program snippet:
int r[2000*2000]={
123,188,158,197,184,180,146,129,117,192,120,148,17 5,198,153,190,135,175,158,155,157,192,108,187,148, 187,199,139,158,120,174,168,184,162,132,191,166,11 3,167,148,131,159,107,120,164,115,115,110,117,105, 131,1
....};
Put the data in a files and read it in at runtime instead of using
static initialisation.
--
Ian Collins.
a wrote:>
Would anybody please tell me how to handle array data of int 2000
* 2000? Even make file passes by using a supercomputer, it seems
calloc fails and segmentation fault results during a trial run.Assuming you have a fairly normal system with sizeof int == 4, that
array requires 4,000,000 * 4, or 16 gigabytes of memory. Note that
the guaranteed available size is 65k (for C99) and 32k (for C90).
Many systems will give you 2 gigabytes, but only some 64 bit
systems will allow 16 gigs.
Look for another mechanism.
--
Chuck F (cbfalconer at maineline dot net)
<http://cbfalconer.home.att.net>
Try the download section.
--
Posted via a free Usenet account from http://www.teranews.com
这篇关于处理大数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!