Alterna · учебный материал
Ganta图示和规划
详细审查Ganta图、组装处理、程序规划。 50 EGE任务22, 附有解决方案。交互式模拟。
Что в этом материале
- 甘塔的图表是什么?
- 电话处理
- 任务之间的关系
- 《阿姆达尔法》
- 实施《关于两性平等的第22号决定的战略》
- Gant 图像模拟器
- Conveyer 计算计算器
- EGE第22号任务银行
Содержание и основные понятия
返回目录
第7章 第7页 第7.2页
Ganta图示和规划
您如何在处理器之间分担任务, 以便所有事情都能更快地完成?
Ganta 图表
这是一个直观的方式 显示处理器在每一个时间点 做什么。
第22号《EGE》对流程规划、组装处理、依赖性图表和Audal法提出了挑战,将教授每种类型的决定。
· 深化全环基金
EGE 第22号
01
甘塔的图表是什么?
处理器任务时间表的可视化
EGE 第22号
定义定义定义的定义定义定义 定义的定义的定义定义的定义
Ganta 图表
是一个水平时间尺度,其中每行代表一个处理器(或资源),而颜色块则显示每个时间点的任务是什么。
简单示例
因此,我们假设有三个独立的进程:
A = 5 с
,
B = 3 с
,
C = 4 с
和两个处理器。
备选案文1:
P1={A(5),C(4)}=9秒,P2={B(3)}=3秒。
9秒9秒
.
备选2:
P1={A(5)}=5秒,P2={B(3),C(4)}=7秒。
7 s 7s
.
备选3:
P1 = {A(5),B(3)} = 8 秒,P2 ={C(4)} 等于 4 秒。总时间 =
8 s 8 s
.
规 规则规则规则细则规则规则条规则规则 规则细则细则细则规则细则第细则规则条的规则规则规则,规则规则的规则规则条细则规则 细则细则条规则细则或细则规则的规则细则规则或规则规则第细则细则的规则规则细则 细则规则第规则规则或细则细则 规则的规则 规则条 细则条细则细则第规则细则条的规则细则细则条规则规则规则规规则细则的规则 细则的规则的规则规则 规则 的规则规则的规则的规则细则 第细则条 规则条规则规则细则条规则细则规则条规则细则细则
优化排程最小化
最大
装入任何处理器( makespan) 的时间 。
较低估计数(得分较低)
最低限度可用时间不得少于:
⌈Сумма всех времён / N⌉
- 如果下载是完全均衡的。
max(время одного процесса)
- 无法将最长的过程分开
例如:*12/2~=6,最大=5。 下限估计数=最大(6)(5)=
6
但不可能达到6-- 最好的选择是7。
决定算法
1. 计算所有时间和较低估计数的数额。
2. 尽量分配任务,以便尽可能做到负载。
3. 从最长的流程开始,这些流程更难“上载”。
4. 检查:如果 manspan = 较低估计数,肯定最佳。
贪婪算法(LPT - 最长久处理时间第一)
选择时间损失的过程。 下一个过程应该指定给先释放的处理器。 这并不总是最优化的, 但通常更接近 。
P1:
P2:
A(5(c))
B (3(c))
C (4c)
0
2
4
6
8 s 8 s
P1={A}=5秒,P2={B,C}=7秒
图1
Ganta 图: A(5)、B(3)、C(4) 关于2个处理器的最佳时间表
02
电话处理
如何通过在阶段中断任务来加快处理速度
EGE 第22号
传送者的想法
而不是处理所有命令的全部 然后采取下一个命令, 我们打破处理到
阶段阶段
只要一个小组通过第二阶段,下一个小组就已经进入第一阶段。
类似的情况是,工厂的传送器,当一辆车被油漆,另一辆车正在油漆时,第三辆车正在进行质量控制。
密钥公式
话话话公式
T = Σtᵢ + (n − 1) · max(tᵢ)
此处:
Σtᵢ
- 所有阶段(第一小组时间)的总和
max(tᵢ)
- 最慢的阶段(“狭点”)时间
n
- 团队数量
为什么?
第一命令必须按顺序贯穿所有阶段:它需要
Σtᵢ
然后每个下一个命令每隔一段时间发出一次。
max(tᵢ)
- 因为传送器不能制造更多的团队 比最慢的阶段工作。
示例示例示例
3级传送器:2毫秒、4毫秒和3毫秒。
Σtᵢ = 2 + 4 + 3 =
9毫秒
(第一组)
max(tᵢ) =
4 n秒
(第2阶段是一个狭窄的空间)
另外7个命令:7x4=
28 毫秒
共计:9+28=
37 毫秒
与一致执行的比较
无传送器: 8 命令 x(2+4+3) = 8 x 9 =
72毫秒
.
与传道者:
37 毫秒
一. 加快速度:72/37
1.95次
.
命令越大,加速度越接近阶段数(但不会超过阶段数)。
私人案件:所有阶段都是相同的
如果全部
k
阶段很长。
t
ns,公式简化如下:
T = (k + n − 1) · t
示例: 1 ns 5 级, 100 命令 t = (5+ 100-1)x 1 =
104毫秒
.
逆向任务
"有多少团队会为T's工作?" "从公式中说:
n = (T − Σtᵢ) / max(tᵢ) + 1
(四舍五入)
03
任务之间的关系
当任务不能任意执行时
EGE 第22号
扶养人数(DAG)
挑战往往是:任务B在任务A完成之前无法启动。
以自行车为方向的图
(DAG).
A → B
表示 B 取决于 A, B 不在 A 完成之前开始。
关键路径
关键路径
- 图表中从开始到结束最长的路线。
最低
整个工程的时机 即使我们有很多处理器
查找关键路径的算法
1. 计算每项任务
早期开始时间。
:
步数( X) = 最大( 全部 Y x X 的 Finish( Y) )
芬兰(X) = 开始(X)、 + 时间(X)。
2. 对于开办任务(无依赖性):启动=0。
3. 反应=最大(所有X为finish(X))。
示例示例示例
任务:A(3)、B(2)、C(4)、D(5)、E(2)。
A(3)
B(2)
C(4)
D(5)
E(2)
图2
依赖性图:A.C.和B.D.E.
决定:
A: start=0, finish=3
B: start=0, finish=2
C:开始=3(等待A),最后=3+4=7
D: 开始=2(等待B),芬兰语=2+5=7
E: 开始=最大( 7. 7)=7( 等待C和D), 芬兰=7+2=
9
关键路径是:A.C.E. = 3+4+2 = 9 (或 B.D.E = 2+5+2=9) 两个轨道长度相同。
典型错误
你不能总是折叠起来!
平行平行
所有时间的总和=3+2+4+5+2=16,但答案是=9。
04
《阿姆达尔法》
为什么无限的内核数量不能提供无限加速
EGE 第22号
公式公式公式
《阿姆达尔法》
S = 1 / ((1 − p) + p / N)
p
- 平行代码(0比1)的份额
N
- 处理器数量
S
-加速度(速度多快)
意义 意思 意思
方案部分
(1 − p)
- 一致,它不能加速 任何数个内核, 它总是在时间做。
p
加速计算
N
一个...
实例实例实例
(第18段)
内核
加速 S
评注评注评注 评注
80%
4
2.5
在4个内核中,2.5×
90%
10
5.3
10个仅核5.3x
99%
100
≈50
100 核仅 50x
50%
1000
≈2
1000 内核和加速度仅 2x
理论限制
在N:
S_max = 1 / (1 − p)
如果代码的90%是平行的,最大加速度=1/0.1=
10 次
即使有百万个内核。
答案是 你需要多少内核?
加速度S,分数p. 找N.
N = p / (1/S − (1−p))
示例:p=0.9,S=4.N=0.9/0.9/0.9-0.1=0.90.15=0.99.15
6个内核
.
05
实施《关于两性平等的第22号决定的战略》
每种任务和算法的四种任务和计算法
第1类:独立程序的分布
阿尔格瑞特姆
1. 查找所有时间的总和和以及总和/n的较低估计数。
2. 对损失过程表示歉意。
3. 将其从最长的向最小装货的传播。
4. 反应=范围(最大负荷)。
第2类:集装箱
阿尔格瑞特姆
1. 找出阶段和最大(最高)(最)(最)(最)的合计数(狭小的地点)。
2. 应用公式:T = \ti + (n-1) /max(ti)。
3. 逆数: n = \ (T -ti) / 最大(ti)\ + 1。
类型 3 : 依赖性( 关键路径)
阿尔格瑞特姆
1. 列出成瘾者名单。
2. 每项任务:开始=所有前身的最大(完成),芬兰语=开始+时间。
3. 初步目标:步骤=0。
4. 反应=最大值。
类型4:《安非他明法》
阿尔格瑞特姆
1. 确定p(平行代码的一部分)和N(内核数量)。
2. 设定:S=1 /((1 - p)+p/N)。
3. 限额:S_max = 1 / (1-p)。
4. 倒数: N = p / (1/S - 1 - p)。
EGE 陷阱
• “不可依赖的流程”~“依赖的”——仔细阅读条件。
• Conveyer:\\ti是时间
第一次
一个团队,一个阶段都没有
· 依赖性:你不能总和 -- -- 平行分支不能总和。
• 安达尔:p是份额
平行平行
这是一个代码,而不是一个序列。
📊
Gant 图像模拟器
输入过程和处理器数量
插数
通过小数点输入试验时间,并指定处理器的数量。模拟器将构建最佳甘特图。
加工(按逗号):
加工者:
⚙️
Conveyer 计算计算器
公式 T = \ ti + (n-1- max(ti))
插数
输入各个阶段的时间和团队的数量——计算器将显示一个渐进式解决方案。
洞穴阶段(小数点后):
命令数量 :
06
EGE第22号任务银行
50项任务 = 10项随机 □ 混合新一套
EGE 第22号
无法下载任务 。 请确定 gant- tasks. json 文件可用 。
决定:
0
/
10