0
CUDA는 정렬되지 않은로드 및 저장을 지원합니까? addr % k! = 0과 같이 주소 addr에서 크기 k 바이트의 (단일) 값을 순진하게 읽을 수 있습니까?CUDA에서 정렬되지 않은로드 및 저장소를 만들 수 있습니까?
unsigned* p = (unsigned*) ((char *) my_aligned_ptr + 1); *p = 0xAABBCCDD;
또는
unsigned* q = (unsigned*) ((char *) my_aligned_ptr + 11); unsigned x = *q;
이 예상 효과를 : 같은
보다 구체적으로, 액세스 것인가?
지금 삭제 된 답변에 링크 된 문서가이 질문에 이미 대답했습니다. 그것은 할 수 없습니다. 단순히 코드를 시도했다면'cuda-memcheck'가 잘못 정렬 된 오류를보고합니다. 그래서 그것은 당신이 어떻게 읽었는지 또는 당신이 문서를 읽었는지에 관계없이 그것이 작동하지 않는다는 더 많은 증거입니다. 내 대답은 아니오 야. 포인터의 역 참조는 포인터에 대해 자연스럽게 정렬 된 경계에서 발생하는 것으로 예상되며, 프로그래머는이를 방지하기 위해 책임을집니다. 그리고 두 번째 예에서는'unsigned x = * q; '라고 가정합니다. –
누군가이 제한 사항을 해결해야하는 경우에 [예제 코드] (https://stackoverflow.com/a/40198552)를주었습니다./1662425) 비슷한 질문. – tera