问题描述
有人请告诉我如何处理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
....};
发生错误:
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
也许吧太空了?
假设你有一个相当正常的系统,其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>
尝试下载部分。
-
通过
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
....};
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?
Put the data in a files and read it in at runtime instead of using
static initialisation.
--
Ian Collins.
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
这篇关于处理大数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!