openMP 입문중인데 중첩 for loop에서 막혔습니다.
글쓴이: junyung1261 / 작성시간: 화, 2016/06/07 - 8:39오후
void ppm_write(unsigned char* bitmap, int xdim, int ydim, FILE* fp) { int i, x, y; fprintf(fp, "P3\n"); fprintf(fp, "%d %d\n", xdim, ydim); fprintf(fp, "255\n"); for (y = 0; y < ydim; y++){ for (x = 0; x < xdim; x++) { i = x + y*xdim; fprintf(fp, "%d %d %d ", bitmap[4 * i], bitmap[4 * i + 1], bitmap[4 * i + 2]); } fprintf(fp, "\n"); } }
메인 함수에서 ppm_write를 호출해서 쓰는 방식인데요, 메인에서 병렬화를 할 수 없어서 함수 내에서 병렬화를 시도중인데
어떠한 방법을 써도 성능 개선이 안되고 오히려 수행시간이 더오래 걸리는 문제가 발생합니다.. openmp raytracing관련 예제인데 생각보다 쉽지 않네요
Forums:
댓글 달기