首页> 外国专利> System for ascertaining task off-load capabilities of a device and enabling selected capabilities and when needed selectively and dynamically requesting the device to perform the task

System for ascertaining task off-load capabilities of a device and enabling selected capabilities and when needed selectively and dynamically requesting the device to perform the task

机译:用于确定设备的任务卸载功能并启用所选功能以及在需要时有选择地动态请求设备执行任务的系统

摘要

The present invention is directed to a method and computer program product for offloading specific processing tasks that would otherwise be performed in a computer system's processor and memory, to a peripheral device, or devices, that are connected to the computer. The computing task is then performed by the peripheral, thereby saving computer system resources for other computing tasks and increasing the overall computing efficiency of the computer system. In one preferred embodiment, the disclosed method is utilized in a layered network model, wherein computing tasks that are typically performed in network applications are instead offloaded to the network interface card (NIC) peripheral. An application executing on the computer system first queries the processing, or task offload capabilities of the NIC, and then selectively enables those capabilities that may be subsequently needed by the application. The specific processing capabilities of a NIC are made available by creating a task offload buffer data structure, which contains data indicative of the processing capabilities of the corresponding NIC. Once an application has discerned the capabilities of a particular NIC, it will selectively utilize any of the enabled task offload capabilities of the NIC by appending packet extension data to the network data packet that is forwarded to the NIC. The device driver of the NIC will review the data contained in the packet extension, and then cause the NIC to perform the specified operating task(s). This offloading of computing tasks on a per-packet basis allows an application to selectively offload tasks on a dynamic, as-needed basis. As such, applications executing on the computer system processor are able to offload tasks in instances where it is busy processing other computing tasks and processor overhead is high. Multiple tasks can also be offloaded in batches to a particular peripheral.
机译:本发明针对一种方法和计算机程序产品,该方法和计算机程序产品用于将否则将在计算机系统的处理器和存储器中执行的特定处理任务卸载至连接至该计算机的一个或多个外围设备。然后由外围设备执行计算任务,从而节省了计算机系统用于其他计算任务的资源,并提高了计算机系统的整体计算效率。在一个优选实施例中,所公开的方法用于分层网络模型中,其中,通常将在网络应用中通常执行的计算任务卸载到网络接口卡(NIC)外围设备中。在计算机系统上执行的应用程序首先查询NIC的处理或任务卸载功能,然后有选择地启用该应用程序随后可能需要的那些功能。通过创建任务卸载缓冲区数据结构来提供NIC的特定处理能力,该任务数据结构包含指示相应NIC的处理能力的数据。一旦应用程序识别了特定NIC的功能,它将通过将数据包扩展数据附加到转发到NIC的网络数据包中,来选择性地利用NIC的任何已启用任务卸载功能。 NIC的设备驱动程序将检查数据包扩展中包含的数据,然后使NIC执行指定的操作任务。基于数据包的计算任务分流使应用程序可以根据需要动态地有选择地分流任务。这样,在计算机系统处理器上执行的应用程序能够在忙于处理其他计算任务并且处理器开销很高的情况下卸载任务。也可以将多个任务分批卸载到特定外围设备。

著录项

相似文献

  • 专利
  • 外文文献
  • 中文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号