pgi

    1

    1답변

    우리는 Nvidia GPU 및 Intel Xeon Phi를 발전시키는 프로젝트를 가지고 있습니다. 호스트 코드와 GPU 코드는 Fortran으로 작성되고 pgfortran에 의해 컴파일됩니다. 우리 직업의 일부를 Phi에서 오프로드하려면 ifort (정적 링크가 작동하지 않음)로 컴파일 된 공유 라이브러리를 만들고 코드의 pgfortran 부분에서 공유 서

    3

    2답변

    암시 적으로 선언 된 변수가 많은 ~ 40 년 된 포트란 스파게티 코드를 작성하고 있습니다. 따라서 값을 초기화하기 위해 코드에 어떤 변수가 있는지 쉽게 알 수있는 방법은 없습니다. 이제 컴파일러 (예 : 인텔 포트란)가 코드의 모든 변수를 인텔 컴파일러에서 제공 한 0 또는 매우 큰 수 이외의 특정 기본값 (예 : -999)으로 초기화하도록 지시 할 수

    0

    1답변

    모든 주요 Fortran 컴파일러가 컴파일 할 수 있어야하는 코드를 업데이트/재 작성하려고합니다. ifort 및 gfortran 및 상대적으로 오래된 (?) 버전의 pgi 컴파일러 (버전 7.2.5)에 액세스 할 수 있습니다. 코드는 gfortran와 ifort 괜찮 컴파일하지만 포틀랜드 그룹의 컴파일러과 같은 줄에 불평 : 나는 실제로 pgf90 주위의

    1

    1답변

    OpenACC가 if 문을 효율적으로 처리하지 못한다고 들었습니다. 사용하지 않으려 고합니다. for (m=0; m<polygon2.num_vertices; m++) { polygon2Vertex1 = listOfpolygon2Vertex[m]; if ((m+1) == polygon2.num_vertices){ // last

    1

    1답변

    는 : #include <iostream> void intfun(int * variable, int value){ #pragma acc parallel present(variable[:1]) num_gangs(1) num_workers(1) { *variable = value; } } int main(){

    0

    1답변

    PGI의 Fortran 컴파일러에서 간단한 프로그램을 만들려고합니다. 이 간단한 프로그램은 그래픽 카드를 사용하여 "다트 보드"알고리즘을 사용하여 파이를 계산합니다. 꽤 오랫동안이 프로그램과 싸우고 난 후에 마침내 대부분의 경우 행동하게되었습니다. 그러나, 나는 현재 결과를 제대로 되돌려 보내야합니다. 나는 더 이상 인쇄 문을 서브 루틴으로 밀어 넣을 수

    1

    1답변

    이유는 무엇입니까 다음 코드를 모든 실행시 #include <iostream> int main(int argc, char const *argv[]) { int sum = 0; int *array; array = new int [100]; #pragma acc enter data create(array[0:100],

    1

    1답변

    와 PGI OpenACC 지원 라이브러리를 연결 및 GCC로 구축되는 프로그램에 연결 : 이제 c - Linking a PGI OpenACC-enabled library with gcc , 나는 동일한 질문이 있지만 동적으로입니다. 라이브러리가 인데 동적으로이 PGI로 빌드되는 동안 어떻게 gcc로 프로그램을 만들 수 있습니까? 는 또한, 고려 다음과 같은

    1

    1답변

    OpenMP 및 Portland Group 컴파일러를 사용하여 포트란 프로그램에서 이름 목록을 읽는 동안 문제가 발생했습니다. 내가하려는 것은 간단합니다. 영역에서 read_namelist 서브 루틴을 호출합니다. 여기에서 이름 목록에서 읽으려는 매개 변수를 초기화 한 다음 이름 목록을 열고 읽거나 닫습니다. namelist에서 읽는 매개 변수는 threa

    0

    1답변

    호스트에 크기 N의 배열이 있습니다. 내 장치로 전송 한 다음 별칭을 할당하고 사용하려고합니다. 그러나 "배열의 경계를 결정할 수 없습니다"라는 메시지가 표시됩니다 컴파일 오류. 예 : 코드 위 #include <openacc.h> #include <stdio.h> #include <stdlib.h> #define N 1000 int main(