Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Установка HPC Pack 2008 SDK

Автор:   •  Июнь 10, 2018  •  Реферат  •  749 Слов (3 Страниц)  •  714 Просмотры

Страница 1 из 3

Установка HPC Pack 2008 SDK

Установка HPC Pack SDK похожа на установку других программных продуктов Microsoft:

  1. скачайте 32-х битную или 64-х битную версию, в соответствии с версией вашей операционной системы;
  2. запустите скачанный инсталлятор;
  3. примите лицензионное соглашение;
  4. нажимайте кнопку «Next» до тех пор, пока она не превратится в кнопку «Finish»;
  5. скачайте Fix и установите его тоже;

Настройка Visual Studio

Теперь нам нужно настроить Visual Studio для работы с вновь проинсталлированной библиотекой. Если у вас запущена Visual Studio, то на всякий случай перезапустите её после установки HPC Pack SDK. Нажмите Tools → Options, и добавьте путь к заголовочным файлам в Projects and Solutions → VC++ Directories → Show directories for: Include files. Предполагаем, что вы установили HPC Pack SDK в стандартное место:

[pic 1]

Аналогично добавьте директорию с библиотечными файлами. Если у вас 32-х битная операцион­ная система, то путь оканчивается на i386, если же система 64-х битная, то путь оканчивается на amd64:

[pic 2]

Для каждой программы необходимо задать дополнительные файлы компоновки. Нажмите Project → MpiTest Options, и добавьте msmpi.lib в список дополнительных файлов для компоновки:

[pic 3]

Создание простейшей программы

Создайте новый проект на языке C++ (General  Emty Project).  Введите имя проекта MpiTest. Добавите дополнительные файлы компановки.

Введите исходный код программы. Будем выполнять тесты на следующем простейшем коде:

#include

#include

using namespace std;

int main(int argc, char **argv)

{

     MPI_Init(&argc, &argv);

     

     int rank, size;

     

     MPI_Comm_rank(MPI_COMM_WORLD, &rank);

     MPI_Comm_size(MPI_COMM_WORLD, &size);

     if( rank )

     {

         char buf[] = "Hello!";

         MPI_Send(buf, sizeof(buf), MPI_CHAR, 0, 0, MPI_COMM_WORLD);

     } else {

         cout << "Process 0 started" << endl;

         for(int i(1); i

         {

             MPI_Status s;

             MPI_Probe(MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_COMM_WORLD, &s);

             int count;

             MPI_Get_count(&s, MPI_CHAR, &count);

             char *buf = new char[count];

             MPI_Recv(buf, count, MPI_CHAR,

                      MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_COMM_WORLD, &s);

             cout << "Message from process " << s.MPI_SOURCE << ": "

                  << buf << endl;

             delete[] buf;

         }

         cout << "Done." << endl;

...

Скачать:   txt (6 Kb)   pdf (416.2 Kb)   docx (68.3 Kb)  
Продолжить читать еще 2 страниц(ы) »
Доступно только на Essays.club