- •Реферат
- •Содержание
- •Список сокращений и терминов
- •Введение
- •Раздел 1. Разработка многопоточных приложений
- •1.1. Потоки и многопоточность
- •1.2. Технология Intel tbb
- •2.2. Алгоритм потока чтения
- •2.3. Алгоритм потока анализа
- •Раздел 3. Принципы реализации программы
- •Раздел 2. Алгоритм программы
- •2.1. Общий алгоритм программы
- •3.1. Диаграмма классов
- •3.2. Основные библиотеки, использованные в программе
- •3.3. Основные функции, использованные в программе
- •Раздел 4. Экспериментальные исследования
- •4.1. Условия эксперимента
- •4.2. Описание эксперимента
- •4.3. Результаты эксперимента
- •4.4. Анализ результатов эксперимента
- •Список использованных источников
Раздел 4. Экспериментальные исследования
4.1. Условия эксперимента
В таблице 1 приведены параметры аппаратного обеспечения и в таблице 2 параметры программного обеспечения.
Таблица 1. Аппаратное обеспечение.
Компьютер |
Описание |
Управляющий компьютер |
CPU: Pentium(R) Dual-Core CPU T4400 @ 2.20GHz RAM: DDR2 2Gb |
Таблица 2. Программное обеспечение.
Компьютер |
Описание |
Управляющий компьютер |
OS: Microsoft Windows 7 Домашняя базовая 32-разрядная ОС |
Было использовано библиотеку Intel TBB 3.0.
В качестве входных данных поступает:
Адрес ресурса, где расположены файлы логов для последующего анализа.
Массив со списком имен файлов логов (табл.3).
Таблица 3. Имена входных файлов и их размер
Директория |
Имя файла |
Размер |
С:\\ |
test1.log |
41,118 Кб |
test2.log |
32,004 Кб |
|
test3.log |
27,038 Кб |
|
test4.log |
60,644 Кб |
|
test5.log |
51,688 Кб |
4.2. Описание эксперимента
Для эксперимента использовалось разное количество потоков чтения и анализа. На вход подавался набор аргументов командной строки вида:
/id:c:\logs\ /if: "test1.log" "test2.log" "test3.log" "test4.log" "test5.log" /tr:3 /ta:5 /o:C:\logs\output.txt.
4.3. Результаты эксперимента
На основе результатов эксперимента было составлено таблицу с временем выполнения анализа для различных конфигураций потоков чтения и анализа (табл.4).
Таблица 4. Время выполнения задания для различных конфигураций потоков чтения и анализа.
Время мин.с,мс |
Поток анализа |
||||||||
Поток чтения |
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
1 |
60,003 |
51,126 |
64,199 |
92,125 |
96,295 |
92,947 |
96,363 |
93,455 |
|
2 |
82,129 |
81,688 |
86,999 |
90,005 |
86,304 |
84,916 |
81,875 |
74,89 |
|
3 |
85,68 |
87,272 |
79,469 |
79,762 |
88,45 |
107,061 |
75,786 |
83,881 |
|
4 |
77,939 |
76,358 |
79,278 |
67,236 |
95,522 |
63,471 |
93,003 |
87,412 |
|
5 |
71,516 |
73,825 |
80,819 |
83,503 |
95,329 |
75,003 |
63,126 |
72,199 |
|
6 |
106,322 |
104,384 |
101,247 |
98,566 |
107,212 |
110,107 |
99,326 |
102,377 |
|
7 |
96,369 |
98,147 |
110,24 |
103,485 |
95,236 |
107,456 |
102,328 |
96,36 |
|
8 |
96,732 |
75,146 |
84,888 |
95,006 |
95,349 |
97,125 |
95,236 |
96,547 |
|
В таблице 5 приведены результаты работы программы с лабораторной рабооты №2, в которой используются встроенные в С# классы для построения многопоточных приложений.
Таблица 5. Время выполнения задания для различных конфигураций потоков чтения и анализа с л.р.№2
Время мин.с,мс |
Поток анализа |
||||||||
Поток чтения |
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
1 |
150,2 |
103,339 |
157,541 |
167,168 |
190,471 |
186,023 |
140,513 |
135,07 |
|
2 |
128,497 |
147,023 |
156,22 |
115,156 |
130,02 |
147,132 |
180,822 |
145,679 |
|
3 |
129,174 |
153,147 |
184,22 |
156,748 |
198,106 |
179,223 |
197,13 |
199,02 |
|
4 |
157,23 |
198,565 |
174,023 |
166,123 |
178,32 |
165,131 |
178,658 |
196,332 |
|
5 |
184,088 |
196,023 |
190,102 |
171,615 |
136,236 |
199,123 |
179,123 |
156,698 |
|
6 |
174,322 |
152,384 |
141,247 |
105,123 |
185,212 |
196,107 |
109,326 |
189,277 |
|
7 |
196,023 |
198,562 |
160,334 |
143,654 |
195,236 |
185,456 |
133,328 |
106,36 |
|
8 |
180,36 |
175,113 |
192,365 |
172,143 |
195,001 |
165,325 |
102,536 |
187,102 |
|
