-
公开(公告)号:US06973650B1
公开(公告)日:2005-12-06
申请号:US09436618
申请日:1999-11-09
CPC分类号: G06F9/4843
摘要: A system for pipelined processing of program data uses a series of servers. A server is an event loop optimized for performing a particular task in the overall program. Servers perform their respective tasks in response to receiving work packets. A work packet is a data structure containing the data needed to perform that task. Each server has a queue of pending work packets. When there are work packets in a server's queue, the server performs the required function using the user context data contained in the packet, and may generate a reply code when complete. A server may run on a single CPU until all work packets in its queue have been processed, or it may also be shared among two or more CPUs. Each server performs its designated task for all users and thus, the general effect of this method is that each CPU performs a single task for all users, thereby insuring that the global context state for each task tends to remain in the cache of the CPU performing that task.
摘要翻译: 用于流水线处理程序数据的系统使用一系列服务器。 服务器是针对在整个程序中执行特定任务而优化的事件循环。 服务器响应于接收工作数据包执行各自的任务。 工作包是包含执行该任务所需的数据的数据结构。 每个服务器都有一个待处理的工作包队列。 当服务器队列中存在工作数据包时,服务器使用数据包中包含的用户上下文数据执行所需功能,并在完成后生成回复代码。 一个服务器可以在单个CPU上运行,直到其队列中的所有工作包都被处理,或者也可以在两个或更多个CPU之间共享。 每个服务器为所有用户执行其指定任务,因此,该方法的一般效果是每个CPU为所有用户执行单个任务,从而确保每个任务的全局上下文状态趋于保留在执行CPU的高速缓存中 那个任务。