小编Ska*_*aty的帖子

在列中均匀分布按钮(元素)

我一直在尝试使用bootstrap实现类似键盘的小部件.

这是对手头问题的重建:

<div>
<div class="row">
    <span class="col-md-3">
        <button class="btn btn-lg btn-warning">1</button>
    <button class="btn btn-lg btn-warning">2</button>
    <button class="btn btn-lg btn-warning">3</button>
    </span>
    </div>

    <div class="row">
    <span class="col-md-3">
        <button class="btn btn-lg btn-warning btn-block">SPAN</button>
    </span>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

这样的问题是标记为1,2和3的按钮没有均匀展开以填充3列宽父级.

现在,我知道btn-group-justified我可以使用类,但它会拉伸按钮以适合父级的宽度.我想要的是在按钮之间添加填充物.

可以使用Bootstrap完成,或者我应该使用display: table或一些涉及边距的奇怪的巫毒代码.

html twitter-bootstrap-3

4
推荐指数
1
解决办法
9475
查看次数

CUDA写入其他warp看不到的全局内存

我试图向CUDA的新手解释全球记忆.我想出了以下虚拟内核,它阻止其他warp中的其他线程,直到选定的warp将全局变量设置为另一个值:

__global__ void with_sync()
{
    while (threadIdx.x / 32 != 0)
    {
        if (is_done != 0)
        {
            break;
        }
    }

    if (threadIdx.x / 32 == 0)
    {
        is_done = 1;
        printf("I'm done!\n");
    }
}
Run Code Online (Sandbox Code Playgroud)

变量is_done在函数外部声明为__device__ __managed__ int(如果我错了,请纠正我,意味着变量将驻留在全局内存空间中).

但是,当我执行此内核(单个块中的1024个1D线程)时,如下所示:

with_sync<<<1, 1024>>>();
cudaDeviceSynchronize();
Run Code Online (Sandbox Code Playgroud)

I'm done按预期打印出来.但是,CUDA程序没有终止(我cudaDeviceSynchronize()在主机代码中放置它等待所有线程).这让我想知道其他warp是否没有收到is_done变量的变化.但是,据我所知,全局内存意味着可以在设备级别(即至少是网格中的所有块)中看到该值.

我的问题如下:CUDA是否有任何缓存/优化使得这种不一致的全局内存视图可以发生?有没有办法从驻留在全局内存中的变量访问"最新"值?

c++ cuda

0
推荐指数
1
解决办法
73
查看次数

标签 统计

c++ ×1

cuda ×1

html ×1

twitter-bootstrap-3 ×1