task-offloading

command module
v0.0.0-...-fe74a4f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 27, 2021 License: Apache-2.0 Imports: 2 Imported by: 0

README

计算卸载模块(TaskOffloading

1 介绍
  • 基于边缘智能网关计算卸载模块
  • 模块轻便灵活,耦合度低,可看做双路输入、单路输出的黑盒,作为微服务部署于docker中,随取随用
  • 使用redis数据库实现任务特征数据存储(TFDB)使用MQTT协议算力网络图模块(CNet)读取网络性能数据使用gRPC协议任务缓存模块(Client)发送计算卸载决策
  • 使用图论算法实现了计算卸载的决策
2 原理
  • 输入网络数据
    • 计算卸载模块需要读取网络性能数据与计算任务数据
    • 网络性能数据:包括每个计算节点的性能数据(计算资源、存储资源与网络资源余量等),计算卸载模块定时从本地的ComNet模块读取并覆盖本地的监控信息
    • 计算任务数据:包括计算任务的特征数据(计算量、输入数据大小、截止期限等),每当有经过活动物体检测模块的计算任务到达计算卸载模块时,计算卸载模块根据任务类型,从计算任务特征数据库读取计算任务的特征信息
  • 执行计算卸载决策
    • 使用计算卸载模块中的时延矩阵函数,计算每组计算任务与计算节点间的最低处理时延
    • 使用计算卸载模块中的卸载决策函数,对计算任务与计算节点的匹配进行决策
  • 计算卸载决策结果回传
    • 将计算卸载决策回传给缓存计算任务的客户端,由先前建立的连接将计算卸载决策结果(目标节点的IP地址)发回任务缓存模块(Client),Client根据IP地址,将计算任务的输入数据发送至指定的计算节点
3 算法

$$f(M[W,D,T],N[F,C,E])\rightarrow map(键值对集合)$$

  • 时延矩阵函数 $$f_1(M[W,D,T],N[F,C,E])\rightarrow matrix(最优时延矩阵)$$
    • 输入:计算任务数据($M$组)、网络性能数据($N$组)
    • 输出:最优时延矩阵($M\times N$阶)
    • 函数功能:以时延最低作为优化目标,求出每个计算任务分配给每个节点应分配的最佳资源量,并求出此时每个计算任务分配给每个节点的时延
  • 卸载决策函数 $$f_2(matrix)\rightarrow map(键值对集合)$$
    • 输入:网络性能数据($N$组)、最优时延矩阵($N\times N$阶)
    • 输出:计算卸载决策结果(键值对)
    • 函数功能:将最佳资源量矩阵看作一个加权二部图的邻接矩阵,使用图论算法求出最优的计算卸载决策
4 贡献
  • Fork 本仓库
  • 新建 to_xxx 分支
  • 提交代码
  • 新建 Pull Request

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL