Abstract:
The invention features a method of reducing perceived network latency in processing a query from a handheld client device processed by a remote system. The client device receives incremental input including a sequence of incremental user actions for identifying content items on the remote system. The client device transmits a first subsequence of the input to the remote system for incrementally identifying descriptive terms associated with desired content items. The remote system selects a first set of content items based on the first subsequence and transmits them in a reply to the client device. The client device selects a second set of content items from the first set based on a second subsequence of the input. The second subsequence includes incremental input received by the client device while it was waiting for the first reply. The client device orders and presents the second set of content items to the user.
Abstract:
A system uses a proxy server to authenticate a client with an authentication protocol that does not support caching. Rather than cache the client's authentication credentials, or access a client account manager for each network request generated by the client, the proxy server issues a cookie to an authenticated client and authenticate the client for subsequent request on the basis of the cookie.
Abstract:
A superscalar processor includes a central scheduler for multiple execution units. The scheduler presumes operations issued to a particular execution unit all have the same latency, e.g., one clock cycle, even though some of the operations have longer latencies, e.g., two clock cycles. The execution unit that executes the operations having with longer than expected latencies, includes scheduling circuitry that holds up particular operation pipelines when operands required for the pipelines will not be valid when the scheduler presumes. Accordingly, the design of the scheduler can be simplified and can accommodate longer latency operations without being significantly redesigned for the longer latency operations.
Abstract:
A method of and system for presenting enriched video viewing analytics is presented. A method of presenting enriched statistical and analytical information includes receiving a catalog of a plurality of content items. Each content item has associated metacontent characterizing the content item. The method also includes receiving and storing operations of a user for interacting with one or more of the content items. The method further includes determining use and/or viewing statistics for, for example, the content items, metacontent associated with the content items, the numbers and types of devices viewing the content items, subscriber information, household information, and/or viewer demographic information for past and present time periods. The method also, optionally, includes estimating the likelihood of future user interaction operations.
Abstract:
A system uses a proxy server to authenticate a client with an authentication protocol that does not support caching. Rather than cache the client's authentication credentials, or access a client account manager for each network request generated by the client, the proxy server issues a cookie to an authenticated client and authenticate the client for subsequent request on the basis of the cookie.
Abstract:
A software framework configured to execute in a computer system and adapted to monitor statistics associated with one or more servers coupled to the computer system is disclosed. A data structure is configured to store statistics associated with the one or more servers coupled to the computer system. A server-monitoring thread is configured to update at least some of the statistics stored in the data structure, the server-monitoring thread to execute on a processor of the computer system. An application programming interface (API) responsive to a plurality of software modules executes in the computer system, the API is configured to process requests from the plurality of software modules for (i) adding or removing servers in the data structure or (ii) accessing statistics from the data structure. The computer system may be a network cache.
Abstract:
Web server and Web cache operations to permit efficient user authorization and cross-domain authentication without repeated login requirements are described. Techniques to prevent unauthorized use of protected resources are also discussed.
Abstract:
A novel software framework monitors server statistics for a plurality of software modules and makes its collected statistics available to those modules. Unlike prior implementations, the framework provides shared server-monitoring code through which the plurality of software modules can monitor various types of servers, such as authentication servers, ICAP servers, origin servers, hierarchical proxy servers and so forth. Because the same server-monitoring code is accessed by each of the software modules, the overall amount of code that is written, compiled and executed may be reduced. Moreover, the shared server-monitoring code is not protocol-dependant and therefore may be coded outside of the kernel-level protocol engines. Preferably, the shared server-monitoring code is implemented as a user-level thread or process.
Abstract:
A multimedia execution unit configured to perform vectored floating point and integer instructions. The execution unit may include an add/subtract pipeline having far and close data paths. The far path is configured to handle effective addition operations and effective subtraction operations for operands having an absolute exponent difference greater than one. The close path is configured to handle effective subtraction operations for operands having an absolute exponent difference less than or equal to one. The close path is configured to generate two output values, wherein one output value is the first input operand plus an inverted version of the second input operand, while the second output value is equal to the first output value plus one. Selection of the first or second output value in the close path effectuates the round-to-nearest operation for the output of the adder. The execution unit may be configured to perform vectored addition and subtraction, integer/floating point conversion, reverse subtraction, accumulate, extreme value (minimum/maximum), and comparison instructions.