Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

ru:installation [2012/10/18 03:44]
deinega [Подключение EMTL в UNIX]
ru:installation [2013/04/20 11:18] (текущий)
deinega [Содержание архива EMTL]
Строка 1: Строка 1:
 ====== Установка ====== ====== Установка ======
  
-Для работы с библиотекой EMTL необходимо [[ru/download|скачать]] и установить библиотеку быстрого преобразования Фурье [[http://www.fftw.org/download.html|FFTW]].+Для работы с библиотекой EMTL необходимо
 +  * скачать [[download|архив EMTL]]; 
 +  * скачать архив [[ivutils|ivutils]] и положить его в ту же директорию, где находится EMTL; 
 +  * [[ru/download|скачать]] и установить библиотеку быстрого преобразования Фурье [[http://www.fftw.org/download.html|FFTW]].
  
 Чтобы иметь возможность запускать версию библиотеки EMTL для параллельного режима работы (EMTL MPI), необходимо установить библиотеку MPI.  Параллельный режим работы позволяет производить вычисления одновременно на нескольких ядрах процессора или на нескольких процессорах в кластере. Все функции EMTL, использующие вызовы MPI, поставляются в виде исходного кода (файл implmpi.cpp), поэтому можно использовать Чтобы иметь возможность запускать версию библиотеки EMTL для параллельного режима работы (EMTL MPI), необходимо установить библиотеку MPI.  Параллельный режим работы позволяет производить вычисления одновременно на нескольких ядрах процессора или на нескольких процессорах в кластере. Все функции EMTL, использующие вызовы MPI, поставляются в виде исходного кода (файл implmpi.cpp), поэтому можно использовать
Строка 12: Строка 15:
 Для академических структур мы готовы предоставлять оптимизированную версию. Для академических структур мы готовы предоставлять оптимизированную версию.
 */ */
- 
 ====== Установка необходимых пакетов программ ====== ====== Установка необходимых пакетов программ ======
  
Строка 41: Строка 43:
 ====== Содержание архива EMTL ====== ====== Содержание архива EMTL ======
  
-В папках photonic и ivutils/include находятся заголовочные файлы EMTL.+В папке include находятся заголовочные файлы EMTL.
  
-В папке photonic/vs10/lib находятся библиотечные файлы EMTL для Miscrosoft Visual Studio 10+В папке vs10/Release и vs10/Debug находятся библиотечные файлы libemtl.lib для Miscrosoft Visual Studio 10.
-  * lib.lib – последовательная Release версия; +
-  * libd.lib – последовательная Debug версия.+
  
-В папках photonic/unix/_gcc и photonic/unix/_gcc_mpi находятся последовательная и последовательная версия библиотечного файла для UNIX lib_emtl.a.+В папках unix/_gcc и unix/_gcc_mpi находятся последовательная и параллельная версия библиотечного файла для UNIX lib_emtl.a.
  
 В папках tests находятся тестовые проекты с примерами расчетов: В папках tests находятся тестовые проекты с примерами расчетов:
Строка 60: Строка 60:
 Правила компиляции кода С++ в UNIX (в частности, описание makefile) можно почитать [[http://revolution.allbest.ru/programming/00015190_0.html|здесь]].  Правила компиляции кода С++ в UNIX (в частности, описание makefile) можно почитать [[http://revolution.allbest.ru/programming/00015190_0.html|здесь]]. 
  
-===== Подключение EMTL в UNIX =====+===== Компиляция EMTL под UNIX =====
  
 Вы можете использовать готовый makefile (tests/test_mie/unix/Makefile). Вы можете использовать готовый makefile (tests/test_mie/unix/Makefile).
Строка 86: Строка 86:
 </code> </code>
    
-Исполняемый файл будет записан в директорию Obj_<your_archname> или Obj_<your_archname>_mpi.+Исполняемый файл будет записан в директорию _<your_archname> или _<your_archname>_mpi.
  
 ===== Если вы хотите сами создать Makefile ===== ===== Если вы хотите сами создать Makefile =====
  
-Тогда в нем нужно указать:+тогда вам в нем нужно указать:
   * пути к заголовочным файлам EMTL (папки photonic и ivutils/include) и заголовочным файлам FFTW;   * пути к заголовочным файлам EMTL (папки photonic и ivutils/include) и заголовочным файлам FFTW;
-  * используемые библиотечные файлы EMTL - libemtl.a и FFTW - libfftw3.a. +  * используемые библиотечные файлы EMTL - lib_emtl.a и FFTW - libfftw3.a. 
  
 Также нужно скомпилировать файл ivutils/src/implmpi.cpp. При компиляции параллельной версии нужно использовать макроопределение препроцессора С++ USE_MPI. Также нужно скомпилировать файл ivutils/src/implmpi.cpp. При компиляции параллельной версии нужно использовать макроопределение препроцессора С++ USE_MPI.
Строка 152: Строка 152:
 \\ \\
 \\ \\
-===== Подключение EMTL в Windows =====+===== Компиляция EMTL под Windows =====
  
-Чтобы работать с EMTL вам нужно указать путь к файлам fftw3.h и fftw3.lib в закладке Visual Studio Tools > Options > Project and Solutions > VC++ Directories в списках Include Files и Library Files.+В каждой директории с тестовым проектом есть поддиректория vs10, в которой находится готовый проект для MS Visual Studio 10 с несколькими конфигурациями. Для компиляции достаточно открыть его в Visual Studio, выбрать необходимую конфигурацию, указать пути к файлам FFTW и, если это необходимо, к файлам MPICH2.  
 + 
 +Путь к файлам fftw3.h и fftw3.lib нужно указать в закладке Visual Studio Tools > Options > Project and Solutions > VC++ Directories в списках Include Files и Library Files.
  
 Если вы используете MPICH2, то нужно указать пути: Если вы используете MPICH2, то нужно указать пути:
Строка 161: Строка 163:
   * Program Files\MPICH2\lib   * Program Files\MPICH2\lib
 в списках Executable Files, Include Files и Library Files. в списках Executable Files, Include Files и Library Files.
- 
-Далее нужно указать путь к заголовочным файлам photonic и ivutils/include в Project > Project Properties > Configuration Properties > C/C++ > General > Additional Include Directories. 
  
 Также нужно перечислить библиотечные файлы в Project > Project Properties > Configuration Properties > Linker > Input > Additional Dependencies. Это, во-первых, один из библиотечных файлов из photonic/vs8/lib (нужный файл зависит от того, находитесь вы в режиме Debug или Release, и используете ли вы последовательную или параллельную версию). Во-вторых, это fftw3.lib. В-третьих, это mpi.lib, если вы используете MPICH2. Также нужно перечислить библиотечные файлы в Project > Project Properties > Configuration Properties > Linker > Input > Additional Dependencies. Это, во-первых, один из библиотечных файлов из photonic/vs8/lib (нужный файл зависит от того, находитесь вы в режиме Debug или Release, и используете ли вы последовательную или параллельную версию). Во-вторых, это fftw3.lib. В-третьих, это mpi.lib, если вы используете MPICH2.
  
-Также вам нужно добавить в свой проект файл photonic/implmpi.cpp. +Если вы компилируете параллельную версию, вам нужно добавить в Configuration Properties > C/C++ > Preprocessor > Preprocessor Definitions макроопределение USE_MPI.
- +
-Если вы компилируете параллельную версию, вам нужно добавить в Configuration Properties > C/C++ > Preprocessor > Preprocessor Definitions макроопределение C++ USE_MPI.+
  
 Для подключения EMTL, нужно вставить заголовочный файл uiexp.h в ваш *.cpp файл  Для подключения EMTL, нужно вставить заголовочный файл uiexp.h в ваш *.cpp файл 
Строка 179: Строка 177:
   * MPIRun Working Directory: $(OutDir)   * MPIRun Working Directory: $(OutDir)
   * MPIShim Location: путь к файлу mpishim.exe (например, C:/Program Files/Microsoft Visual Studio 8/Common7/IDE/Remote Debugger/x86/mpishim).   * MPIShim Location: путь к файлу mpishim.exe (например, C:/Program Files/Microsoft Visual Studio 8/Common7/IDE/Remote Debugger/x86/mpishim).
- 
-===== Тестовые примеры для Windows ===== 
- 
-В каждой директории с тестовым проектом есть поддиректория vs8, в которой находится готовый проект для MS VS2005 с несколькими конфигурациями. Для компиляции достаточно открыть его в Visual Studio, выбрать необходимую конфигурацию, указать пути к файлам FFTW и, если это необходимо, к файлам MPICH2. Как это сделать уже рассказывалось выше. 
  
 
/home/kintechlab/fdtd.kintechlab.com/docs/data/attic/ru/installation.1350517486.txt.gz · Последние изменения: 2012/10/18 03:44 — deinega     Наверх