AMD Patent Applications

REGION PROBE FILTER FOR DISTRIBUTED MEMORY SYSTEM

Granted: June 22, 2017
Application Number: 20170177484
A probe filter determines whether to issue a probe to at least one other processing node in response to a memory access request, and includes a region probe filter directory, a line probe filter directory, and a controller. The region probe filter directory identifies regions of memory for which at least one cache line may be cached in a data processing system and a state of each region, wherein a size of each region corresponds to a plurality of cache lines. The line probe filter…

METHOD AND SYSTEM FOR USING SOLID STATE DEVICE AS EVICTION PAD FOR GRAPHICS PROCESSING UNIT

Granted: June 22, 2017
Application Number: 20170178275
Described is a method and system for using a solid state device (SSD) as an eviction pad for graphics processing units (GPUs). The method for eviction processing includes a processor that determines when a dedicated memory associated with a GPU and a host memory associated with the processor are congested. The processor sends a content transfer command to the SSD. The SSD initiates a content transfer directly with the dedicated memory associated with the GPU. The GPU transfers the…

METHOD AND APPARATUS FOR PERFORMING INTER-LANE POWER MANAGEMENT

Granted: June 15, 2017
Application Number: 20170168546
A method and apparatus for performing inter-lane power management includes de-energizing one or more execution lanes upon a determination that the one or more execution lanes are to be predicated. Energy from the predicated execution lanes is redistributed to one or more active execution lanes.

METHOD AND APPARATUS FOR TIME-BASED SCHEDULING OF TASKS

Granted: June 8, 2017
Application Number: 20170161114
A computing device is disclosed. The computing device includes an Accelerated Processing Unit (APU) including at least a first Heterogeneous System Architecture (HSA) computing device and at least a second HSA computing device, the second computing device being a different type than the first computing device, and an HSA Memory Management Unit (HMMU) allowing the APU to communicate with at least one memory. The computing task is enqueued on an HSA-managed queue that is set to run on the…

SYSTEM AND METHOD FOR APPLICATION MIGRATION

Granted: June 8, 2017
Application Number: 20170161212
Described is a method and apparatus for application migration between a dockable device and a docking station in a seamless manner. The dockable device includes a processor and the docking station includes a high-performance processor. The method includes determining a docking state of a dockable device while at least an application is running. Application migration from the dockable device to a docking station is initiated when the dockable device is moving to a docked state.…

REDUCING POWER NEEDED TO SEND SIGNALS OVER WIRES

Granted: June 8, 2017
Application Number: 20170163282
Methods and apparatus are described. A method, implemented in a decoder, includes receiving two or more signals from an encoder over two or more respective wires. At least one of the two or more signals includes at least one code that was recoded by the encoder. The decoder receives a recoding table. The recoding table provides a mapping indicating the recoding for each code that was recoded by the encoder in the received two or more signals. The decoder decodes the two or more received…

METHOD AND APPARATUS FOR PERFORMING A PARALLEL SEARCH OPERATION

Granted: May 25, 2017
Application Number: 20170147608
A method and apparatus for performing a search in a processor-in-memory (PIM) system having a first processor and at least one memory module includes receiving one or more images by the first processor. The first processor sends a query for a search of memory for a matching image to the one or more images to at least one memory module, which searches memory in the memory module, in response to the received query. The at least one memory module sends the results of the search to the first…

EFFICIENT PROCESSOR LOAD BALANCING USING PREDICATION

Granted: May 18, 2017
Application Number: 20170139748
A system and methods embodying some aspects of the present embodiments for efficient load balancing using predication flags are provided. The load balancing system includes a first processing unit, a second processing unit, and a shared queue. The first processing unit is in communication with a first queue. The second processing unit is in communication with a second queue. The first and second queues are each configured to hold a packet. The shared queue is configured to maintain a…

METHOD AND SYSTEMS OF CONTROLLING MEMORY-TO-MEMORY COPY OPERATIONS

Granted: May 4, 2017
Application Number: 20170123670
A memory-to-memory copy operation control system includes a processor configured to receive an instruction to perform a memory-to-memory copy operation and a memory module network in communication with the processor. The memory module network has a plurality of memory modules that include a proximal memory module in direct communication with the processor and one or more additional memory modules in communication with the processor via the proximal memory module. The system also includes…

MINIMIZING LATENCY FROM PERIPHERAL DEVICES TO COMPUTE ENGINES

Granted: April 13, 2017
Application Number: 20170102886
Methods, systems, and computer program products are provided for minimizing latency in a implementation where a peripheral device is used as a capture device and a compute device such as a GPU processes the captured data in a computing environment. In embodiments, a peripheral device and GPU are tightly integrated and communicate at a hardware/firmware level. Peripheral device firmware can determine and store compute instructions specifically for the GPU, in a command queue. The compute…

