[問題] 請問一下如何建造一個大型的矩陣?

看板C_and_CPP作者 (part2)時間16年前 (2009/09/09 09:32), 編輯推噓10(10010)
留言20則, 13人參與, 最新討論串1/1
抱歉 我是C的新手... 請問如何建造一個10000*10000的矩陣呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.194.41

09/09 17:33, , 1F
稀疏矩陣?
09/09 17:33, 1F

09/09 17:42, , 2F
type array_name[10000][10000];
09/09 17:42, 2F

09/09 17:46, , 3F
stack可能開不了這麼大, 必要時要用dynamic alloc的@_@"
09/09 17:46, 3F

09/09 17:49, , 4F
可以先寫在全域空間
09/09 17:49, 4F

09/09 17:59, , 5F
一定要用稀疏矩陣 要不然太浪費記憶體空間了
09/09 17:59, 5F

09/09 17:59, , 6F
這個要用很特殊的資料結構去設計
09/09 17:59, 6F

09/09 18:10, , 7F
用途呢 -.-""
09/09 18:10, 7F

09/09 18:11, , 8F
不知道用途前 稀疏矩陣 不一定是最佳解
09/09 18:11, 8F

09/09 18:51, , 9F
10000*10000好像開不起來……吧? 開全域也會RE ?
09/09 18:51, 9F

09/09 18:57, , 10F
看type是什麼, 10000*10000個int才三百多MB 一定能開
09/09 18:57, 10F

09/09 19:03, , 11F
開array不是只看你的ram插的夠不夠吧, stack沒設定大小
09/09 19:03, 11F

09/09 19:03, , 12F
搞不好開個幾十MB都不讓你開了, 何況是三百多MB....XD
09/09 19:03, 12F

09/09 19:03, , 13F
一般家用電腦三百多MB很難開吧 又不是記憶體都給這程式用
09/09 19:03, 13F

09/09 19:33, , 14F
對不起我錯了Orz [10000][10000] 開得起來 (我家768MB)
09/09 19:33, 14F

09/10 01:02, , 15F
抱歉問一下 如果用cuda跑 gpu有1g記憶體 這樣可以跑嗎?
09/10 01:02, 15F

09/10 01:47, , 16F
跟RAM size無關
09/10 01:47, 16F

09/10 02:32, , 17F
原po要做啥? 需要這麼大的矩陣.......
09/10 02:32, 17F

09/10 07:27, , 18F
cuda- 可以啊, 不過送到device很花時間的
09/10 07:27, 18F

09/10 07:28, , 19F
不如allocate pinned page之後再cudaHostGetDevicePointer
09/10 07:28, 19F

09/10 16:17, , 20F
如果把資料放在shard memory應該不會太慢@@
09/10 16:17, 20F
文章代碼(AID): #1AftOr-2 (C_and_CPP)