第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

memcpy上未指定的啟動失敗

memcpy上未指定的啟動失敗

memcpy上未指定的啟動失敗在庫達(dá)運(yùn)行我的程序時,我遇到了一個“未指定的啟動失敗”。我檢查過錯誤了。這個程序是一個微分方程的求解器。它迭代總ITER次數(shù)。房間X和房間_Y是矩陣的寬度和高度。這里是標(biāo)題,它的名稱是“solate:#define ITER_BETWEEN_SAVES 10000#define TOTAL_ITER 10000#define ROOM_X 2048#define ROOM_Y 2048#define SOURCE_DIM_X 200#define SOURCE_DIM_Y 1000#define ALPHA 1.11e-4#define DELTA_T 10#define H 0.1#include <stdio.h>void Matrix(float* M);void SolverCPU(float* M1, float* M2);__global__ void SolverGPU(float* M1, float* M2);下面是填充矩陣的內(nèi)核和函數(shù):#include "solver.h"#include<cuda.h>void Matrix(float* M){   for (int j = 0; j < SOURCE_DIM_Y; ++j) {     for (int i = 0; i <  SOURCE_DIM_X; ++i) {     M[(i+(ROOM_X/2 - SOURCE_DIM_X/2)) + ROOM_X * (j+(ROOM_Y/2 - SOURCE_DIM_Y/2))] = 100;     }   }}     __global__ void SolverGPU(float* M1,float *M2)  {    int i =threadIdx.x + blockIdx.x * blockDim.x;        int j = threadIdx.y + blockIdx.y * blockDim.y;         float M1_Index = M1[i + ROOM_X * j];         float M1_IndexUp = M1[i+1 + ROOM_X * j];         float M1_IndexDown =M1[i-1 + ROOM_X * j];         float M1_IndexLeft = M1[i + ROOM_X * (j+1)];         float M1_IndexRight = M1[i + ROOM_X *(j-1)];         M2[i + ROOM_X * j] = M1_Index + (ALPHA * DELTA_T / (H*H)) * (M1_IndexUp + M1_IndexDown + M1_IndexLeft +M1_IndexRight - 4*M1_Index);     }編譯沒有問題。當(dāng)我檢查我的錯誤時,“未指定的啟動失敗”出現(xiàn)在內(nèi)核后面的memcpy上。好的,所以我讀過它通常是因為內(nèi)核不能正常運(yùn)行。但是我找不到內(nèi)核中的錯誤.我想這是一個很簡單的錯誤,但是找不到它。
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 573 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號