Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пояснительная записка Гуцу Олег.docx
Скачиваний:
5
Добавлен:
21.09.2019
Размер:
2.32 Mб
Скачать
      1. Расчет затрат по эксплуатации лабораторного комплекса.

При использовании компьютерного класса из 14 компьютеров 24 часа в год, расходы на электроэнергию составят:

3.62*14*24=1216 руб./год

При использовании части узлов кластера МИИТ Т-4700 3 часа в год получим:

142*3=428 руб./год

Итого затраты на электроэнергию 1644 руб./год.

      1. Расчёт эффективности разработки.

Следует учесть, что рассчитанный показатель ЭУОТ является далеко не главным показателем эффективности данной разработки. Самое главное в лабораторном комплексе это то, что он повысит уровень подготовки студентов кафедры АСУ, поможет выпускникам быть более востребованными и конкурентоспособными на рынке труда. Этот показатель представить в денежном выражении не представляется возможным.

Рассчитаем эффективность разработки:

, где

СТТ - текущие затраты при традиционной технологии,

СН - текущие затраты при новой технологии,

КАВТ – затраты на автоматизацию (разработку проекта).

СТТ Н, рассчитан в пункте 3.1. =52 789 руб.

КАВТ=22536 руб. + 1644 руб. за первый год эксплуатации.

Е=52 789 / 24180=2.19

  1. Список источников

  1. Статья «Кластер» | Wikipedia

http://ru.wikipedia.org/wiki/%D0%9A%D0%BB%D0%B0%D1%81%D1%82%D0%B5%D1%80_(%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BE%D0%B2)

  1. В.П. Гергель. «Высокопроизводительные вычисления для многоядерных многопроцессорных систем». Нижний Новгород – 2010.

  2. Статья «MPI» | Wikipedia

http://ru.wikipedia.org/wiki/Message_Passing_Interface

  1. Статья «MPICH и Windows» | Image Processing

http://iproc.ru/programming/mpich-windows/

  1. Статья «Суперкомпьютер МИИТ Т-4700»

http://miit.ru/content/130385.pdf?id_wm=130385

  1. Сайт загрузок MPICH2 Аргоннской Национальной Лаборатоории

http://​www.​mcs.​anl.​gov/​research/​projects/​mpich2/​downloads/​index.php?​s=downloads

  1. Центр загрузок Microsoft Corp.

http://www.microsoft.com/en-us/download/default.aspx

  1. В.С. КИМ. «Тестирование учебных достижений». Монография. Уссурийск – 2007. Глава 5.

  2. Статья «Использование Теории тестовых заданий (Item Response Theory) в адаптивном тестировании»

http://www.wikiznanie.ru/ru-wz/index.php/%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D1%85_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D0%B9_(Item_Response_Theory)_%D0%B2_%D0%B0%D0%B4%D0%B0%D0%BF%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D0%BC_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8

  1. «Система пакетной обработки заданий Torque. Руководство пользователя.» Т-Платформы – 2008

  2. З.А. Крепкая. «CASE-Средства проектирования информационных систем на железнодорожном транспорте на основе структуроного и объектно-ориентированного подходов. Часть 2. Унифицированный язык моделирования UML. CASE-средства объектно-ориентированного проектирования IBM Rational Rose» . Москва – 2008.

  1. Приложения

    1. Приложение 1. Листинг разработанного по

      1. Листинг программы Интерфейс для mpich

        1. Project1.cpp

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

//---------------------------------------------------------------------------

USEFORM("Unit1.cpp", Form1);

//---------------------------------------------------------------------------

WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)

{

try

{

Application->Initialize();

Application->CreateForm(__classid(TForm1), &Form1);

Application->Run();

}

catch (Exception &exception)

{

Application->ShowException(&exception);

}

catch (...)

{

try

{

throw Exception("");

}

catch (Exception &exception)

{

Application->ShowException(&exception);

}

}

return 0;

}

//---------------------------------------------------------------------------

        1. Unit1.h

//---------------------------------------------------------------------------

#ifndef Unit1H

#define Unit1H

//---------------------------------------------------------------------------

#include <Classes.hpp>

#include <Controls.hpp>

#include <StdCtrls.hpp>

#include <Forms.hpp>

#include <Grids.hpp>

#include <ExtCtrls.hpp>

#include <Menus.hpp>

#include <Dialogs.hpp>

//---------------------------------------------------------------------------

class TForm1 : public TForm

{

__published: // IDE-managed Components

TButton *Button1;

TButton *Button2;

TButton *Button3;

TStringGrid *StringGrid1;

TButton *Button4;

TEdit *Edit1;

TEdit *Edit2;

TEdit *Edit3;

TEdit *Edit4;

TEdit *Edit5;

TGroupBox *GroupBox1;

TCheckBox *CheckBox1;

TLabel *Label1;

TLabel *Label2;

TLabel *Label3;

TLabel *Label4;

TLabel *Label5;

TLabel *Label6;

TLabel *Label7;

TMainMenu *MainMenu1;

TMenuItem *N1;

TMenuItem *N2;

TMenuItem *N3;

TMenuItem *N4;

TMenuItem *N5;

TSaveDialog *SaveDialog1;

TOpenDialog *OpenDialog1;

void __fastcall Button3Click(TObject *Sender);

void __fastcall Button1Click(TObject *Sender);

void __fastcall Button2Click(TObject *Sender);

void __fastcall Button4Click(TObject *Sender);

void __fastcall FormCreate(TObject *Sender);

void __fastcall CheckBox1MouseUp(TObject *Sender,

TMouseButton Button, TShiftState Shift, int X, int Y);

void __fastcall N5Click(TObject *Sender);

void __fastcall N4Click(TObject *Sender);

void __fastcall N3Click(TObject *Sender);

void __fastcall N2Click(TObject *Sender);

private: // User declarations

public: // User declarations

__fastcall TForm1(TComponent* Owner);

};

