小编Ren*_*nan的帖子

cuda.h,cuda_runtime.h,cuda_runtime_api.h之间的区别

我开始使用CUDA进行编程,在某些示例中,我找到了包含文件cuda.h,cuda_runtime.hcuda_runtime_api.h包含在代码中.有人可以向我解释这些文件之间的区别吗?

cuda header-files

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

绘制多条曲线相同的图形和相同的比例

这是这个问题的后续行动.

我想在同一个图上绘制多条曲线,但是我的新曲线与第一条曲线生成的y轴刻度相同.

请注意以下示例:

y1 <- c(100, 200, 300, 400, 500)
y2 <- c(1, 2, 3, 4, 5)
x <- c(1, 2, 3, 4, 5)

# first plot
plot(x, y1)

# second plot
par(new = TRUE)
plot(x, y2, axes = FALSE, xlab = "", ylab = "")
Run Code Online (Sandbox Code Playgroud)

这实际上是在图表的相同坐标上绘制两组值(因为我隐藏了将使用第二个图创建的新y轴).

那么我的问题是如何在绘制第二个图时保持相同的y轴刻度.

plot r

20
推荐指数
3
解决办法
15万
查看次数

验证内核的方法是在CUDA中执行的

当我使用错误的参数调用内核(例如,每个块超过512个线程)或者当它内部的操作需要的内容超过我的设备提供的内容时(例如,寄存器太多),内核根本就不会被执行.没有例外或返回值来指示发生了什么.

我想知道是否有办法验证内核是否被执行.

cuda

14
推荐指数
1
解决办法
5854
查看次数

C++中异常内部的异常

使用C#或Java时,我曾经创建了包含其他异常作为类成员的异常类.例如:

public class MyException : Exception {
    private MyException ex;
    private String message;

    public String what() {
        return this.message;
    }

