add table

This commit is contained in:
2025-11-19 16:17:45 +02:00
parent 69d424630c
commit 14d0ef1119

View File

@@ -52,30 +52,41 @@ $ T_1 = 6.48301 (sec) $
Під час виконання програми, були отримані наступні значення:
#figure(
table(
columns: 2,
table.header([$p$], [$T_p$]),
[1], [6.48301],
[2], [3.25753],
[4], [1.66985],
[6], [1.34714],
[8], [1.06098],
[10], [1.18834],
[12], [1.15044],
[14], [1.12474],
[14], [1.09344],
),
#let practical = (
decimal("6.48301"),
decimal("3.25753"),
decimal("1.66985"),
decimal("1.34714"),
decimal("1.06098"),
decimal("1.18834"),
decimal("1.15044"),
decimal("1.12474"),
decimal("1.09344"),
)
Також, було зображенно значення на графіку (@plot[рис.]). Можна побачити, що
#figure(table(
columns: 4,
table.header([$p$], [$T_p$], [$S_p$], [$E_p$]),
..(1, ..range(2, 16 + 1, step: 2))
.zip(practical)
.map(v => {
let (p, prac) = v
let speedup = t1 / prac
let effcy = speedup / p
([$#p$], [$#prac$], [$#(calc.round(speedup, digits: 5))$], [$#(calc.round(effcy, digits: 5))$])
})
.flatten(),
))
Також, було зображенно порівняння замірів на графіку (@plot[рис.]). Можна побачити, що
після того, як значення $p$ досягає чотирьох одиниць, дані практичного і теоретичного
розрахунків розходяться. Скоріш за все, це пов'язано з тим, що цей комп'ютер має
лише чотири фізичних ядра. Тобто, може виконувати лише чотири завдання справді паралельно.
Далі використовуються "потоки",
що означає розділення ресурсів одного фізичного ядра
лише чотири фізичних ядра.
Іншими словами, він може виконувати лише чотири завдання справді паралельно.
Якщо кількість використаних потоків збільшується,
відбувається розділення ресурсів одного фізичного ядра
(наприклад, кеш-пам'яті першого та другого рівня, або просто розділення по часу)
для декількох користувачів.
для декількох користувачів (потоків).
#figure(
image("./plot.png"),