【发布时间】:2012-01-09 17:26:06
【问题描述】:
我们正在为异构计算做一个调度器。
任务可以通过它们的截止日期和它们的数据速率来识别,并且可以被视为一个二维图。见图片:
矩形标识要在 GPU 上调度的任务,以及要在 CPU 上调度的外部任务。
问题是我们想要有效地识别用于创建最佳矩形的参数。 IE。包含大多数任务的矩形。可以假定存在确定是否可以将点添加到当前矩形的函数。
最多可以有 20.000 个(点)任务,并且轴可以是任意长度
是否有任何已知的算法/数据结构可以解决这个问题?
【问题讨论】:
-
还有什么标准可以判断出一个好的矩形吗?如果它只是“包含最多的任务”,那么最好的矩形是包含所有 20,000 个点的矩形。
-
有一些资源限制(任务集是否可以调度)。确定点是否可以添加到矩形的函数表明了这种关系。
-
在二维空间中绘制它并且没有任何标准来确定任务最适合哪个设备,这很奇怪。我认为空间会有一条线或曲线将其划分为 2 个区域,而决定将是如何移动该线。你画了一个盒子,得到一个二进制结果来进行一些评估......
-
我们只假设一个 CPU / GPU 配置,其中矩形内的所有内容都将在 GPU 上调度,其余的在 CPU 上。有一些因素会考虑 GPU 与 GPU 上的执行速度。该场景描述了数据流的异构实时调度。
标签: algorithm partitioning partition-problem