Method and Apparatus for Workload Placement on Heterogeneous Systems

Granted: April 13, 2017
Application Number: 20170102971
The methods and apparatus can assign processing core workloads to processing cores from a heterogeneous instruction set architectures (ISA) pool of available processing cores based on processing core metric results. For example, the method and apparatus can obtain processing core metric results for one or more processing cores, such as processing cores within general purpose processors, from a heterogeneous ISA pool of available processing cores. The method and apparatus can also obtain…

MULTI-PROTOCOL HEADER GENERATION SYSTEM

Granted: March 23, 2017
Application Number: 20170085472
A communication device includes a data source that generates data for transmission over a bus, and a data encoder that receives and encodes outgoing data. An encoder system receives outgoing data from a data source and stores the outgoing data in a first queue. An encoder encodes outgoing data with a header type that is based upon a header type indication from a controller and stores the encoded data that may be a packet or a data word with at least one layered header in a second queue…

PREEMPTIVE CONTEXT SWITCHING OF PROCESSES ON AN ACCELERATED PROCESSING DEVICE (APD) BASED ON TIME QUANTA

Granted: March 16, 2017
Application Number: 20170076421
Methods and apparatus are described. A method includes an accelerated processing device running a process. When a maximum time interval during which the process is permitted to run expires before the process completes, the accelerated processing device receives an operating-system-initiated instruction to stop running the process. The accelerated processing device stops the process from running in response to the received operating-system-initiated instruction.

GRAPHICS LIBRARY EXTENSIONS

Granted: March 2, 2017
Application Number: 20170061670
Methods for enabling graphics features in processors are described herein. Methods are provided to enable trinary built-in functions in the shader, allow separation of the graphics processor's address space from the requirement that all textures must be physically backed, enable use of a sparse buffer allocated in virtual memory, allow a reference value used for stencil test to be generated and exported from a fragment shader, provide support for use specific operations in the stencil…

PRIORITY-BASED COMMAND EXECUTION

Granted: February 23, 2017
Application Number: 20170053377
A method of processing commands is provided. The method includes holding commands in queues and executing the commands in an order based on their respective priority. Commands having the same priority are held in the same queue.

MEDIA SYSTEM HAVING THREE DIMENSIONAL NAVIGATION VIA DYNAMIC CAROUSEL

Granted: February 16, 2017
Application Number: 20170046042
A system and method are set forth which combine an ability to view a motion video with an ability to simultaneously access computer programs. In certain embodiments, the media system provides access to movies, music and photos in a visually appealing three dimensional environment. In certain environments, the media system presents a three dimensional navigation tool (such as a three dimensional wheel) on which thumbnails are presented. A required resource value corresponding to system…

DISTRIBUTED GATHER/SCATTER OPERATIONS ACROSS A NETWORK OF MEMORY NODES

Granted: February 16, 2017
Application Number: 20170048320
Devices, methods, and systems for distributed gather and scatter operations in a network of memory nodes. A responding memory node includes a memory; a communications interface having circuitry configured to communicate with at least one other memory node; and a controller. The controller includes circuitry configured to receive a request message from a requesting node via the communications interface. The request message indicates a gather or scatter operation, and instructs the…

COMMUNICATION DEVICE WITH SELECTIVE ENCODING

Granted: February 2, 2017
Application Number: 20170031853
A communication device includes a data source that generates data for transmission over a bus, and that further includes a data encoder coupled to receive and encode outgoing data. The encoder further includes a coupling toggle rate (CTR) calculator configured to calculate a CTR for the outgoing data, a threshold calculator configured to determine an expected value of the CTR as a threshold value, a comparator configured to compare the calculated CTR to the threshold value wherein the…

SPLIT STORAGE OF ANTI-ALIASED SAMPLES

Granted: January 19, 2017
Application Number: 20170018053
Embodiments of the present invention are directed to improving the performance of anti-aliased image rendering. One embodiment is a method of rendering a pixel from an anti-aliased image. The method includes: storing a first set and a second set of samples from a plurality of anti-aliased samples of the pixel respectively in a first memory and a second memory; and rendering a determined number of said samples from one of only the first set or the first and second sets. Corresponding…

SYSTEM PERFORMANCE MANAGEMENT USING PRIORITIZED COMPUTE UNITS

Granted: January 5, 2017
Application Number: 20170004080
Methods, devices, and systems for managing performance of a processor having multiple compute units. An effective number of the multiple compute units may be determined to designate as having priority. On a condition that the effective number is nonzero, the effective number of the multiple compute units may each be designated as a priority compute unit. Priority compute units may have access to a shared cache whereas non-priority compute units may not. Workgroups may be preferentially…