forked from sevastyan_b/SSPR_25
Added output in README.md
This commit is contained in:
@@ -62,5 +62,27 @@ ThreadPoolExecutor и замерить время его работы
|
||||
{ 89, 67, 45, 8, 3, 4, 1 },
|
||||
{ 25,150, 200, 5, 50, 75, 175 }
|
||||
```
|
||||
## Результаты работы на матрице 5000 на 5000
|
||||
```
|
||||
Время выполнения без потоков: 3728.2977 мс
|
||||
Время выполнения с потоками ThreadExecutor: 1541.1539 мс
|
||||
Время выполнения с потоками ForkJoinPool: 1412.6938 мс
|
||||
```
|
||||
```
|
||||
Время выполнения без потоков: 4043.893 мс
|
||||
Время выполнения с потоками ThreadExecutor: 1624.9124 мс
|
||||
Время выполнения с потоками ForkJoinPool: 1474.203 мс
|
||||
```
|
||||
```
|
||||
Время выполнения без потоков: 3876.2693 мс
|
||||
Время выполнения с потоками ThreadExecutor: 1354.9933 мс
|
||||
Время выполнения с потоками ForkJoinPool: 1433.2023 мс
|
||||
```
|
||||
## Вывод
|
||||
Оба варианта работа с потоками работают в более чем два раза быстрее чем без потоков.
|
||||
Между собой 3 запуска программы показало, что в большинстве случаев ForkJoinPool справляется быстрее, чем
|
||||
ThreadExecutor.
|
||||
Скорее всего это связано с тем, что ForkJoinPool использует тот же принцип "Разделяй и влавствуй",
|
||||
что и сортировка слиянием.
|
||||
|
||||
|
||||
|
||||
@@ -104,14 +104,14 @@ public class Main {
|
||||
ArrayController.parallelSortedTwoDimArr(secondArray);
|
||||
long endTime1 = System.nanoTime();
|
||||
|
||||
System.out.println("Время выполнения с потоками: " + (endTime1 - startTime1) / 1_000_000.0 + " мс");
|
||||
System.out.println("Время выполнения с потоками ThreadExecutor: " + (endTime1 - startTime1) / 1_000_000.0 + " мс");
|
||||
secondArray = null;
|
||||
copyTo(originalArray, thirdArray);
|
||||
originalArray= null;
|
||||
long startTime2 = System.nanoTime();
|
||||
ArrayController.secondParallelSortedTwoDimArr(thirdArray);
|
||||
long endTime2 = System.nanoTime();
|
||||
System.out.println("Время выполнения с ещё потоками: " + (endTime2 - startTime2) / 1_000_000.0 + " мс");
|
||||
System.out.println("Время выполнения с потоками ForkJoinPool: " + (endTime2 - startTime2) / 1_000_000.0 + " мс");
|
||||
thirdArray = null;
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user