小编fsh*_*fsh的帖子

有没有办法为共享内存阵列设置默认值?

请考虑以下代码:

__global__ void kernel(int *something) {
extern __shared__ int shared_array[];     

// Some operations on shared_array here.

}
Run Code Online (Sandbox Code Playgroud)

是否可以将整个shared_array设置为某个值 - 例如0 - 而无需在某个线程中明确地寻址每个单元格?

cuda

12
推荐指数
2
解决办法
1万
查看次数

使用-with-rtsopts ghc选项作为pragma

我正在尝试在Haskell中解决算法难题,为此我需要相当大的数据结构.但是问题解决网站我提交了我的解决方案,不使用任何运行时选项来允许更大的堆栈,但我听说我可以使用编译器选项作为pragma.我在我的代码中尝试使用以下编译指示:

{-# OPTIONS_GHC -O2 -rtsopts -with-rtsopts=-K32m #-}
Run Code Online (Sandbox Code Playgroud)

然后我编译ghc --make algo.hs.但是,当我在一些大型测试中运行我的机器时,程序崩溃并发生堆栈溢出,并报告当前堆栈大小为8MB.另一方面,当我编译时:

ghc -rtsopts -with-rtsopts=-K32M --make algo.hs -fforce-recomp
Run Code Online (Sandbox Code Playgroud)

该程序可以在相同的数据上正常工作,而无需添加任何+RTS参数.我使用的是GHC 7.0.2,但解决问题的网站使用的是6.12.3,所以我最好也在寻找可以使用旧版本的解决方案.

stack-overflow haskell runtime pragma ghc

9
推荐指数
1
解决办法
1934
查看次数

标签 统计

cuda ×1

ghc ×1

haskell ×1

pragma ×1

runtime ×1

stack-overflow ×1