'OpenMP'에 해당되는 글 7건

  1. 2012.06.18 openMP 문서들
  2. 2012.06.18 openmp for문 나누기
  3. 2012.06.10 libgomp 공식 사이트 / 문서
  4. 2012.06.09 우분투에서 openMP 예제
  5. 2012.06.09 openMP / gcc -fopenmp
  6. 2011.09.19 OpenMP 그리고 OpenMPI 2
  7. 2011.02.05 openMP
Programming/openMP2012. 6. 18. 23:17
libgomp 공식 문서 보다는, osc.eud의 문서가 보기 쉽고 정리가 잘 된듯한 느낌.

[링크 : http://www.osc.edu/supercomputing/training/openmp/openmp_0311.pdf]
[링크 : http://gcc.gnu.org/onlinedocs/libgomp.pdf
Posted by 구차니
Programming/openMP2012. 6. 18. 23:00
2C4T 시스템이니 4의 배수로 한번 테스트

parallel for를 통해서 자동으로 나누어 주도록 하면 되는데,
결과를 보면 순서가 틀어져서 나온다. (나누어 실행하되 누가 먼저 실행될진 모르니)
$ cat test.c
#include <stdio.h>
#include <omp.h>

int main(int argc, const char *argv[])
{
    int idx = 0;
    #pragma omp parallel for
    for(idx = 0; idx < 16; idx++)
         printf("%d\n",idx);

    return 0;
} 

$ ./a.out
0
1
2
3
12
13
14
15
4
5
6
7
8
9
10
11 

'Programming > openMP' 카테고리의 다른 글

TBB - Threading Building Blocks by intel  (0) 2013.01.08
openMP 문서들  (0) 2012.06.18
libgomp 공식 사이트 / 문서  (0) 2012.06.10
우분투에서 openMP 예제  (0) 2012.06.09
openMP / gcc -fopenmp  (0) 2012.06.09
Posted by 구차니
Programming/openMP2012. 6. 10. 20:08
openMP의 GNU 구현 버전인 libgomp(Gnu OpenMP)

[링크 : http://gcc.gnu.org/onlinedocs/libgomp/]
[링크 : http://gcc.gnu.org/onlinedocs/libgomp.pdf]

'Programming > openMP' 카테고리의 다른 글

openMP 문서들  (0) 2012.06.18
openmp for문 나누기  (0) 2012.06.18
우분투에서 openMP 예제  (0) 2012.06.09
openMP / gcc -fopenmp  (0) 2012.06.09
openMP  (0) 2011.02.05
Posted by 구차니
Programming/openMP2012. 6. 9. 19:26
예제를 따라하고 출력을 해보니 먼가 이상한거 발견
hello가 아니라 hell world래.. 지옥에 오신걸 환영합니다 인가 -_-
atom330(2core / 4thread) 이라서 일단 4개 쓰레드로 기본 실행 된 듯.

$ vi test.c
#include <stdio.h>
#include <omp.h>

int main(int argc, const char *argv[])
{
    #pragma omp parallel
    printf("hell world\n");

    return 0;
}
 
$ gcc -fopenmp test.c
$ ./a.out
hell world
hell world
hell world
hell world

[링크 : http://assaart.co.cc/wordpress/?p=59

'Programming > openMP' 카테고리의 다른 글

openMP 문서들  (0) 2012.06.18
openmp for문 나누기  (0) 2012.06.18
libgomp 공식 사이트 / 문서  (0) 2012.06.10
openMP / gcc -fopenmp  (0) 2012.06.09
openMP  (0) 2011.02.05
Posted by 구차니
Programming/openMP2012. 6. 9. 19:14
openMP는 컴파일러의 도움을 받아야 하기 때문에
소스에 openMP를 사용하는지에 대한 플래그를 컴파일러에 넘겨주어야 한다.
gcc의 경우 -fopenmp를 통해서 openmp의 사용을 알려 #pragma omp 라는 구문을 해석하도록 한다.

$ man gcc
       -fopenmp
           Enable handling of OpenMP directives "#pragma omp" in C/C++ and
           "!$omp" in Fortran.  When -fopenmp is specified, the compiler
           generates parallel code according to the OpenMP Application Program
           Interface v3.0 <http://www.openmp.org/>.  This option implies
           -pthread, and thus is only supported on targets that have support
           for -pthread. 

[링크 : http://goulassoup.wordpress.com/2011/10/28/openmp-tutorial/]
[링크 : http://assaart.co.cc/wordpress/?p=59



+
우분투에서는 아래의 명령어로 openMP를 설치할 수 있다. gomp는 GNU OpenMP 의 약자이다
$ sudo apt-get install libgomp1 

'Programming > openMP' 카테고리의 다른 글

openMP 문서들  (0) 2012.06.18
openmp for문 나누기  (0) 2012.06.18
libgomp 공식 사이트 / 문서  (0) 2012.06.10
우분투에서 openMP 예제  (0) 2012.06.09
openMP  (0) 2011.02.05
Posted by 구차니
Programming/openMPI2011. 9. 19. 07:39
libgomp 와 openmpi-dev를 설치하라는데
[http://ubuntuforums.org/showthread.php?t=710281]

서버에서 한번 검색을 해보니
흐으음.. GCC OpenMP의 약자로 GOMP와 openMPI 두가지가 나오고
$ apt-cache search openmp
libgomp1 - GCC OpenMP (GOMP) support library
libgomp1-dbg - GCC OpenMP (GOMP) support library (debug symbols)
lib64gomp1 - GCC OpenMP (GOMP) 지원 라이브러리 (64비트)
lib64gomp1-dbg - GCC OpenMP (GOMP) 지원 라이브러리 (64비트 디버깅 심볼)
conky-all - highly configurable system monitor (all features enabled)
gromacs-lam - Transition package to gromacs-openmpi
gromacs-openmpi - Molecular dynamics sim, binaries for OpenMPI parallelization
libcomplearn-gomp-dev - CompLearn library, OpenMP version development files
libcomplearn-gomp1 - machine-learning core library runtime files with OpenMP (libgomp)
libopenmpi-dbg - high performance message passing library -- debug library
libopenmpi-dev - high performance message passing library -- header files
libopenmpi1.3 - high performance message passing library -- shared library
libqsearch-gomp-dev - CompLearn library, OpenMP version development files
libqsearch-gomp1 - machine-learning core library runtime files with OpenMP (libgomp)
mpi-default-bin - Standard MPI runtime programs
mpi-default-dev - Standard MPI development files
openmpi-bin - high performance message passing library -- binaries
openmpi-checkpoint - high performance message passing library -- checkpoint support
openmpi-common - high performance message passing library -- common files
openmpi-doc - high performance message passing library -- man pages
libhdf5-openmpi-1.8.4 - Hierarchical Data Format 5 (HDF5) - runtime files - OpenMPI version
libhdf5-openmpi-dev - Hierarchical Data Format 5 (HDF5) - development files - OpenMPI version 
 
OpenMP와 OpenMPI는 다르다는데 흐음.. 내가 보기에는 그게 그거지만..
[http://www.linuxquestions.org/questions/programming-9/lost-on-parallel-programming-openmpi-openmp-657210/]

아무튼 MPI는 복잡한 Implementation이라고 하니, OpenMP 부터 해보면 되려나?
[링크 : http://openmp.org/wp/]
[링크 : http://www.open-mpi.org/]
 

'Programming > openMPI' 카테고리의 다른 글

openMPI 서비스 설치하기...?  (0) 2019.04.02
ubuntu mpich cluster  (0) 2017.02.05
opempi 패키지  (0) 2017.02.04
openmpi with heterogenerous  (0) 2017.02.03
openmpi with openmp  (0) 2017.02.03
Posted by 구차니
Programming/openMP2011. 2. 5. 22:58
CUDA를 보다가 context 관련 해서 나온 또 다른(?) open계열 API

대충 보니까, CPP(C Pre-Processor/매크로 프로세서)의 도움을 받아
#pragma 형식으로 확장을 하여 Multi Processor를 지원하는 것으로 보인다.



'Programming > openMP' 카테고리의 다른 글

openMP 문서들  (0) 2012.06.18
openmp for문 나누기  (0) 2012.06.18
libgomp 공식 사이트 / 문서  (0) 2012.06.10
우분투에서 openMP 예제  (0) 2012.06.09
openMP / gcc -fopenmp  (0) 2012.06.09
Posted by 구차니