//---------------------------------------------------------------------------

extern PACKAGE TForm1 *Form1;

//---------------------------------------------------------------------------

#endif

        1. Unit.cpp

//---------------------------------------------------------------------------

#pragma hdrstop

#include "Unit1.h"

#include <vcl.h>

#include <fstream.h>

#include <string.h>

#include <math.h>

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{

String command;

//command= " ";

command="\""+Edit1->Text+"\" -hosts " +(StringGrid1->RowCount-1)+" ";

for (int i=1;i<StringGrid1->RowCount;i++){

command=command+ StringGrid1->Cells[0][i]+" ";

command=command+ "8 ";

}

command=command+" -noprompt "+ Edit4->Text+" "+Edit5->Text;

system(command.c_str());

ifstream f(Edit5->Text.c_str());

char str[5];

for(int i=1;i<StringGrid1->RowCount;i++)

{

f.getline(str,100);

StringGrid1->Cells[1][i]=str;

}

f.close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

StringGrid1->RowCount++;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

if(StringGrid1->Row==0)StringGrid1->Row++;

if(StringGrid1->RowCount>2){

for(int i=StringGrid1->Row;i<StringGrid1->RowCount-1;i++)

StringGrid1->Rows[i]= StringGrid1->Rows[i+1];

StringGrid1->RowCount--;}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button4Click(TObject *Sender)

{

Edit3->Text="";

Edit3->Text="\""+Edit1->Text+"\" -hosts " +(StringGrid1->RowCount-1)+" ";

for (int i=1;i<StringGrid1->RowCount;i++){

Edit3->Text=Edit3->Text+ StringGrid1->Cells[0][i]+" ";

Edit3->Text=Edit3->Text+ StringGrid1->Cells[1][i]+" ";

}

Edit3->Text=Edit3->Text+"-noprompt "+ Edit2->Text;

system(Edit3->Text.c_str());

}

//---------------------------------------------------------------------------

void __fastcall TForm1::FormCreate(TObject *Sender)

{

StringGrid1->Cells[0][0]="IP-адреса или имена узлов";

StringGrid1->Cells[1][0]="Число процессов";

}

//---------------------------------------------------------------------------

void __fastcall TForm1::CheckBox1MouseUp(TObject *Sender,

TMouseButton Button, TShiftState Shift, int X, int Y)

{

if (CheckBox1->State==cbUnchecked) {

Edit4->Enabled=false;

Edit5->Enabled=false;

Button3->Enabled=false;

Label1->Enabled=false;

Label2->Enabled=false;

}else {

Edit4->Enabled=true;

Edit5->Enabled=true;

Button3->Enabled=true;

Label1->Enabled=true;

Label2->Enabled=true;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N5Click(TObject *Sender)

{

SaveDialog1->Execute();

if (SaveDialog1->FileName!="")

{

ofstream s( SaveDialog1->FileName.c_str());

s<<Edit1->Text.c_str()<<"\n";

s<<Edit2->Text.c_str()<<"\n";

s<<Edit3->Text.c_str()<<"\n";

s<<Edit4->Text.c_str()<<"\n";

s<<Edit5->Text.c_str()<<"\n";

s<<StringGrid1->RowCount<<"\n";

for (int i=1;i<StringGrid1->RowCount;i++)

{

s<<StringGrid1->Cells[0][i].c_str()<<"\n";

s<<StringGrid1->Cells[1][i].c_str()<<"\n";

}

s.close();

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N4Click(TObject *Sender)

{

OpenDialog1->Execute();

if (OpenDialog1->FileName!="")

{

ifstream o( OpenDialog1->FileName.c_str());

char str[100];

o.getline(str,100);

Edit1->Text=str;

o.getline(str,100);

Edit2->Text=str;

o.getline(str,100);

Edit3->Text=str;

o.getline(str,100);

Edit4->Text=str;

o.getline(str,100);

Edit5->Text=str;

o.getline(str,100);

StringGrid1->RowCount=StrToInt(str);

for (int i=1;i<StringGrid1->RowCount;i++)

{

o.getline(str,100);

StringGrid1->Cells[0][i]=str;

o.getline(str,100);

StringGrid1->Cells[1][i]=str;

}

o.close();

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N3Click(TObject *Sender)

{

Form1->Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N2Click(TObject *Sender)

{

MessageBox(NULL,"Программа Интерфейс для MPICH\n для запуска MPI-программ","О прогамме",MB_OK);

}

//---------------------------------------------------------------------------