Patent application number | Description | Published |
20110161616 | ON DEMAND REGISTER ALLOCATION AND DEALLOCATION FOR A MULTITHREADED PROCESSOR - A system for allocating and de-allocating registers of a processor. The system includes a register file having plurality of physical registers and a first table coupled to the register file for mapping virtual register IDs to physical register IDs. A second table is coupled to the register file for determining whether a virtual register ID has a physical register mapped to it in a cycle. The first table and the second table enable physical registers of the register file to be allocated and de-allocated on a cycle-by-cycle basis to support execution of instructions by the processor. | 06-30-2011 |
20110219221 | Dynamic warp subdivision for integrated branch and memory latency divergence tolerance - Dynamic warp subdivision (DWS), which allows a single warp to occupy more than one slot in the scheduler without requiring extra register file space, is described. Independent scheduling entities also allow divergent branch paths to interleave their execution, and allow threads that hit in the cache or otherwise have divergent memory-access latency to run ahead. The result is improved latency hiding and memory level parallelism (MLP). | 09-08-2011 |
20120079503 | Two-Level Scheduler for Multi-Threaded Processing - One embodiment of the present invention sets forth a technique for scheduling thread execution in a multi-threaded processing environment. A two-level scheduler maintains a small set of active threads called strands to hide function unit pipeline latency and local memory access latency. The strands are a sub-set of a larger set of pending threads that is also maintained by the two-leveler scheduler. Pending threads are promoted to strands and strands are demoted to pending threads based on latency characteristics. The two-level scheduler selects strands for execution based on strand state. The longer latency of the pending threads is hidden by selecting strands for execution. When the latency for a pending thread is expired, the pending thread may be promoted to a strand and begin (or resume) execution. When a strand encounters a latency event, the strand may be demoted to a pending thread while the latency is incurred. | 03-29-2012 |
20140122509 | SYSTEM, METHOD, AND COMPUTER PROGRAM PRODUCT FOR PERFORMING A STRING SEARCH - A system, method, and computer program product are provided for performing a string search. In use, a first string and a second string are identified. Additionally, a string search is performed, utilizing the first string and the second string. | 05-01-2014 |
20140168228 | FINE-GRAINED PARALLEL TRAVERSAL FOR RAY TRACING - Techniques are disclosed for tracing a ray within a parallel processing unit. A first thread receives a ray or a ray segment for tracing and identifies a first node within an acceleration structure associated with the ray, where the first node is associated with a volume of space traversed by the ray. The thread identifies the child nodes of the first node, where each child node is associated with a different sub-volume of space, and each sub-volume is associated with a corresponding ray segment. The thread determines that two or more nodes are associated with sub-volumes of space that intersect the ray segment. The thread selects one of these nodes for processing by the first thread and another for processing by a second thread. One advantage of the disclosed technique is that the threads in a thread group perform ray tracing more efficiently in that idle time is reduced. | 06-19-2014 |
20140168238 | FINE-GRAINED PARALLEL TRAVERSAL FOR RAY TRACING - Techniques are disclosed for tracing a ray within a parallel processing unit. A first thread receives a ray or a ray segment for tracing and identifies a first node within an acceleration structure associated with the ray, where the first node is associated with a volume of space traversed by the ray. The thread identifies the child nodes of the first node, where each child node is associated with a different sub-volume of space, and each sub-volume is associated with a corresponding ray segment. The thread determines that two or more nodes are associated with sub-volumes of space that intersect the ray segment. The thread selects one of these nodes for processing by the first thread and another for processing by a second thread. One advantage of the disclosed technique is that the threads in a thread group perform ray tracing more efficiently in that idle time is reduced. | 06-19-2014 |
20140240329 | GRAPHICS PROCESSING UNIT WITH A TEXTURE RETURN BUFFER AND A TEXTURE QUEUE - A processor and a system are provided for performing texturing operations. The processor includes a texture return buffer having a plurality of slots for storing texture values and one or more texture units coupled to the texture return buffer. Each of the slots of the texture return buffer are addressable by a thread. Each texture unit is configured to allocate a slot of the texture return buffer when the texture unit generates a texture value. | 08-28-2014 |
Patent application number | Description | Published |
20120179958 | Mapping a Third-Party Web Page to an Object in a Social Networking System - A social networking system includes a mechanism for customizing display of content from an external web page. Nodes associated with a web page are included in the social graph based on one or more tags included in a web page, which contain meta-information for defining the node in the social networking system, such as the type of the node. The social networking system retrieves the tags from the markup language document and stores their information in connection with the node for the web page while using the tags to identify a template that describes display of content from the web page. The template may include user interface elements for receiving input, allowing a user to interact with a node in the social graph associated with the web page, allowing user interactions with the web page content to be tracked by and reflected back within the social networking system. | 07-12-2012 |
20130073632 | STRUCTURED OBJECTS AND ACTIONS ON A SOCIAL NETWORKING SYSTEM - A social networking system includes a mechanism for integrating user actions on objects outside of the social networking system in the social graph. External system operators include widgets that, when executed by user devices, record user interactions that correspond to a defined structure of actions and objects. Third party operators utilize a tool provided by the social networking system to define the structure of actions and objects. External actions are recorded by the social networking system for publishing to the social graph. | 03-21-2013 |
20130073983 | INTEGRATING STRUCTURED OBJECTS AND ACTIONS GENERATED ON EXTERNAL SYSTEMS INTO A SOCIAL NETWORKING SYSTEM - A social networking system includes a mechanism for integrating user actions on objects outside of the social networking system in the social graph. For example, streaming music on external systems may be integrated into the user experience on the social networking system. Third-party developers, in addition to administrators of the social networking system, may define objects and actions that enable integration of external music sources to be played and controlled using the social networking system while also providing socially relevant information to other users of the social networking system. Actions and objects recorded from these external user interactions are structured to enable aggregation and structured querying, which enables data visualizations of the information discoverable on the social graph. In this way, interesting information about users' actions outside of the domain of the social networking system may be shared and compared with other users on the social networking system. | 03-21-2013 |
Patent application number | Description | Published |
20130073280 | DYNAMIC SENTENCE FORMATION FROM STRUCTURED OBJECTS AND ACTIONS IN A SOCIAL NETWORKING SYSTEM - A social networking system includes a mechanism for integrating user actions on objects outside of the social networking system in the social graph. External system operators include widgets that, when executed by user devices, record user interactions that correspond to a defined structure of actions and objects. Third party operators utilize a tool provided by the social networking system to define the structure of actions and objects, verb tenses of action types, and noun forms object types. External actions are recorded by the social networking system for publishing to the social graph in dynamically generated sentences formed using the structure of the actions and objects. | 03-21-2013 |
20130073979 | TOOL FOR CREATING STRUCTURED OBJECTS AND ACTIONS ON A SOCIAL NETWORKING SYSTEM - A social networking system includes a mechanism for integrating user actions on objects outside of the social networking system in the social graph. External system operators include widgets that, when executed by user devices, record user interactions that correspond to a defined structure of actions and objects. Third party operators utilize a tool provided by the social networking system to define the structure of actions and objects. External actions are recorded by the social networking system for publishing to the social graph. | 03-21-2013 |
20130151605 | Call-Termination-Triggered Social Interface - Methods and systems directed to a call-termination triggered social interface that leverages information associated with an incoming phone number for display to a user of a mobile device post-call and permits the user to conveniently issue commands to the mobile device or social networking system to take specific actions for the number or entity associated with the number on the social network. | 06-13-2013 |
20130318434 | TEMPLATE SELECTION FOR MAPPING A THIRD-PARTY WEB PAGE TO AN OBJECT IN A SOCIAL NETWORKING SYSTEM - A social networking system includes a mechanism for customizing display of content from an external web page. Nodes associated with a web page are included in the social graph based on one or more tags included in a web page, which contain meta-information for defining the node in the social networking system, such as the type of the node. The social networking system retrieves the tags from the markup language document and stores their information in connection with the node for the web page while using the tags to identify a template that describes display of content from the web page. The template may include user interface elements for receiving input, allowing a user to interact with a node in the social graph associated with the web page, allowing user interactions with the web page content to be tracked by and reflected back within the social networking system. | 11-28-2013 |