小编Pro*_*mer的帖子

5
推荐指数
1
解决办法
3136
查看次数

图表中的前身?

节点的"前任"一词是指立即在该节点之前的节点(即节点的父节点),还是指在该节点上方距离k处的节点,其中k> = 1.

graph

5
推荐指数
1
解决办法
5233
查看次数

T(n)= 2T(n/2)+ n lg lg n的渐近上界和下界是什么?

递归关系

T(n)= 2T(n/2)+ n lg lg n

(其中lg是对数2的对数)可以使用主定理来解决,但我不是很确定答案.我找到了答案,但为了防止信息级联,我在这里没有提到它.请帮我找到上面的大O和Ω.

algorithm big-o asymptotic-complexity master-theorem

5
推荐指数
1
解决办法
4678
查看次数

初始化器不允许为cuda的__shared__变量

我正在做以下事情:

__shared__ int exForBlockLessThanP = totalElementLessThanPivotEntireBlock[blockIdx.x];
Run Code Online (Sandbox Code Playgroud)

其中totalElementLessThanPivotEntireBlock是GPU上的一个数组.编译器抛出错误,如问题标题中所述.我真的不明白为什么这是一个问题?

cuda gpgpu nvidia

5
推荐指数
1
解决办法
3264
查看次数

cudaMemcpy是否从主机到设备并行执行?

我很好奇当我们从主机复制到设备时是否在CPU或GPU上执行cudaMemcpy?

换句话说,它是复制一个顺序过程还是并行完成?

让我解释一下为什么我这样问:我有一个包含500万个元素的数组.现在,我想从数组的不同部分复制2组50,000个元素.所以,我想在第一次形成我想在CPU上复制的所有元素的大量数组然后只进行一次大转移或者我应该只调用2个cudaMemcpy,每组一个.

如果cudaMemcpy并行完成,那么我认为第二种方法会更快,因为你不必先在CPU上顺序复制100000个元素

cuda gpgpu nvidia

5
推荐指数
1
解决办法
3947
查看次数

异或门和非门在逻辑上是否完整

异或门和非门在逻辑上是完整的。换句话说,我们可以使用它们来实现逻辑电路吗?

hardware logic xor

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

事件未找到csh

我有这个非常简单的csh脚本.

#!/bin/csh
        echo "Hello World!"
        echo "How are you today?"
Run Code Online (Sandbox Code Playgroud)

但是我收到了错误 ": Event not found.

怎么了?

csh

5
推荐指数
1
解决办法
8154
查看次数

C中的OR运算符不起作用

我不明白为什么printf下面的代码中的最后一个不打印255.

char c;
c = c & 0;
printf("The value of c is %d", (int)c);
int j = 255;
c = (c | j);
printf("The value of c is %d", (int)c);
Run Code Online (Sandbox Code Playgroud)

c

4
推荐指数
2
解决办法
398
查看次数

C++ CUDA 内核中可以使用字符串数据类型吗?

我正在编写一个 CUDA 内核,我在其中使用stringC++ 中的数据类型。但是,编译器抛出以下错误:

error: calling a host function("std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator =") from a __device__/__global__ function("doDecompression") is not allowed
Run Code Online (Sandbox Code Playgroud)

内核中不允许使用字符串吗?如果没有,在内核中为字符数组分配空间的解决方法是什么?

cuda gpgpu

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

非常慢的随机字符串生成器

我想出了下面的代码来生成100001随机字符串.字符串应该是唯一的.但是,以下代码需要数小时才能完成这项工作.有人能告诉我如何优化它,为什么它这么慢?

string getRandomString(int length) {     
    static string charset = "abcdefghijklmnopqrstuvwxyz";   
    string result;
    result.resize(length);
    for (int i = 0; i < length; i++) {
        result[i] = charset[rand() % charset.length()];   
    }
    return result; 
} 
void main(){

    srand(time(NULL));
    vector<string> storeUnigrams;
    int numUnigram = 100001; 
    string temp = "";
    int minLen = 3;
    int maxLen = 26;
    int range = maxLen - minLen + 1;
    int i =0;

    while(i < numUnigram){
        int lenOfRanString = rand()%range   + minLen;
        temp = getRandomString(lenOfRanString);
        bool doesithave = false; …
Run Code Online (Sandbox Code Playgroud)

c++

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