ing 0,5394 time 47 ms2 count 3 fixing - 0,9384 time 47 ms1 count 0 fixing 0,9093 time 0 ms1 count 1 fixing 0,9974 time 62 ms1 count 2 fixing 0,5394 time 62 ms1 count 3 fixing - 0,9384 time 62 ms1 count 4 fixing 0,5476 time 78 ms3 lt; starter gt; 4 lt; starter gt; 0 count 0 fixing 0,9093 time 0 ms0 count 1 fixing 0,9974 time 78 ms0 count 2 fixing 0,5394 time 78 ms0 count 3 fixing - 0 , 9384 time 94 ms0 count 4 fixing 0,5476 time 94 ms2 count 4 fixing 0,5476 time 109 ms3 count 0 fixing 0,9093 time 0 ms3 count 1 fixing 0,9974 time 0 ms3 count 2 fixing 0,5394 time 16 ms3 count 3 fixing - 0,9384 time 16 ms3 count 4 fixing 0,5476 time 16 ms4 count 0 fixing 0,9093 time 0 ms4 count 1 fixing 0,9974 time 0 ms4 count 2 fixing 0,5394 time 0 ms4 count 3 fixing -0,9384 time 16 ms 4 count 4 fixing 0,5476 time 16 ms
Аналіз: Згідно результату 1. видно що виконанні обчислення відбувається за 31 мс, проте при використанні розбиття на 5 потоків ми бачимо що 0,1 і 2 потік занадто сильно запізнюються, а ось 3 і 4 потік виконують обчислення за 16 мс. Таке запізнювання я пов'язую із завантаженістю процесора іншими процесами.
Для об'єктивності проведемо ще пару тестів з іншою кількістю потоків.
Результат 2.
При роботі 3 потоків.
lt; Виконання програми без використання багатопоточності gt;
count 0 fixing: 0,9093 time 0 ms1 fixing: 0,9974 time 15 ms2 fixing: 0,5394 time 62 ms3 fixing: - 0,9384 time 62 ms 4 fixing: 0,5476 time 62 ms
lt; Виконання програми c використанням багатопоточності gt;
Thread 0 lt; starter gt; 1 lt; starter gt; 0 count 0 fixing 0,9093 time 0 ms0 count 1 fixing 0,9974 time 0 ms0 count 2 fixing 0,5394 time 16 ms0 count 3 fixing- 0,9384 time 16 ms0 count 4 fixing 0,5476 time 16 ms1 count 0 fixing 0,9093 time 0 ms1 count 1 fixing 0,9974 time 0 ms1 count 2 fixing 0,5394 time 0 ms1 count 3 fixing - 0,9384 time 0 ms1 count 4 fixing 0,5476 time 16 ms2 lt; starter gt; 2 count 0 fixing 0,9093 time 0 ms2 count 1 fixing 0,9974 time 15 ms2 count 2 fixing 0,5394 time 15 ms2 count 3 fixing - 0, +9384 time 15 ms
Thread 2 count 4 fixing 0,5476 time 15 ms
Згідно результату 2. видно що виконанні обчислення відбувається за 62 мс, якщо розглядати цей результат у зв'язці з попереднім результатом, то видно що, одне і те ж обчислення, відбувається за різний час. Даний результат підтверджує те що на виконання обчислення, впливають інші сторонні процеси, а так само використання не досконалого методу підрахунку часу. Не залежно від не вдосконалюються методу з цього результату видно що при використанні розбиття на 3 потоку значне збільшення швидкості обчислення, всі потоки виконують завдання за 16 мс.
Результат 3.
При роботі 10 потоків.
lt; Виконання програми без використання багатопоточності gt;
count 0 fixing: 0,9093 time 0 ms1 fixing: 0,9974 time 16 ms2 fixing: 0,5394 time 16 ms3 fixing: - 0,9384 time 31 ms 4 fixing: 0,5476 time 31 ms
lt; Виконання програми c використанням багатопоточності gt;
Thread 0 lt; starter gt; 1 lt; starter gt; 0 count 0 fixing 0,9093 time 0 ms0 count 1 fixing 0,9974 time 0 ms0 count 2 fixing 0,5394 time 0 ms0 count 3 fixing- 0,9384 time 0 ms0 count 4 fixing 0,5476 time 16 ms1 count 0 fixing 0,9093 time 0 ms1 count 1 fixing 0,9974 time 0 ms1 count 2 fixing 0,5394 time 15 ms1 count 3 fixing - 0,9384 time 15 ms1 count 4 fixing 0,5476 time 15 ms2 lt; starter gt; 3 lt; starter gt; 4 lt; starter gt; 5 lt; starter gt; 6 lt; starter gt; 7 lt; starter gt; 2 count 0 fixing 0,9093 time 0 ms2 count 1 fixing 0,9974 time 0 ms2 count 2 fixing 0,5394 time 0 ms2 count 3 fixing - 0,9384 time 16 ms2 count 4 fixing 0,5476 time 16 ms3 count 0 fixing 0,9093 time 0 ms3 count 1 fixing 0,9974 time 0 ms3 count 2 fixing 0,5394 time 15 ms3 count 3 fixing - 0,9384 time 15 ms3 count 4 fixing 0,5476 time 15 ms4 count 0 fixing 0,9093 time 0 ms4 count 1 fixing 0,9974 time 16 ms4 count 2 fixing 0,5394 time 16 ms4 count 3 fixing - 0,9384 time 16 ms8 lt; starter gt; 9 lt; starter gt; 7 count 0 fixing 0,9093 time 0 ms7 count 1 fixing 0,9974 time 0 ms7 count 2 fixing 0,5394 time 0 ms7 count 3 fixing - 0,9384 time 0 ms7 count 4 fixing 0,5476 time 16 ms6 count 0 fixing 0,9093 time 0 ms6 count 1 fixing 0,9974 time 16 ms6 count 2 fixing 0, +5394 time 16 ms6 count 3 fixing - 0,9384 time 32 ms6 count 4 fixing 0,5476 time 32 ms4 count 4 fixing 0,5476 time 63 ms8 count 0 fixing 0,9093 time 0 ms8 count 1 fixing 0,9974 time 0 ms8 count 2 fixing 0,5394 time 0 ms8 count 3 fixing - 0,9384 time 16 ms8 count 4 fixing 0,5476 time 16 ms5 count 0 fixing 0,9093 time 0 ms5...