    public String stack() {
        if(ex != null) {
            StringBuilder s;
            s.append(this.what());
            s.append(this.ex.stack());
            return s.toString();
        }

        return this.what();
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找同一主题的例子但是对于C++我找不到任何(也许我没有找到正确的术语,因为你可以看到这个问题的标题不是很花哨).

无论如何,在C++中这样做的正确方法是什么?它是将内部异常存储为指针还是引用?(我想我可能需要一个指针,所以当它是第一个异常时它可以为null).当我引发异常时,它是否应该像创建的指针一样new

编辑:也许我写的是有点混乱或不是一个众所周知的(接受)编程实践.所以我将指定我打算如何将此类与片段一起使用:

 try {
     // Code that throws an exception of type MyException
 } catch(MyException ex) {
     MyException another = new MyException();
     another.setEx(ex);
     another.setMessage("A message that explains where the other exception was caught and on what conditions");

     throw …
Run Code Online (Sandbox Code Playgroud)

c++ exception

10
推荐指数
2
解决办法
2551
查看次数

更改搜索栏ios的文本颜色

是否可以更改搜索栏的文字颜色?我似乎无法访问UISearchBarTextField类...

uisearchbar ios

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

调用模板CUDA内核时出现问题

我一直在尝试创建模板内核,但是在我的程序中调用它们时遇到了一些麻烦.我有一个Matrix<T>模板类,并在其中定义了一些方法

Matrix.h:

template <typename T> class Matrix {
    ...
    void sum(Matrix<T>& m1, Matrix<T>& m2, Matrix<T>& sum);
    ...
}

#include "Matrix.cu"
Run Code Online (Sandbox Code Playgroud)

Matrix.cu:

#include "MatrixKernel.h"

template<typename T> void Matrix<T>::sum(const Matrix<T>& m, Matrix<T>& sum) {
    ...
    sumKernel<T><<<dimGrid, dimBlock>>>(Matrix<T> m1, Matrix<T> m2, Matrix<T> sum)
    ...
}
Run Code Online (Sandbox Code Playgroud)

MatrixKernel.h:

template<typename T> __global__ void sumKernel(const Matrix<T> m1, const Matrix<T> m2, Matrix<T> sum) {
...
}
Run Code Online (Sandbox Code Playgroud)

问题是,当我从sum中调用sumKernel时,编译器会给我以下错误:

error C2059: syntax error : '<'
Run Code Online (Sandbox Code Playgroud)

有人知道发生了什么吗?在我包含sumKernel调用之前,代码编译得很好.

谢谢.

c++ templates cuda

7
推荐指数
1
解决办法
9616
查看次数

git aws.push命令不是由eb init创建的

我正在关注如何在AWS上部署Ruby on Rails应用程序的教程,并在尝试执行git aws.push命令时遇到以下错误:

fatal: cannot exec 'git-aws.push': Not a directory

根据本教程eb init本来已经创造了我这个新的git命令,但显然事实并非如此......已经有人偶然发现了这个问题?我怎样才能解决这个问题?

我正在使用Mac OS Lion.

谢谢

deploying amazon-web-services ruby-on-rails-3 amazon-elastic-beanstalk

7
推荐指数
2
解决办法
7974
查看次数

我的ec2实例中的乘客日志文件的位置(弹性beanstalk + rails)

我正在尝试在Elastic Beanstalk上部署Rails应用程序.我希望能够查看我的Web服务器日志文件(应该是Passenger),但我不知道在我的ec2实例中哪里可以找到它们.我能够通过SSH进入实例,但我找不到文件.

谢谢

logging passenger amazon-web-services amazon-elastic-beanstalk

6
推荐指数
1
解决办法
4995
查看次数

eq_any用于布尔属性 - ransack

我的模型中有一个布尔属性(已发布),我book希望使用该值的复选框过滤所有书籍.

class Book < ActiveRecord::Base
  attr_accessible :published
end
Run Code Online (Sandbox Code Playgroud)

这意味着,我想是这样eq_any,但对于truefalse.有没有办法用Ransack做到这一点?

UPDATE

我希望用户能够只选择出版的书籍,只选择未出版的书籍和任何书籍.所以单个复选框不会.

ruby-on-rails-3 ransack

6
推荐指数
2
解决办法
3865
查看次数

用嵌套模型覆盖* _attributes =方法rails

由于无法解释的原因太长,我需要重写*_attributes=(attributes)模型的方法,该方法接受另一个模型的嵌套属性。例如,这是我的模型:

class Experience < ActiveRecord::Base
    accepts_nested_attributes_for :company

    def company_attributes=(attributes)
        ...
    end
end
Run Code Online (Sandbox Code Playgroud)

首先,每次调用此方法时,我就开始创建一家新公司(用替换...self.company = Company.new(attributes))。不用说它将去并将新公司保存到数据库中。

当我发现它正在做这种事情时,我将该方法编辑为以下内容:

def company_attributes=(attributes)
    self.company.nil? ? self.company = Company.new : self.company.assign_attributes(attributes)
end
Run Code Online (Sandbox Code Playgroud)

这似乎是正确的方法(它只有在没有nil的情况下才会创建一个新对象,否则只会分配已更改的属性)。但是,对于新体验,它将新创建的公司保存到数据库中,而在编辑体验时,它将在方法的单行之后更改公司的属性,但不会将其保存到数据库中。

问题1:生成的*_attributes=(attributes)方法如何工作?

问题2:如何更改company_attributes=(attributes)方法才能实现目标:创建新体验时创建新公司,并在编辑体验时编辑公司属性。

谢谢

overriding nested-attributes ruby-on-rails-3

5
推荐指数
0
解决办法
496
查看次数

Visual Studio每次都会编译一些文件(即使没有进行任何更改)

我一直在VS2008上开发一个应用程序,一切都很顺利.我对解决方案和项目的名称进行了一些更改,这就是当我开始疯狂时出现以下行为:

  • 我清理我的解决方案;
  • 每个文件都被重新编译(正常到这里);
  • 我在任何文件中都没有任何更改,VS再次编译一组文件;
  • 仍然没有进行任何更改,每次都会重新编译相同的文件.

如果有人知道可能会继续下去,那就太棒了.如果没有,我可以做什么样的测试来进一步调查?

谢谢

编辑:

  • 使用的语言是带有CUDA扩展的C++;
  • 每次编译的文件都是.cu文件

cuda build visual-studio-2008

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

C中的数组/指针:在不知道底层类型的情况下进行复制

假设我有一个unsigned char指针(uchar*从现在开始)到T不同类型的数组的开头uchar.知道这个数组的大小并且它是连续的(使用创建malloc),是否可以在不知道类型的情况下将其复制到另一个数组T?如何以字节为单位访问它?

谢谢

c++ arrays pointers

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

指针类成员和删除职责

如果我的类有一个可以由类客户端设置的某种指针,我该如何处理删除?

例:

class A {
};

class B {
public:
   void setA(A* a) {
       this->a = a;
   }
private:
   A* a;
};
Run Code Online (Sandbox Code Playgroud)

该类的析构函数应该如何B?应该删除a吗?正如我所看到的,用户可以通过两种方式设置此指针:

... // Assume B object b being created elsewhere
A aObj;
A* aPtr = new A();

b.setA(&aObj); // It is not OK to use delete, and class member will
               // point to invalid memory location once aObj goes out
               // of scope
b.setA(aPtr);  // Using new will make the pointer available even after …
Run Code Online (Sandbox Code Playgroud)

c++ pointers memory-management

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